お兄ちゃん!
この前 HDD が故障したんだ!
バックアップは取っていたけど
突然の故障って怖いよね…
SSD や HDD は
自己診断機能を持っているんだ
これで故障の予兆を
知れる場合があるよ
へぇ!
サーバの安全稼働のためにも
ぜひ知りたいよ!
その機能を「S.M.A.R.T
(Self-Monitoring, Analysis and Reporting Technology)」
と呼ぶんだ
ディスクの健康状態の指標を自動収集し
故障の予兆があれば知らせてくれるよ
今回は S.M.A.R.T を扱う
smartmontools を学ぼう!
まずは
martmontools
を
インストールしよう!
sudo apt install -y smartmontools
パッケージ名さえわかれば簡単にインストールできて楽だね!
設定は
/etc/smartmontools
配下にあるよでも基本的な使い方では変更することが無いから気にしなくても大丈夫設定ファイルがあるということだけ覚えておこうデフォルトでよしなに動いてくれる設定になっているんだね!
では
smartmontools
を動かし自動起動を設定しようsudo systemctl enable --now smartmontools
起動したらちゃんと動作しているか確認しよう
sudo systemctl status smartmontools
うん!ちゃんと動いたよ!
smartmontools
ではsmartd
デーモンがS.M.A.R.T 情報を監視しているよsmartctl
は smartd
管理ツールだよsmartctl
経由で S.M.A.R.T 情報を扱えるよsmartctl [オプション]... デバイス
systemctl
と systemd
の関係に似ているね!まずは S.M.A.R.T 機能を持っているストレージ一覧を確認しよう!
smartctl --scan
たいていの SSD や HDD にはS.M.A.R.T があるんだよね?最低一つは見つかると思うんだけど…
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/sda
が S.M.A.R.T に対応しているんだね!今回は簡易診断機能を使ってみよう!
/dev/sda
を確認するなら以下のように実行するよsudo smartctl --health /dev/sda
ストレージの健康診断みたいなものだね単発ではなく定期的に実行したいね
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
結果は 「問題なし」と出ると ちょっと安心だね
PASSED
だったよ!簡易診断だけどもし結果が
FAILED
だったらそのストレージに問題がある可能性が高いんだすみやかにバックアップを取りストレージの入れ替えをおすすめするよFAILED
の原因を調べるにはどうすればいいのかな?以下でS.M.A.R.T が集めた情報を確認できるよ!
sudo systemctl -a /dev/sda
今回は
smartmontools
の使い方を学んだよ!S.M.A.R.T を smartd
が監視してsmartctl
経由で管理するんだ!今回は簡易診断だけの紹介だよ他にも時間が掛かるが詳細な診断ができたり故障の兆候を発見したらメールを送るなどもできるんだ!