投稿

ラベル(改行)が付いた投稿を表示しています

たまに掃除は必要!熱暴走…

イメージ
 そんなに暑くないのに… 本日、午前中にオンラインで打合せをしていると、突然マシンがダウン。 一瞬、停電か?と思ったもののディスプレイの電源は入っている。 あれっ?と思い、すぐさまノートで打合せを継続。 その間に、再度マシンの電源を投入。 問題なく起動する。 でも、CPU温度がたまたま目に入り、95℃を超えて徐々に上昇していく。 105℃あたりで再度マシンダウン。 これは、熱暴走によるダウンの可能性が高い。 以前、CPUをRyzen7→9にした頃は、60℃〜70℃程度だった記憶がある。 本当はGW中にSSDの載せ替えを行う予定だったけれど、忙しくて先延ばしにしていた。 その時やっていれば、多分掃除もしただろうに…。 ということで、午後からマシンを解体し、掃除をすることに。 ケース本体のFANはホコリがかなり溜まっている。 GPUのFANは問題ない。 電源とCPU FANはひどい。 一旦、CPU FANを取り外し、きれいにする。ついでにCPUグリスも塗り直しセット。 動作確認すると、投入直後で40℃台。 そりゃ、熱暴走も起こすわけだ。 せっかくバラしたので、SSDの載せ替えを実施。 OSは500GBで、ユーザ領域(/home)は1TBを使用しているもののAIのmodelをいくつも落としていたり、DockerのImageが多種置いてあるため、結構容量を食っている。 今回、2TBのSSD( Hanye SSD ¥17,800- で入手済)を用意してあるので、 1TB→2TB, 500GB→1TBと玉突きで移動させることを計画していたので実施する。 本当は、ddコマンドで移すつもりだったのだけれど、3月にお客さんのところで使いそうだったので、 ORICOのクローン機能付SSDアダプタ を入手済。 裸族のSSD版ですね…。1万円程度の品です。 これに、新品のSSDとこれまでの1TBのSSDを差し込んでクローン開始。 そこそこ時間はかかるものの、放置でOK。 ただ、HanyeのSSDについているヒートシンクが引っかかるため、一旦取り外してクローン後取り付ける必要があった。 続いて、500GB→先程の1TBに書き込み。 ただ、1TB(samsungの980pro)が、先程のクローンでかなり熱くなっていたため、速度低下が激しい感じ。1TB→2TBよりも時間がかかった感じ。 ...

改行コード でハマった

パスワードの格納に使っていて いつもはMac上で作業していて、Linux上で作業したらハマったのでまとめておく。 稼働を始めたシステム上からユーザ登録すれば、問題はないものの、まとめて追加して欲しいと連絡を受けた。  DBに直接登録しようとして、仕様の違いでミスを犯すところだった。 PHP上では $pass = md5("password"); みないな処理で、この値をDBに格納している。 で、もって手作業で追加するなら $ md5 -s password MD5 ("password") = 5f4dcc3b5aa765d61d8327deb882cf99 と表示されるのを、CSVにして、まとめて追加作業を行う。 (実際はスクリプトで吐くんだけど) Macでのmd5は以下の通り。 $ md5 --help md5: illegal option -- - usage: md5 [-pqrtx] [-s string] [files ...] 今回、外で作業する必要が発生したので、 同様にLinux Noteで作業した。 ところが、Linuxには「md5」ではなく「md5sum」しかない。 $ md5sum --help 使用法: md5sum [OPTION]... [FILE]... MD5 (128-bit) チェックサムを表示または照合します。 FILE の指定が無いか、 - が指定された場合、標準入力から読み込みます。   -b, --binary         バイナリモードで読み込む   -c, --check          FILE から MD5 チェックサムを読み込み、照合する   -t, --text           テキストモードで読み込む (デフォルト) 次の3つのオプションはチェックサムを照合する場合にのみ有効です:       --quiet          ファイルのチェックサムの照合が成功したときに OK を表示しない ...

MacのExcel 2011でCSVを吐く

久々にハマったので… 開発中のシステムのDBを修正するのに、CSVでダウンロード→CSVでアップロードという流れになりました。 そこで、実際にテストを行ってみたものの、どうもおかしい。 なぜかアップロード時に、うまくデータが読めていないようなのだ。 その旨、連絡した所、他の環境では発生しないという。 そこで、こちらがダウンロードしたデータと、EXCELで開いて保存したデータをメールで送る。  ダウンロードしたデータは、システムに喰わせても問題ない。一旦開いて保存したものはエラーになる。  ところが、メールを受け取った仲間の環境では、問題が置きないという。????? こちらの環境の問題か?と思い、先ほどのEXCELで保存したcsvを仮想マシンのWindows上からシステムに喰わせるが、相変わらずエラーになる。  念のため、ブラウザを変更し、chrome/Firefoxなどでも試す。全滅。 Andoroid上のから、試すも同じようなエラーが出る。 ということは、システムの問題か?と疑うが、誰もエラーにならないという。 そこで、向こうで同じ条件でデータを吐き出し、更新可能なデータを送ってもらう。 パッと見は同じ。 diffでチェック とりあえず、こちらから送ったデータと、向こうから来たデータをdiffで確認。 全く同一だ。 バイナリエディタで確認 次は、 $ od -h a.csv > a.txt $ od -h b.csv > b.txt  とコードに置き直して、これでdiffってみる。  明らかに途中から違う。  念のため、od -c a.csv なんかで確認すると・・・。¥r ¥n と書いてある。はっ! 気付けば簡単 もうここまでくれば、明らか。 改行コードが違うのだ。 php側では、¥rのみを改行と認識していないため、次行を継続して読み込む。 当然フォーマットが合わないので、アウト。 なぜ、他の環境でエラーにならないのかを検証。 OS Office csv改行コード Windows7 Excel 2013 CR+LF Mac OS X Yosemite Excel 2011 CR そう、Mac 上のExcelはLegacyな改行コードを吐い...

sed:改行含む文字列への置換

少し苦戦した… すでにコンテンツのあるサイトのドメイン移転とサーバ変更、管理の委託を依頼されて作業を行う。 ドメイン移管 サーバの変更 コンテンツの設置 メールアカウントの設定 以上は、問題なく完了。 さて、あとはコンテンツの修正。 アクセス解析に Google Analytics を利用するのだけれど、これまでの業者さんは未設置。 そこで、各ページに仕込む必要があるけれど、いちいち修正するのはさすがに面倒。 なにせ30ページ程のhtmlが2つもある。 こんな時は、sedの登場ですな。 まずは、jsフォルダを作成。 以下のような内容のg_ana.jsを作成。まぁ、ここまでは、Google Analyticsの吐き出すコードをほんの少し変更するだけでOK   ( function (i,s,o,g,r,a,m){i[ 'GoogleAnalyticsObject' ]=r;i[r]=i[r]|| function (){   (i[r].q=i[r].q||[]). push (arguments)},i[r].l= 1 * new Date ();a=s. createElement (o),   m=s. getElementsByTagName (o)[ 0 ];a.async= 1 ;a.src=g;m.parentNode. insertBefore (a,m)   })(window,document, 'script' , '//www.google-analytics.com/analytics.js' , 'ga' );   ga ( 'create' , 'UA-xxxxxxxxx' , 'auto' );    ga ( 'send' , 'pageview' ); でもって、こいつを読み込むように各htmlに書き込む。 とりあえず、</head>の前に設置すれば良いので、 <script type="text/javascript" src=...