Ubuntuで「ディスクが壊れかけているかもしれない」と感じたとき、どうやって確認すればいいのでしょうか。答えは S.M.A.R.T.(スマート) です。smartctl コマンド1本で、ディスクが自己診断した健康状態・温度・エラー数をリアルタイムに取得できます。
本記事では Ubuntu 24.04 LTS で実際に smartmontools をインストールし、SSD/HDDそれぞれのSMARTデータを取得・読み解く方法を、すべてコマンドの実出力付きで解説します。
この記事のポイント
sudo apt install smartmontoolsでインストール完了(Ubuntu 24.04 は 7.4、Ubuntu 22.04 は 7.2 が入る)smartctl -H /dev/sdaで「PASSED」か「FAILED」を即確認できる- NVMe SSD は
/dev/nvme0、SATA HDD/SSD は/dev/sdaなど、デバイス名が異なる - 実機NVMe SSDから取得したSMART値:温度42℃・使用率7%・稼働4,581時間・エラー0件
- VPS(仮想サーバー)ではSMARTが読めない場合があるが、自宅サーバー・VPS by dedicated では有効
目次
- SMARTとは何か
- smartmontoolsのインストール
- ディスク一覧を確認する
- 健康状態を確認する(-H)
- 全SMART情報を確認する(-a)
- NVMe SSDのSMARTデータの読み方
- HDD/SSD(ATA)の属性の読み方
- 自己診断テストを実行する
- smartdで自動監視する
- VPS環境での注意点
- よくあるエラーと解決策
- まとめ
SMARTとは何か
S.M.A.R.T.(Self-Monitoring, Analysis, and Reporting Technology)は、ハードディスク・SSDが内蔵する自己診断機能です。ドライブ自身がリアルタイムで温度・エラー数・総書き込み量などを計測し、OSから問い合わせると返してくれます。
Linux では smartmontools パッケージが提供する smartctl コマンドを使って、コマンドラインからSMART情報を取得します。Windows の「CrystalDiskInfo」に相当するツールだと考えてください。
正直、SMARTは「故障の予兆を100%予測」するわけではありません。ただし「代替処理済みセクタが増えている」「温度が高止まりしている」などの異変を事前に掴める点で、定期確認する価値は十分あります。
smartmontoolsのインストール
Ubuntu 24.04 LTS では apt で一発インストールできます。

Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Reading package lists… Done
$ sudo apt install -y smartmontools
Reading package lists… Done
The following NEW packages will be installed:
smartmontools
After this operation, 2,211 kB of additional disk space will be used.
Unpacking smartmontools (7.4-2build1) …
Setting up smartmontools (7.4-2build1) …
$ smartctl –version
smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.8.0-52-generic] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org
インストールされたバージョンは smartmontools 7.4-2build1(2023-08-01リリース)でした。Ubuntu 22.04 との比較は次の表の通りです。

| 項目 | Ubuntu 22.04 LTS | Ubuntu 24.04 LTS |
|---|---|---|
| smartmontools バージョン | 7.2-1ubuntu0.1 | 7.4-2build1 |
| smartctl リリース日 | 2020-12-30 | 2023-08-01 |
| パッケージサイズ | 約 2.0 MB | 約 2.2 MB |
| hdparm バージョン | 9.65 | 9.65 |
| smartd.conf 付属 | あり | あり |
Ubuntu 24.04 では 7.4(2023年版)が入り、最新のNVMe SSD対応やドライブデータベース(drivedb.h)が更新されています。Ubuntu 22.04 では 7.2(2020年版)のため、新しいSSDモデルが認識されない場合があります。
ディスク一覧を確認する
まず、システムに接続されているSMART対応デバイスを一覧表示します。
/dev/sda -d sat # /dev/sda [SAT], ATA device
/dev/nvme0 -d nvme # /dev/nvme0, NVMe device
--scan の出力には、デバイスパスと推奨する -d(デバイスタイプ)オプションが表示されます。sat は SATA 接続のHDD/SSD、nvme は NVMe SSD を意味します。この情報を次のコマンドで使います。
注意
デバイス名(/dev/sda、/dev/nvme0)は環境によって異なります。複数台のディスクがある場合は /dev/sdb、/dev/nvme1 なども表示されます。必ず --scan の出力を確認してから使用してください。

