2024年11月18日月曜日

SSD MSI S270 960GB における smartmontools から見える Total_LBAs_Written の単位はいったい何なのか?

 サーバ(Linux)のシステムとホームディレクトリのパーティション用に購入したSSD、MSI S270 960GB。5年保証付きなのに激安でした。

購入してから2806時間を経過したので、そろそろTBWが気になるお年頃です。

早速smartmontoolsでもって累計書き込み時間を見てみました。

smartctl -A の結果は

ID# ATTRIBUTE_NAME          FLAG     (略) RAW_VALUE
9 Power_On_Hours 0x0012 (略) 2806
(略) 241 Total_LBAs_Written 0x0012 (略) 467

467ってなんじゃい!!

RAW VALUEは生値ってくらいなのでメーカー毎にまちまちです。smartmontoolsを使う際の単位不明あるあるケースですね。

ということで単位が何なのか調べてみました。

といってもたいしてやることはありませんでした。

smartctl -l devstat で見てみると

Device Statistics (GP Log 0x04)
Page Offset Size Value Flags Description
0x01 0x010 4 2806 --- Power-on Hours (略) 0x01 0x018 6 981352770 --- Logical Sectors Written 0x01 0x028 6 4076567750 --- Logical Sectors Read

しっかりと論理セクタ書き込み回数が取得できましたので、論理セクタサイズは smartctl -a で取得すると512バイトということだったので、

981352770 * 512 ÷ 1024 ÷ 1024 ÷ 1024 = 467.9... となりました。

従いまして、MSI S270におけるTotal_LBAs_Writtenは、LBAsとはありますが実際には単純に「書き込み済み総ギガバイト数」でした。

いや、GiBだからギビバイトというべきでしょうか。

面白いですね。ストレージの容量はGB(1,000,000,000)単位なのに書き込みデータ量はGiB(1,073,741,824)単位なんですねえ。

だから何だといわれても困るのですが。。。営業と技術の部門間の考え方の乖離が垣間見える気がします。

個人的には20世紀から連綿と狂ったようにストレージへの書き込みアクセスを抑止するために最悪でもtmpfsを無理やり利用するなど散々苦労してきたことがここで目に見えて感無量です。

以上、ここまでお読みいただいてありがとうございました。

phpで文字列としての「\\n」以外の「\n」だけをLF文字(0x0A)に変換する方法

 キャリッジリターン(CR)の文字コード(0x0D)やラインフィード(LF)の文字コード(0x0A)から文字列としての"\r", "\n"に変換するのは特に問題はないと思います。

問題は逆方向で、\nという文字列をLFという文字に変換したいとき、str_replace('\\n',"\n",$text)みたいにやるとやっぱ恥ずかしいですよね。

\\nという文字列で、エスケープしたつもりのデータが埋もれているかもしれません。
\\nという文字列のつもりが0x5C(\),0x0A(LF)になってしまっては悲しいです。

そこで、とりあえず以下のようにするのはいかがでしょう。

  $text= preg_replace( '/(?<!\\\\)\\\\n/', "\n", $text );  

\マークだらけでうんざりしますね。phpで正規表現を扱う者への呪いです。

何がしたいのかというと、$text変数内に\\nという文字列でなく、\nという文字列があったらLF文字(0x0a)に変換するという祈りを込めています。

(?<!\\\\) というのは否定後読みといって\\\\というパターンがない場合にマッチします。phpでは\\\\というパターン\という「文字」にマッチします。呪いでしょう?

ついでに、\\\\nは\\\nと同じ意味を持ちます。まさに呪いです。

以上は前記事でデータベースをmysqlからsqlite3に移行した際に得たネタです。

何が恥ずかしいと言いますと、phpをたまに触って正規表現を使用するたびに\\\\のことをすっかり忘れているからです。

そこで、恥ずかしながら記録として残しておきたいと思います。とりあえずはデータベースのデータ内ではエスケープ文字としての\を特別扱いする必要はないので、この程度で申し訳ございません。

くだらない駄文をお読みいただいてありがとうございました。

mysqlからsqlite3に移行してみた際の恥ずかしい備忘録

 はるか昔(最古のデータの作成日時が1999年...)に使用していた関係で惰性で使い続けてきたmysqlでしたが、もう長いこと読み出しこそ頻繁にあるもののデータの更新はもはや月に数件というほど減少し、ちょっと大げさになっちゃったね、お役御免かな、と思っていました。

