Hddtemp
関連記事
hddtemp は S.M.A.R.T. によって (この機能をサポートしているドライブで) ハードドライブの温度を得ることができる小さなユーティリティです (デーモン付き)
インストール
使用方法
Hddtemp には Root user 権限が必要です。hddtemp
コマンドの後には、少なくとも 1 つのドライブの場所を指定する必要があります。複数のドライブをスペースで区切ってリストできます。
# hddtemp /dev/disk/by-id/wwn-0x60015ee0000b237f /dev/sdX2 ... /dev/sdXn
使用方法の詳細については、hddtemp(8) を参照してください。
デーモン
デーモンを実行すると、通常のユーザーとして TCP/IP 経由で温度情報にアクセスできるようになります。これは、スクリプトやシステムモニタリングに役立ちます。
デーモンは、hddtemp.service
で 制御 します。
温度を取得するには、ポート 7634 をリッスンするデーモンに接続します。
inetutils を使用する場合:
$ telnet localhost 7634
gnu-netcat の場合:
$ nc localhost 7634
どちらの出力も次のようになります。
|/dev/sda|ST3500413AS|32|C||/dev/sdb|ST2000DM001-1CH164|36|C|
統計をより見やすくするには:
$ nc localhost 7634 |sed 's/|//m' | sed 's/||/ \n/g' | awk -F'|' '{print $1 " " $3 " " $4}'
/dev/sda 32 C /dev/sdb 36 C
モニター
Hddtemp は システムモニター と統合できます。Conky には、デーモンモードでの Hddtemp のサポートが組み込まれています。hddtemp.service
を 有効化 して、Conky 設定ファイルに $hddtemp °C
を追加するだけです。
ソリッドステートドライブ
通常 Hddtemp はドライブのスマートデータからフィールド 194
を読み取ります。SSD では基本的に温度情報はフィールド 190
に保存されています。この情報を取得するには、次のコマンドを実行します。:
# smartctl --all /dev/sdx
または:
# hddtemp --debug /dev/sdx
X はドライブ文字に置き換えてください (例: a,b,c...)。ドライブ文字は lsblk で確認できます。
また、/usr/share/hddtemp/hddtemp.db
に新しいエントリを追加することも可能です。例:
# echo '"Samsung SSD 840 EVO 250GB" 190 C "Samsung SSD 840 EVO 250GB"' >> /etc/hddtemp.db