Hddtemp

提供: ArchWiki
2015年1月6日 (火) 21:12時点におけるKusakata (トーク | 投稿記録)による版 (1版 をインポートしました)
ナビゲーションに移動 検索に移動

関連記事

hddtemp は S.M.A.R.T. によって (この機能をサポートしているドライブで) ハードドライブの温度を得ることができる小さなユーティリティです (デーモン付き)。

インストール

公式リポジトリから hddtempインストールして下さい。

使用方法

Hddtemp は root 権限を必要とします。hddtemp コマンドには少なくとも1つのドライブの場所を指定する必要があり、複数のディレクトリを指定するときはスペースで区切ります:

# hddtemp /dev/sdX1 /dev/sdX2 ... /dev/sdXn

デーモン

デーモンを実行することで TCP/IP を介して温度にアクセスすることができ、スクリプトなどで利用できます。

このデーモンは hddtemp.service制御します。

ノート: hddtemp への引数は /usr/lib/systemd/system/hddtemp.service で直接指定します。デフォルトの設定では /dev/sda しか監視しないので、複数のディスクがある場合に特に重要です。ExecStart を変更して hddtemp.service上書きして下さい:
  • /etc/systemd/system にディレクトリを作成:
# mkdir /etc/systemd/system/hddtemp.service.d
  • その中に customexec.conf を作成して監視したいドライブを追加、例:
/etc/systemd/system/hddtemp.service.d/customexec.conf
[Service]
ExecStart=
ExecStart=/usr/bin/hddtemp -dF /dev/sda /dev/sdb /dev/sdc

auto-generate スクリプトを使って smartmontools により hddtemp でサポートされているハードドライブを全て検出して標準出力で customexec.conf パターンファイルを生成することもできます。

  • systemd のユニットファイルを再読み込み:
# systemctl --system daemon-reload
  • hddtemp サービスを再起動:
# systemctl restart hddtemp

温度を取得するには、ポート 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

詳しくは manpage を参照して下さい:

$ man hddtemp

モニター

Hddtemp はシステムモニターに統合させることができます。