Якщо ви використовуєте VPS або виділений сервер, стабільність дисків не є необов’язковою – вона є критично важливою. Один несправний диск може призвести до втрати даних, простою та дорогого відновлення. Ось чому системні адміністратори Linux покладаються на smartctl – потужний інструмент командного рядка, який надає прямий доступ до діагностики дисків через S.M.A.R.T.
У цьому посібнику ви дізнаєтеся, як використовувати smartctl у Linux, включаючи практичні команди, реальні приклади та розумну автоматизацію.
smartctl є частиною пакета Smartmontools. Він надає доступ до технології S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology), вбудованої у більшість сучасних жорстких і твердотільних дисків.
За допомогою smartctl ви можете:
Підтримуване обладнання:
Перевага | Вигода |
---|---|
Раннє виявлення збоїв | Запобігайте втраті даних до того, як це станеться |
Діагностика в режимі реального часу | Моніторинг дисків без перезавантаження |
Легка автоматизація | Добре працює з cron, скриптами та оповіщеннями |
Видимість на апаратному рівні | Ніяких здогадок – отримуйте вихідні дані з диска |
Зручний для DevOps і системних адміністраторів | Широко використовується в центрах обробки даних і хмарних серверах |
Встановлення залежить від вашого дистрибутива Linux:
ОС | Команда встановлення |
---|---|
Ubuntu/Debian | sudo apt update && sudo apt install smartmontools |
CentOS/RHEL | sudo yum install smartmontools |
Fedora | sudo dnf install smartmontools |
Arch Linux | sudo pacman -S smartmontools |
Після встановлення команда smartctl буде доступна через термінал.
Команда | Що вона робить |
---|---|
smartctl -i /dev/sda | Відображає інформацію про диск |
smartctl -H /dev/sda | Перевіряє загальний стан здоров’я |
smartctl -A /dev/sda | Виводить докладний список атрибутів S.M.A.R.T |
smartctl -t short /dev/sda | Запускає коротку (2-хвилинну) самоперевірку |
smartctl -t long /dev/sda | Запускає повну розширену самоперевірку (10-60 хв) |
smartctl -l selfest /dev/sda | Показує історію тестування |
smartctl -l error /dev/sda | Показує журнали помилок |
замініть /dev/sda на ваш фактичний диск (наприклад, /dev/nvme0n1 для NVMe SSD).
sudo smartctl -H /dev/sda
Очікуваний результат:
Результат тесту самооцінки загального стану здоров'я SMART: УСПІШНО
Якщо результат УСПІШНО, ваш диск наразі справний.
Якщо результат FAILED – негайно створіть резервну копію та заплануйте заміну.
ІДЕНТИФІКАТОР | Атрибут | Значення |
---|---|---|
5 | Кількість перерозподілених секторів | Погані сектори перерозподілено для резервування місця |
197 | Поточна кількість секторів, що очікують на зчитування | Сектори, що очікують на повторне зчитування |
198 | Кількість невиправних секторів в автономному режимі | Сектори з помилками читання/запису |
194 | Температура (градуси Цельсія) | Для оптимальної продуктивності тримайте нижче 50 °C |
Збільшення значення в цих полях = деградація накопичувача в процесі.
Завдання | Періодичність |
---|---|
-H перевірка здоров’я | Щотижня |
Короткий тест (-t short) | Щотижня |
Довгий тест (-t long) | Щомісяця |
Перегляд журналу помилок | Після збоїв або проблем з вводом/виводом |
Моніторинг температури | Постійно (за допомогою скриптів) |
Приклад: щотижневий звіт про стан диска по електронній пошті
0 3 * * 1 smartctl -H /dev/sda | mail -s "SMART Health Report" you@example.com
переконайтеся, що встановлено mailutils або sendmail.
smartctl – це легкий, але потужний інструмент, про який не повинен забувати жоден системний адміністратор. З його допомогою ви можете підтримувати ваші сервери в робочому стані, ваші дані в безпеці, а інфраструктуру в проактивному режимі.