最近、CentOS7からUbuntu24に移行した際にPCから.net用のコネクタでリモート接続していたプログラムが動かなくなって、再ビルドしようとしたらvisual studio2022用では.net用のコネクタが使えなくて、見切りを付けました。

その後、最近時間ができたので、どうせならmysqlから一気にsqlite3に移行させてみることにしました。

その際の恥ずかしい作業録です。

・CREATE TABLEの UNIQUE KEY 句は KEY がいらない

KEYという文字列を削除するだけでした。

・CREATE TABLEでインデックスを作成するKEY句がない

前項とややこしいですが、mysqlのKEY句はテーブル作成時に同時にインデックスを張れます。
で、sqliteではCREATE TABLE時にはインデックスのカラムを指定できないので、テーブル作成後にCREATE INDEX文で作成する必要がありました。

・NOW()関数がない

CURRENT_TIMESTAMPに置き換えました。

そしたら・・・次の項目の問題がありました。

・sqlite3の日付関連はすべてUTC

問答無用でUTCなので潔いです。
そういえば十年以上前にある仕事で使ったときになんかあったような気が・・・。ちっとも覚えていませんでした。

既にあるデータをUTCにするのも手ですが、手抜きでCREATE TABLEでカラムのDEFAULT値に DATETIME( 'now', 'localtime' )とかやってみたら叱られました。

早速Google検索経由で先達にお伺いしたところ、仕様だアキラメロというページが最上位に出てくるのですが、さらにお伺いを立てると、かっこでくくってあげて、(DATETIME( 'now', 'localtime' ))とするとオッケーだとのありがたいお言葉で無事解決できました。ありがとうございます!

・mysqlではテキストデータではCRは\r,LFは\nと格納されるが、sqlite3ではもろそのままの文字コードで格納される。

なるほど~。って感じですね。

対策は、ちょっと長くなってしまったので、別の記事にしました。

概要としては、これまでに作成されたmysql形式に合わせてphp側(手始めに移行しているテーブルは自作のやっつけphpアプリで利用するためのテーブルなので)でキャリッジリターン(0x0a)とラインフィード(0x0d)をそれぞれ文字列としての\r, \nに相互に変換することにしました。

・sqlite3 には INSERT INTO ... SET 構文がない

これはむしろmysql方言ですね。なくても仕方がありません。

トリガーでのINSERT文でSET構文を使っていたのですが、むやみにUPSERTとか方言だらけの機能は使わないでおきたいので、標準的なSQLに書き換えるだけにしておきました。

・sqlite3にはVACUUMが必要

postgresqlを思い出すバキューム。カーがつくと途端に香しくなる不思議な言葉です。

でも、更新が月に数回なデータベースにVACCUMなんかいるわけがありません。どうしても必要なら手動でやればいいので、無視することにしました。

・複数クライアントからの同時更新ができない

最近はできるらしいのですが、特にテストをしてみようとは思いません。それが重要ならmysqlから移行する必要がありません。

万が一バッティングしたら「モウイチドヤレヨ」光線を発射して運用でカバーする予定です。

・RAND()関数がない

RANDOM()関数ならありました。

とりあえず、この程度でテスト運用を開始して、当分様子を見る予定です。

何か恥ずかしいことが起きたら、喜んで記事にしたいので起きてくれることを祈りつつ、こんな記事をお読みいただきまして、心からお詫びを申し上げる次第です。

2024年11月14日木曜日

dosparaから「Magnate-G MVW 第12世代Core/メモリ32GB搭載 2024 Intel Partner Awards受賞記念モデル」購入

 先月、またdosparaさんから1台買ってしまいました。特段ひいきにしてるわけでも何でもないのですが、なんだか縁ができちゃってるみたいです。

きっかけは家族用のPCが故障してしまったためでした。

利用目的はイラスト作成と原神とSNSだというのでその方向で探すとして、どうせ買うなら冗談でビカビカ光らせてやろうと思って探そうと思ったら、ちょうど何かの受賞キャンペーンをやっていることを知ったのでスペックを見てみました。

