「Hddtemp」の版間の差分
細 1版 をインポートしました |
編集の要約なし |
||
| 3行目: | 3行目: | ||
[[ru:Hddtemp]] |
[[ru:Hddtemp]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
{{ |
{{Related|lm sensors}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
[https://savannah.nongnu.org/projects/hddtemp/ hddtemp] は S.M.A.R.T. によって (この機能をサポートしているドライブで) ハードドライブの温度を得ることができる小さなユーティリティです (デーモン付き)。 |
[https://savannah.nongnu.org/projects/hddtemp/ hddtemp] は S.M.A.R.T. によって (この機能をサポートしているドライブで) ハードドライブの温度を得ることができる小さなユーティリティです (デーモン付き)。 |
||
| 63行目: | 63行目: | ||
== モニター == |
== モニター == |
||
Hddtemp は[[ |
Hddtemp は[[アプリケーション一覧#システム監視|システムモニター]]に統合させることができます。 |
||
== ソリッドステートドライブ == |
|||
通常 Hddtemp はドライブのスマートデータからフィールド {{ic|194}} を読み取ります。SSD では基本的に温度情報はフィールド {{ic|190}} に保存されています。この情報を取得するには、次を実行: |
|||
$ smartctl -a /dev/sdX |
|||
または: |
|||
$ hddtemp --debug /dev/sdX |
|||
X はドライブ文字に置き換えてください (例: a,b,c...)。ドライブ文字は {{ic|lsblk}} で確認できます。 |
|||
また、{{ic|/usr/share/hddtemp/hddtemp.db}} に新しいエントリを追加することも可能です。例: |
|||
$ echo '"Samsung SSD 840 EVO 250G B" 190 C "Samsung SSD 840 EVO 250GB"' >> /usr/share/hddtemp/hddtemp.db |
|||
2015年10月31日 (土) 17:01時点における版
関連記事
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 はシステムモニターに統合させることができます。
ソリッドステートドライブ
通常 Hddtemp はドライブのスマートデータからフィールド 194 を読み取ります。SSD では基本的に温度情報はフィールド 190 に保存されています。この情報を取得するには、次を実行:
$ smartctl -a /dev/sdX
または:
$ hddtemp --debug /dev/sdX
X はドライブ文字に置き換えてください (例: a,b,c...)。ドライブ文字は lsblk で確認できます。
また、/usr/share/hddtemp/hddtemp.db に新しいエントリを追加することも可能です。例:
$ echo '"Samsung SSD 840 EVO 250G B" 190 C "Samsung SSD 840 EVO 250GB"' >> /usr/share/hddtemp/hddtemp.db