Коротко о главном
SSD выходят из строя постепенно: растёт износ, появляются ошибки записи, падает скорость. SMART и nvme-cli показывают состояние диска до того, как он перестанет отвечать. Регулярная проверка дешевле восстановления данных.
Диск — самое вероятное место потери данных в домашнем сервере. Раннее обнаружение проблем позволяет заменить носитель по плану, а не в панике.
В тестовой среде Диагностика SSD запускается за пару минут. В рабочей — важны воспроизводимость, резервные копии, мониторинг и понятный план восстановления. Разберём, как подойти к этому системно.
Что меняется в рабочей среде
В тестовой среде достаточно, чтобы Диагностика SSD запускался. В продакшене добавляются требования к доступности, безопасности и восстановлению. Чем раньше вы зафиксируете эти требования, тем меньше придётся переделывать.
Базовая установка
Установка
В Debian, Ubuntu и Linux Mint используется пакетный менеджер APT:
sudo apt install smartmontools nvme-cli
В Fedora и RHEL-совместимых системах пакет ставится через DNF:
sudo dnf install smartmontools nvme-cli
В Arch Linux и производных пакет доступен в официальных репозиториях:
sudo pacman -S smartmontools nvme-cli
Настройка и проверка
1. Определите устройства
Различайте SATA и NVMe: для них разные утилиты. Проверьте модели и разделы, чтобы не перепутать диски.
lsblk -o NAME,SIZE,MODEL,ROTA
sudo nvme list
2. Прочитайте SMART
Для SATA используйте smartctl, для NVMe — nvme smart-log. Смотрите не только общий статус, но и отдельные атрибуты.
sudo smartctl -a /dev/sda
sudo nvme smart-log /dev/nvme0
3. Оцените износ
Сравните суммарную запись с ресурсом диска (TBW). Процент использованных ресурсов и число переназначенных секторов важнее температуры в простое.
sudo smartctl -A /dev/sda | grep -Ei 'reallocated|wear|percent'
sudo nvme smart-log /dev/nvme0 | grep -i percentage
4. Включите TRIM
TRIM помогает поддерживать скорость записи. Проверьте, включён ли таймер fstrim, и не запускайте его вручную слишком часто.
systemctl status fstrim.timer --no-pager
sudo fstrim -v /
5. Настройте мониторинг
smartd может отправлять письма при ухудшении атрибутов. Настройте его и проверьте тестовое уведомление.
sudo systemctl enable --now smartd
sudo smartctl -t short /dev/sda
Конфигурация для повторяемого развёртывания
Начните с минимального рабочего варианта. Не копируйте большой конфиг целиком: добавляйте параметры по одному и проверяйте результат после каждого изменения.
# /etc/smartd.conf
/dev/sda -a -o on -S on -s (S/../.././02|L/../../7/03) -m root
Безопасность и наблюдаемость
Ограничьте доступ к административным интерфейсам, включите логирование и проверяйте, что изменения конфигурации применяются автоматически. Ручные правки на сервере должны быть исключением, а не нормой.
Чек-лист
- Версии пакетов и конфигурация хранятся в репозитории или системе управления.
- Есть резервная копия данных и проверенный сценарий восстановления.
- Административный доступ ограничен по сети и снабжён отдельными учётными записями.
- Логи и метрики собираются, а оповещения настроены на реальные пороги.
- Изменения проходят проверку на тестовом стенде до выката.
- Есть план отката и ответственный за его выполнение.
Практические советы
Эти рекомендации проверены на повседневных задачах. Начните с тех, которые закрывают вашу текущую боль, а не со всего списка сразу.
Совет 1. Не ориентируйтесь только на общий статус PASSED.
Не ориентируйтесь только на общий статус PASSED.
Совет 2. Следите за температурой под нагрузкой, а не в простое.
Следите за температурой под нагрузкой, а не в простое.
Совет 3. Держите хотя бы 10–15% свободного места на SSD.
Держите хотя бы 10–15% свободного места на SSD.
Совет 4. Проверяйте бэкапы, а не только здоровье диска.
Проверяйте бэкапы, а не только здоровье диска.
Совет 5. Заменяйте диск при росте переназначенных секторов, а не ждите полного
Заменяйте диск при росте переназначенных секторов, а не ждите полного отказа.
Типичные ошибки
Ниже — сбои, которые встречаются чаще всего. Перед исправлением сохраните текущие конфиги и запишите, какие изменения вносите: так проще откатиться.
1. smartctl не видит диск
Запускайте от root и укажите правильное устройство. В RAID-контроллере может потребоваться параметр -d.
2. nvme не находит устройство
Проверьте, загружен ли модуль nvme и виден ли диск в lspci. В контейнере доступ к устройству может быть закрыт.
3. fstrim завершается ошибкой
Проверьте файловую систему и опции монтирования. Для некоторых шифрованных или сетевых ФС TRIM недоступен.
Итог
В рабочей среде Диагностика SSD должен быть предсказуемым: версии зафиксированы, изменения проходят проверку, резервные копии существуют, а сбои видны в мониторинге. Чек-лист выше — минимальная отправная точка.