ざっくりとしたスペックは、

  • CPU: Core i5 12400
  • GPU: RTX4060
  • メモリ: DDR5 32GB
  • ストレージ:SSD 1TB
  • 電源: 650W 80PLUS BRONZE
  • ケース: ファン5台もついてる謎の新型

となっていて、オーバースペック気味なのですが苦情は出ないだろうということで選定しました。

まず評価した点は、まず、3月に買ったマシンよりメモリの規格や容量、SSDがアップグレードしていて、それでいて価格自体も2万円以上下がっていてとてもお得そうです。

さらに12400Fではなく12400な点も評価しました。予備のVGAアダプタを用意しておかなくてもいいのは好みです。

次に、気になった点です。
最大の関心事項はファンの数でした。
ケースファンだけで5台、電源にも1台あるだろうし、CPUファンが1台、GPUファンが1以上(購入前には数が不明でした)と、最低でも8ファンが稼働します。空に飛びそうなファン数を搭載したマシンなのでどれだけ騒音が出るのか戦々恐々というか興味津々というか、妙な期待がありました。
というのは、私が三月に買ったガレリアブランドのPC(RM5C-R46。ただし購入する時期によって同じ型番で中身がCPUもGPUもマザーもケースもまるで違うというすごく嫌なことをする会社なので型番だけでは何の意味もないのでご注意ください)はCPUファンが微妙な低周波のファンノイズをまき散らしてきわめて不愉快です。ぶっ壊してやろうかと思うことも再三なので、この機体はどうだろうという興味です。いざとなったらファンを取っ払ってやるつもりでした。

選定した時点ではOSが Windows11 Home のみで、OEM 版の Windows は Home から Pro へのアップグレードパスはなく、もしも Pro が必要になった場合は新規に購入しなおす必要があるという点です。私は XPのころから Home の運用経験がないので、何かあったらサポートするのに困るかな、という考えがよぎりましたが、それはそれで経験を積むチャンスですし、当面、 Pro である必要がある機能は家族には不要(RDPは惜しいけど)なので、無視することにしました。

次に気になった点はストレージの拡張性です。
バックアップ専用HDDとして現有のHDDを積み替えたいと考えていました。
ケースは外寸と片面が無意味にアクリル板になっているという仕様はわかったのですが、搭載可能ベイサイズと数が分かりませんでした。ケースの型番は明記されていたのですが、新型のケースらしく、肝心のその型番の仕様がどこにも掲載されていませんでした。

同じミニタワーといっても、同社のガレリアブランドで採用されているケースよりさらにサイズが小さくなっているので、追加するとしたら相当大変だろうなと思いましたが、オプションでHDDが1台追加できるカスタマイズメニューがあったので、まあ3.5インチベイが1つはありそうだし、なかったところで特に困るような使い方をする機体でもないので、どの馬の骨ともわからないSSD (3月に買ったマシンにはSOLIDIGM SSDPFKNU010TZが搭載されていました) だけは変更したいとのことだったので変更しました。

なお、ビカビカ光らせてやる装備はオプションだったので、遺憾ながら搭載を拒否されました。慙愧の念に堪えません。

さて、到着して真っ先に気になっていたノイズですが、これが全く気になりません。最も負荷が高い状態と思われるゲームを家族がプレイ中であっても全く騒音を発せず、これは大変うれしい意味で期待を裏切ってくれました。

次に悪い意味で期待通りだったのはストレージの拡張性です。具体的にはHDDを一台、こちらで追加しようとしたのですが、見た感じではどこにどうやって組み付けるやらさっぱりわかりません。
サポートに取付方法を問い合わせたら「現在マニュアルの準備中です」ときた。
「HDDの取付方法」を聞いているのに「ケースのマニュアルの準備状況」をこたえるサポート。
素晴らしい。こんなサポートがついててスゲー頼もしいです。
「マニュアルが出来上がるまでお客様にご案内するつもりはございません」なら回答になってたのに、準備状況を聞かされてもしょうがないので、今度は御社ではどうやって組み付けるのかしらと聞いたら組付け方を教えてくれました。