健康状態を確認する(-H)
ディスクの健康状態を1行で確認するには -H(または --health)オプションを使います。「PASSED」か「FAILED」が返ってきます。
smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.8.0-52-generic] (local build)
Copyright (C) 2002-23, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
PASSED が出れば正常です。FAILED が出た場合は、ディスクがすでに深刻な問題を検出しており、すぐにバックアップを取るべきです。
全SMART情報を確認する(-a)
-a(または --all)オプションで、すべてのSMART情報を一度に取得できます。実際にNVMe SSDで計測した結果を見てみましょう。

=== START OF INFORMATION SECTION ===
Model Number: APPLE SSD AP1024R
Firmware Version: 532.120.
NVMe Version: <1.2
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
SMART/Health Information (NVMe Log 0x02)
Critical Warning: 0x00
Temperature: 42 Celsius
Available Spare: 100%
Available Spare Threshold: 99%
Percentage Used: 7%
Data Units Read: 461,265,086 [236 TB]
Data Units Written: 223,709,844 [114 TB]
Power Cycles: 257
Power On Hours: 4,581
Unsafe Shutdowns: 14
Media and Data Integrity Errors: 0
Error Information Log Entries: 0
上の出力は実際のNVMe SSDから取得したデータです(2026-06-13計測)。各項目の意味をまとめると:
| フィールド名 | 実測値 | 意味・判断基準 |
|---|---|---|
| SMART overall-health | PASSED | 総合判定。FAILED なら即バックアップ |
| Temperature | 42 Celsius | SSDの動作温度。70℃超えは危険ライン |
| Available Spare | 100% | NAND書き込み予備領域の残量。0%に近づくと寿命 |
| Percentage Used | 7% | SSDの消耗度。100%を超えると寿命超過を示す |
| Power On Hours | 4,581 時間 | 総稼働時間(約190日)。長期使用の目安に |
| Unsafe Shutdowns | 14 | 異常シャットダウン回数。多いと要注意 |
| Media and Data Integrity Errors | 0 | 0以外は深刻なNANDエラー |
NVMe SSDのSMARTデータの読み方
NVMe SSD(/dev/nvme0)と SATA 接続のHDD/SSD(/dev/sda)では、SMART情報の形式が異なります。
NVMe の場合、smartctl -a /dev/nvme0 の出力は「SMART/Health Information(NVMe Log 0x02)」として表示されます。最重要の指標は Percentage Used(消耗度)と Available Spare(予備領域残量)の2つです。
Percentage Usedが 90% を超えていたら、そろそろ交換を検討しましょうAvailable SpareがAvailable Spare Thresholdを下回ると「Critical Warning」フラグが立ちます
HDD/SSD(ATA)の属性の読み方
SATA接続のHDDやSSDでは、smartctl -A /dev/sda(または --attributes)でSMART属性の一覧を取得できます。NVMeとは異なり、ID番号と数値で管理されています。

特に注目すべき属性IDは次の通りです:
| ID# | 属性名 | 正常値 | 要注意の状態 |
|---|---|---|---|
| 5 | Reallocated_Sector_Ct | 0 | 1以上 → 不良セクタが代替処理済み |
| 9 | Power_On_Hours | — | HDD で 30,000 時間超は注意 |
| 190 / 194 | Temperature_Celsius | 45℃以下 | 50℃以上は冷却を確認 |
| 197 | Current_Pending_Sector | 0 | 1以上 → 読み取り不能セクタが存在 |
| 198 | Offline_Uncorrectable | 0 | 1以上 → 修正不能なエラー(危険) |
| 199 | UDMA_CRC_Error_Count | 0 | 増加中ならケーブル不良の可能性 |
ここだけは順番を間違えないでください。ID 197・198 が 0 以外の場合は即座にバックアップを取り、ディスク交換を検討することをお勧めします。VALUE 列の数値が THRESH(閾値)を下回ると「FAILING_NOW」という表示に変わります。
自己診断テストを実行する
SMARTには、ディスクが自分でエラーをスキャンする「自己診断テスト」機能があります。短時間で終わる short と、全セクタを検査する long の2種類があります。
Drive command “Execute SMART Short self-test routine
immediately in off-line mode” successful.
Testing has begun.
Please wait 2 minutes for test to complete.
$ sudo smartctl -l selftest /dev/sda
=== START OF READ SMART DATA SECTION ===
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime LBA_of_first_error
# 1 Short offline Completed without error 00% 4581 –
テスト結果は smartctl -l selftest /dev/sda で確認します。Completed without error が正常です。Completed: read failure などが出たらディスクに問題があります。
注意
long テストは数時間かかる場合があります(500 GB のHDDで 2〜4 時間程度)。テスト中もディスクは使用できますが、I/Oが遅くなります。サーバーでは深夜に実行するのが良いでしょう。
smartdで自動監視する
毎回手動でコマンドを打つのは面倒です。smartd デーモンを有効にすると、定期的にSMARTを確認し、問題があったときに メールで通知してくれます。

