結論:異常を感じたら検査より先にバックアップする
I/Oエラー、読み込み停止、異音、ファイル破損などが起きている場合、繰り返し検査する前に重要データを別媒体へ退避します。セルフテストはドライブへアクセスするため、故障が進んだ装置へ追加負荷を与える可能性があります。
- 対象ディスクを正確に特定する
- 健康情報とOSログを保存する
- 重要データをバックアップする
- 必要な場合だけ短時間テストを行う
- 異常の継続や増加を見て交換を判断する
対象ディスクを特定する
lsblk -d -o NAME,MODEL,SERIAL,SIZE,ROTA,TRAN
findmnt --target /var/lib/docker
ROTA=1は一般に回転媒体、ROTA=0はSSDなどの非回転媒体を示します。USBケース経由ではモデルやSMART情報が正しく取得できない場合があります。デバイス名は再接続で変わり得るため、モデルとシリアルを併記します。
検査ツールを用意する
# Debian・Ubuntu系
sudo apt install smartmontools nvme-cli
# Fedora・RHEL系
sudo dnf install smartmontools nvme-cli
実際のパッケージ名や利用可能なバージョンはディストリビューションで確認してください。
SATA SSD・HDDをsmartctlで確認する
sudo smartctl -x /dev/sda
-xは利用可能なSMART情報、属性、エラー、セルフテスト履歴などを広く表示します。メーカーや接続方式によって項目名と意味が異なるため、単一のRAW_VALUEだけで交換可否を断定しません。
| 確認項目 | 見方 |
|---|---|
| 総合ヘルス判定 | 失敗なら直ちにバックアップ。合格でも故障を否定しない |
| Reallocated / Pending / Uncorrectable | HDDでは増加傾向と読み取りエラーを重視する |
| 温度 | 一時値だけでなく負荷時の推移とメーカー仕様を確認する |
| Power_On_Hours | 使用期間を把握する参考。寿命を単独で決める値ではない |
| Self-test log | 過去のテスト失敗と該当位置を確認する |
セルフテストを実行する
バックアップと対象確認が済み、ドライブがテストをサポートしている場合に実行します。
sudo smartctl -t short /dev/sda
sudo smartctl -l selftest /dev/sda
開始コマンドには完了までの目安が表示されます。直後ではなく、指定時間後にログを確認します。長時間テストは稼働時間とI/O負荷を考慮して計画します。
NVMe SSDをnvme-cliで確認する
sudo nvme list
sudo nvme smart-log /dev/nvme0
| 項目 | 確認内容 |
|---|---|
| critical_warning | 温度、予備領域、信頼性などに関する警告ビット |
| percentage_used | メーカー推定による耐久性消費の目安。100未満でも故障は起こり得る |
| available_spare | 利用可能な予備領域としきい値 |
| media_errors | 回復不能なデータ整合性エラー |
| num_err_log_entries | エラーログ件数。内容と増加状況を追加確認する |
| unsafe_shutdowns | 正常なシャットダウン手順を経なかった回数 |
NVM Expressはpercentage_usedを耐久性確認の重要な属性として説明しています。ただし、値の解釈と保証条件は製品仕様も確認します。
OS側のI/Oエラーも確認する
sudo journalctl -k -b | grep -Ei 'I/O error|nvme|ata|reset|timeout'
dmesg --level=err,warn
ケーブル、電源、USB変換、コントローラー、ドライバーなど、媒体以外が原因の場合もあります。タイムアウトやリセットの発生時刻とSMART情報を一緒に記録します。
SMARTとfsckの違い
SMARTは物理ドライブが報告する状態、fsckはファイルシステムの論理的な整合性を確認します。目的が異なります。
fsckを実行してはいけません。対象形式の公式手順を確認し、バックアップ、アンマウント、レスキュー環境を準備します。ext4とXFSで異なる具体的な手順は、fsck・e2fsck・xfs_repairによるファイルシステム検査で解説しています。
交換を検討する条件
- SMARTの重大警告や総合判定失敗がある
- 回復不能エラーや代替処理待ちセクターが増えている
- OSログでI/Oエラーやリセットが繰り返される
- セルフテストが同じ位置または複数位置で失敗する
- 業務上必要な信頼性を満たせず、保証や予防交換の条件に該当する
交換時は接続規格、フォームファクター、容量、耐久性を確認します。判断基準はLinux用SSDの選び方にまとめています。