このケースではついに両側面だけでなく底面からもねじをつけたり外したりする必要がありました。
かなり省スペースに頑張った結果でほとほと頭が下がります。
複数台の内蔵ストレージなんて、いまどきのゲーマーにもオフィスユーザにも不要ですし、仮に増設するとしてもマザーボードにSSDスロットはたいていは2つはついている昨今です。
それにもかかわらず、さらにそこへ何とか3.5インチベイをねじ込んだ気合は評価できると思います。しかも2.5インチと共用ではあるものの3.5インチベイが2台分あるのは、SOHOというかスモールオフィスでのRAID1環境をぎりぎり実現できます。

ただし、3.5インチHDDを2台搭載した場合の排熱は・・・やはり厳しそうです。結局、これではだめです。二兎を追わず横着せずにちゃんとケースを選ぶべきだと思います。

余談ですが、FujitsuのPRIMERGYシリーズのミニタワーケースの完成度がどれだけ優秀なのかがよくわかるとか言ったらさすがに怒られちゃいますね。ごめんなさい。

あとは、搭載されていたマザーボードは ASUS の PRIME B760M-A でした。微妙によくなっています。メモリチップメーカはSamsung。SSDはカスタマイズしてWDを指定したためデフォルトの採用機材は不明です。

この機体に限ったわけでもありませんし、言うまでもないかもしれませんが、マザーがmATXなので、当然ながらGPUを搭載していながら同時にPCI Expressで拡張ボードを刺そうというのは、なかなか刺激的なチャレンジになるでしょう。熱的に。

個人的に一番驚いたのは、このマシンではなく Windows11 Home でも WBADMIN.EXEが使用できたこと(!!)でした。
これさえあればタスクスケジューラで手軽にバックアップができて、しかも何かがあってもOSの機能だけで復旧は容易なので大変助かります。
でも、これ、HomeユーザだけでなくProユーザでも皆さんが存在を知らないおかげでWindows8で消えかけたもののまだ生き残っていますが、反トラスト法がらみで米連邦取引委員会や司法省の機嫌次第ではいつ消えるか・・・

余談に流れてしまいましたが、表題のマシンについてのインプレッションというか感想は、「確かに安い」と申せましょう。横文字だとコストパフォーマンスが高いとか、まあ、そんな具合です。

とっ散らかってしまいましたが、最後までお読みいただきありがとうございました。

2024年11月7日木曜日

Philips製27インチWQHD,VAパネルのモニタ 27M2N3500NL/11 購入

 表題の27M2N3500NL/11ですが、PhilipsのEVNIAというシリーズだそうです。27インチでWQHDでVAパネルです。なぜかこの機種だけ国内ではアマゾンからでしか買えませんでした。

以前Philipsのモニタで満足を喫したので、この機種もスペックもよく価格も激安なので早速購入させてもらうことにしました。

そこで2024/10/22に-8%引きで\23,800円でアマゾンで買いました。いまは割引はありませんが\23,800円で売ってます。アマゾンあるあるですね。大人の事情ってやつですか。公取仕事してください。

届いたのは2024/10/25です。ほかの荷物と一緒に配達してもらうために調整してお急ぎ便\512円(当日じゃないのに当日お急ぎ便と同じ価格)を支払ってまで2024/10/26に届けてもらえるようにお願いしたにもかかわらず、前日に「やっぱ明日届けるわ」みたいたことを急に言い出してモニタだけ先に運送業者(ヤマト運輸)さんに持ってこさせやがってくださいました。

注文後に家族からおすそ分けされたCovid-19で高熱を発してくたばっていたのでほんとに迷惑でした。

小売業者さんは置いといて本題です。

まず、私が使用していたのは24インチのPLS(IPSの亜種)パネルの製品でした(Philips 246E)。これで信用して購入しました。接続にはDisplayPort(VGAはRTX4060)を用いました。

この製品はVAパネルを採用しているということで、IPSパネルと比べて視野角や発色、応答性能について劣るのではないかという懸念があると思います。そこら辺を留意してみていきたいと思います。

まずはドット抜け検査を兼ねて画面を真っ白/真っ黒にして目視で検査してみました(ドット抜けはこの個体にはありませんでした)。

気になるのは27インチになって画面が広くなるのでパネルの性質として端っこが暗く見えたり色が違って見えたらいやだな、という点ですが、全くの杞憂でした。発色も視認性も問題を感じません。