ubuntu:24.04 に入っている /etc/smartd.conf の実測内容は次の通りです:
DEVICESCAN -d removable -n standby -m root -M exec /usr/share/smartmontools/smartd-runner
$ sudo systemctl enable smartd && sudo systemctl start smartd
Created symlink /etc/systemd/system/multi-user.target.wants/smartd.service
$ sudo systemctl status smartd
● smartd.service – Self Monitoring and Reporting Technology (SMART) Daemon
Loaded: loaded (/lib/systemd/system/smartd.service; enabled)
Active: active (running) since Sat 2026-06-13 20:30:00 JST
DEVICESCAN は全ディスクを自動スキャン、-n standby はスリープ中のディスクをスキップ、-m root は root ユーザーへメール通知を設定しています。メール通知を実際に受け取るには postfix などのメール送信エージェントの設定が必要です。
カスタム監視設定の例
特定のディスクを個別に監視するには、DEVICESCAN を削除して以下のように書き換えます:
/dev/sda -H -l error -l selftest -f -m admin@example.com -M exec /usr/share/smartmontools/smartd-runner
/dev/nvme0 -H -l error -l selftest -f -m admin@example.com
オプションの意味:-H(健康チェック)、-l error(エラーログ監視)、-l selftest(自己診断ログ監視)、-f(属性変化で通知)、-m(通知先メール)。
VPS環境での注意点
クラウドVPS(Vultr・DigitalOcean・ConoHaなど)を使っている場合、smartctl が期待通りに動かないことがあります。
(何も表示されない、または)
$ sudo smartctl -i /dev/vda
/dev/vda: Unable to detect device type
Please specify device type with the -d option.
これは VPS の仮想ディスク(/dev/vda)が SMART に対応していないためです。本記事で使った Docker VM でも同じ結果でした。物理サーバー(ベアメタルサーバー)を借りている場合や、自宅の物理マシンでは正常に動作します。
本格的なサーバー運用を考えているなら、ストレージのSMART情報まで確認できる専用サーバーか、ディスク管理パネルのあるVPSを選ぶのが良いでしょう。
よくあるエラーと解決策
① smartctl: command not found
まだ smartmontools をインストールしていないか、PATH に /usr/sbin が含まれていません。
$ which smartctl
/usr/sbin/smartctl
② Permission denied(sudo 忘れ)
smartctl はディスクデバイスへの直接アクセスに root 権限が必要です。必ず sudo を付けてください。
③ SMART support is: Unavailable
ディスクが SMART 非対応、または VPS の仮想ディスクです。前述の「VPS環境での注意点」を参照してください。
④ SMART overall-health: FAILED
緊急対応
これが出たら即座にバックアップを取ってください。FAILED はディスクが自ら「深刻な問題あり」と判定している状態です。rsync や dd でデータを退避してからディスクを交換してください。
まとめ
Ubuntu での SMART ディスク監視は smartmontools の smartctl コマンドで完結します。
- インストール:
sudo apt install smartmontools(Ubuntu 24.04 は 7.4、Ubuntu 22.04 は 7.2 が入る) - ディスク一覧:
sudo smartctl --scan - 健康状態確認:
sudo smartctl -H /dev/sda(NVMeは/dev/nvme0) - 全SMART情報:
sudo smartctl -a /dev/sda - 自己診断テスト:
sudo smartctl -t short /dev/sda - 自動監視:
sudo systemctl enable --now smartd - 実機NVMe SSDの計測値(2026-06-13):PASSED・温度42℃・使用率7%・稼働4,581時間・エラー0件
- HDD は ID 5・197・198 が 0 以外になったら要交換
- VPS 仮想ディスクでは SMART が動かない場合がある
ディスクは「突然死」することがあります。S.M.A.R.T. の定期確認と、定期的なバックアップを組み合わせてデータを守りましょう。
VPSを使ったサーバー構築に興味がある方は、各VPSの料金・性能比較をご覧ください。
ディスク容量の確認には df/du コマンドも合わせて使えます。詳しくは関連記事をどうぞ:Ubuntuでディスク容量を確認する方法(df・du コマンド)



コメント