ここで、HDR10対応ということなのでHDRをOSとモニタの双方でenableにしてみました。HDRの設定は片方だけONにしたりOFFにしたりすると画面が白っぽくなってしまったり、逆にギラギラしたりと割と面倒くさいので要注意です。

さて、テキストの編集での見え方のテストを行いました。

主に使用している秀丸とVisual Studio,そしてnotepadをつかってみました。さらにTeraTerm ProとPuttyによる操作もテキストによる編集に近いと思いますが、どれもこれも小さい文字が見えなくなることもなく、つぶれることもありませんでした。くっきり見えます。視認性は良好です。

実は画素数が多くなるのに27インチでは文字が小さくて前期高齢者な私には老眼で見えないのではないかしら、125%拡大待ったなし?、と危惧していました。しかし、確かに文字は小さくなりましたが発色の良さとコントラストの高さでメリハリがつき、拡大率100%のまま何の支障もなく、むしろ以前より見やすくなってしまったのは想定外でした。

次にざっと動画やゲームなどで試してみました。27インチになって画面が広くなるので端っこが暗く見えたり色が違って見えたらいやだなと思っていましたが全くの杞憂でした。

動画やゲームでのテストでは、スペック表にある応答速度に異議はありませんでした。残像をまるで感じません。数値的に見るとMRTG0.5msは立派ですし、より技術的難易度が高いGtGでも1msを達成しているのは評価できるポイントだと思います。実際にも、この数値に違和感は感じませんでした。

リフレッシュレートについても180Hzは伊達じゃないです。ちゃんとぬるぬるです。ただ、私の環境ではこの性能についてはよほど軽いゲームでない限り現有のRTX4060風情では90Hzや120Hzで打ち止めで生かしきれないので、評価については降参です。ごめんなさい。

この製品に採用されているVAパネルは壁紙を見るだけでも、グっとしまった黒はかなりいい感じだし、青は青いし赤は赤いように見えます。懸念したギラギラ感もなく、かなり頑張ってると思います。

HDRを有効化することについては、さらにVAパネルの面目躍如といったところだと思います。もともと高いコントラスト比や黒のきれいさを発揮するVAパネルならではの特徴をさらに強調するような働きを齎すと思います。

HDRをON/OFFと利用シーンによって切り替えるのは、実際問題としてモニタとOSの設定と使用アプリの三者をそれぞれ切り替える必要があるので、非現実的だと思います。結局はONかOFFか、一度設定したらそのままにしておくことになるんだと思います。

私個人は普段使いでもHDRをONにしておいてもいいと思います。テキストを読むのに問題ないし、たまに猫の写真を見たり猫の動画を見たり猫のゲームをしたりする際にもきれいな猫映像を見られるので、この製品の場合はONのままで差し支えないんじゃないかと思います。

細かい点ではACアダプタがなく、モニタに電源モジュールが内蔵されているのも便利です。ACアダプタってホントに邪魔ですので助かります。

なんだか長くなってしまいましたが、価格に比して満足感は相当高い製品でした。

いろいろ褒めたい点もあるのですが、あんまり持ち上げても何なので、とりあえずこの程度でご容赦願います。

以上、ここまでお読みいただいてありがとうございました。

2024年7月29日月曜日

CentOS7からUbuntu24.04に移行してみた

 以下恥の記録です。

CentOS7がついにサポート切れなので、思い切ってUbuntu24.04に移行してみよう!ということで、とりあえずしょっぱなで出会ったトラブルをメモしてみました。
debian系をサーバとして使うのは何十年ぶりかしら。

  1. Ubuntu24.4がFujitsu TX1310 M1にインストールできない。
    なんだかわかないけどエラーが発生しましたなどと言って中断するのはやっぱり「はやくういんどうずになりたい」って感じマシマシな、実にubuntuらしいしぐさだと思いました。
    -> サーバ機のファームウェアを1.12.0にしてUEFI ONLYにしてGPTにしないとインストール不可でした。
    幸先の良い出だしです。
  2. インストーラからネットワークの設定ができない。
    netplanの定義体が4つもできました。
    -> 結局インストール完了後に手動で書き直しました。
  3. 20年来コンパイルしては使い続けてきたCプログラムがコンパイルはできるがリンカでエラーとなる
    -> MakefileのGCCに与える引数の順番を変更で通りました。
    なんだそれ~いまさらそんな変更するの?と思わず声に出ました。
  4. CentOS7のmariadbからmysqldumpでdumpしたファイルからmysqlへリストアするとテーブル作成時にtimestamp(6)関連が全部エラーになる
    -> dumpfileのtimestamp(6)から(6)を取っ払っちまえ
  5. mysqldumpでdumpしたファイルからmysqlへリストアしたあとに何かしようとするとrootでもアクセス権がどうとかでなぜか怒られる
    -> dumpファイルをrestoreした際にmysqlの管理用テーブルをdropしてdump元の古い定義でcreate tableしてしまったせい。見た目は一見正しいけどリストア先にとっては正常なデータじゃないのでエラーとなる。mysqldumpでダンプしたファイルのうち、use mysql;のテーブルをリストアしないようにする。特にmysql.columns_privやuserテーブル。
  6. 一度mysqlを全部クリアして(rm -fr /var/mysql ;mysqld --initialize )再作成したのにユーザが追加できない。
    -> select * from mysql.user;しても確かにいない(これから追加したい)ユーザーをdrop userしてからcreate userすると解決した。
  7. /var/runにあるファイルが実行できない
    ->よく見るとmount時にnoexec属性が付与されていた
    それは正しいように思いますので属性を外さずに/dev/shmに移動してみました
  8. 移動後、なぜか気づいたら /dev/shm にあるファイルの一部が消えてなくなっている
    /etc/systemd/logind.conf の RemoveIPC の値がyesなので「システムユーザー」以外のファイルが消去されることがわかりました。
    -> そのため設定を変更せずに/var配下に新規にtmpfsでmountして配置。これもIPCなはずなのにRemoveIPC がyesのままでも消されませぬ。なんと深い謎。。。
    # なお「システムユーザー」とは今どきのubuntuではuidが1000未満のユーザのことを指すらしいです。古代から引き継いでると普通のユーザのuidが100から(sunosとかそうだったっけ)だったり、比較的新しくても500だったりするので要注意。
  9. Super I/Oのカーネルモジュールが全然用意されていない
    coretempだけでいいという割り切り思想かしら。
    -> 面倒なので lm-sensorsをインストールしてsch5636を取り寄せて手動で /etc/modules-load.d/sch5636.conf ファイルを作成してロードさせるようにしました。
  10. dnsmasqを使用したいのにport53がつかまれている
    172.0.0.53が /etc/resolv.conf に定義されていて、それのあて先は systemd-resolved になっていました。
    こういうふうに小手先でごちゃごちゃやり始めているディストリの人たちからは距離を置きたいので、システムの設定を極力いじりたくありません。
    -> そこで、netplanでNICに対してDNSに自分自身のIPアドレスを指定して、あとはdnsmasqから本来のDNSに飛ばすようにしました。
    例:
    このサーバのIPアドレス: 192.168.0.100 <- netplanのDNSに指定
    DNSサーバ
    のIPアドレス: 1.2.3.4 <- dnsmasq.conf  server=1.2.3.4 を追記
    (dnsmasq.confを編集せず/etc/dnsmasq.d/配下にconfを作るとubuntuしぐさ)
  11. phpの時刻がutcとかmbstring非対応とかperlの仕様変更とか
    ->confの変更やソースの変更で対処。
    perl ってまだ枯れ切ってなかったんだなあとしみじみ。
  12. apache2の設定ファイルが細切れのぶつ切れでどこになにが定義されているのかわからない
    ->ubuntuしぐさなので仕方ありません。grep -r しまくってa2enxxxx。
    地味に時間がかかります。
    ついでに言うとapache2のlogファイル名が_logでなくて.logで、logs/でなくて絶対パス指定。こだわるエネルギーの使いどころに興味津々です。
  13. webalizerの画像内の日本語が化ける
    ->面倒なので /usr/share/locale/ja/LC_MESSAGES/webalizer.mo をrenameして英語化してごまかしました。
    テキストも化けるんですが、これはwebalizer.confで
    HTMLHead <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
    で化けなくなります。むろん画像には効果はありません。
    そこでtruetypeフォントを指定しましたがやはり化けます。
    moファイルはutf8なのですが、ビルドしたgdライブラリがsjisのみなのかな?
    なお、ちゃんとデフォルトdaccess_logでなくaccess.logを参照するように構成されている親切設計です。
  14. sambaでユーザ認証を必要とするディレクトリにアクセスできない
    -> sambaのuserのsidをwindowsからアクセスするユーザのsidと一致させるとアクセス可能となりました。
    一致させない場合、sambaでアクセスするhomedirはchmod 750にしないとアクセスできないという不思議な現象も。sidを一致させたら755でもアクセス可能になりました。当環境がSMB3だからかしら?
  15. sambaのguest userがcentos7ではnobody(99)
    ->adduserでsamba-guestユーザを作成してuid/gidが99:99のファイルをchown。
    find . -uid 99 -print | xargs chown yyはうまくいかないので -exec chown  yy {} \; を使うと吉です。
  16. sshすると/etc/motdの内容が2回表示される
    さすがにあほすぎる。。。とにかく広告を見せたくて「はやくういんどぅずになりたいでござる」病にかかってるのがよくわかります。GUIだけにしとけばいいのに
    -> 承知の上でやってきた当方としてはubuntu側をいじらずに /etc/ssh/sshd_config でPrintMotd パラメータをnoにして対処しました。
なんだかまだあったと思いますが、ざっとこんな感じです。
ありがとうCentOS7
さようならCentOS7
こんにちはUbuntu24。
以上、お恥ずかしい限りです。
ここまでお読みいただいてありがとうございました。


2024年7月20日土曜日

Western Digital WD60EZAX の IntelliPark (idle3) のタイムアウト値

 まず結論から申し上げます。10秒でした。

以上です。

以下たわごとです。

過日、12年物の東芝のD01ACA200が突然死してしまいました。よく頑張ってくれました。

そこで、代替を物色したところ、一時期に比べて価格が大幅に上がっていて驚きました。いろいろ検討しましたが、IntelliParkが切れないと評判の一品、WD60EZAX が\14,500円だったので、故障した玉とは別に予防交換用として1玉、併せて2玉購入しました。モデル名とファームウェアのバージョンは両者ともに次の通りです。

Device Model:     WDC WD60EZAX-00C8VB0
Firmware Version: 01.01A01

さっそくエージングを行うのと並行して、実際にidle3タイマの値を取得・変更できないか試してみました。

1
2
# idle3ctl -g /dev/sdb
sg16(VSC_SENDKEY) failed: Input/output error

とのことなので、値すら取れず、駄目でした。なお、idle3タイマを切れる別のWD40EZRZ (ちなみにLoad_Cycle_Countが29,441時間で534,518回) という玉で idle3ctl コマンドの有効性を確認しております。

※Load_Cycle_CountはWindowsで普及しているCrystalDiskInfoでは"ロード/アンロードサイクル回数"と表記されていますので適宜読み替えてください。

で、今回調達したWD60EZAXのうち、よく編集するファイルなどが配置されるドライブに1玉割り当ててみました。そのほうはたった24時間でLoad_Cycle_Countが140回を超えました。ファイルを編集しながらこまめにセーブするだけでどんどんLoad_Cycle_Countが上がってゆくイメージです。こういった使い方だと保証期間が2年とすると17,520時間なので、245,000回となりますので、保証期間内では問題なさそうです。

で、ついでに作業の合間にidle3のタイマー値を実測してみました。方法は次のようなスクリプトを一定時間流してLoad_Cycle_Countの値を見てみるという原始的なものです。

1
2
3
4
5
6
7
#!/bin/sh
while :; do
        smartctl -a /dev/sdb | grep Load_Cycle_Count
        #sleep 7 # OK
        sleep 9 # OK
        # sleep 11 # NG
done

結果は9秒毎にS.M.A.R.T.情報を取得した場合は増加しませんが、11秒毎だと増加が認められましたので10秒と判断した次第です。

もうひと玉は別OS下で LibreHardwaraMonitor が一秒毎に情報を更新している環境下での利用のため、つまりS.M.A.R.T.値を取得するために毎秒アクセスされるので、IntelliParkの出番はなさそうです。

以上、たわごとでした。

ここまでお読みいただいてありがとうございました。