Выяснение того, что вращается жестким диском

Я являюсь владельцем NAS, работая с дистрибутивом Linux. Он поставляется с интерфейсом веб-администрирования, где я могу управлять несколькими службами, правами пользователя, а также когда он должен идти спать. Моя проблема, по какой-то причине, когда NAS засыпает, жесткий диск включается снова через пару минут. Затем он будет вращаться некоторое время, а затем снова спать. Это продолжается бесконечно.

Как я могу попытаться определить причину этого? Я очень новичок в Linux, но мне удалось получить root-доступ, и теперь у меня есть SSH-соединение.

  • Gentoo Live CD с жесткого диска: без монтируемых файловых систем в корне после загрузки модулей
  • У моего жесткого диска плохие сектора или нет?
  • Проверка работоспособности жесткого диска
  • Хорошо ли устанавливать Linux на внешний жесткий диск?
  • Почему ОС постоянно записывается на диск (ext4) на машине Ubuntu 14.04? Это нормально?
  • LVM: pvcreate методом uuid или не «dev / sdX»
  • Получить положение жестких дисков RAID
  • Как увидеть информацию о диске, такую ​​как производитель в Linux
  • 4 Solutions collect form web for “Выяснение того, что вращается жестким диском”

    Инструменты inotify – это простой способ сделать это. На их сайте есть несколько примеров, которые могли бы делать то, что вы хотите (см. Пример inotifywatch для действительно базового).

    Попробуйте запустить iotop возможно? Я нашел его полезным в прошлом.

    Еще один совет: используйте Systemtap, есть куча пробных скриптов на сайте systemtap, достаточно полезная, чтобы найти виновника.

    В другом случае,

    Если вы хотите узнать, какой процесс заставил диск вращаться, вы можете собрать информацию, установив флаг /proc/sys/vm/block_dump . Когда этот флаг установлен, Linux сообщает все операции чтения и записи на диске, которые имеют место, и все блокирующие загрязнения, выполняемые с файлами. Это позволяет отлаживать причины, по которым диск должен раскручиваться, и увеличить срок службы батареи еще больше. Выходной файл block_dump записывается в вывод ядра, и его можно получить с помощью «dmesg» или посмотреть на ваш механизм ядра syslog для назначения отладочных сообщений. Как правило, он должен быть /var/log/debug . Когда вы используете block_dump, а уровень ведения журнала ядра также включает в себя отладочные сообщения ядра, вы, вероятно, захотите отключить klogd, иначе вывод блока block_dump будет занесен в журнал, в результате чего активность диска обычно не будет.

    Вам нужно сообщить ядру, чтобы сообщить вам обо всех чтениях / записи на диски, тогда вам нужно посмотреть на эту информацию.

    Так:

     # sync # echo 1 > /proc/sys/vm/block_dump # dmesg -c | grep '/dev/sda' 

    sync сбрасывает все ожидающие записи на диски, так что вы будете видеть только новые чтения или записи.
    dmesg -c показывает вам сообщения ядра и очищает их (в противном случае вы увидите старые тоже, каждый раз, когда вы запускаете dmesg). grep фильтрует вывод dmesg для активности для интересующего вас диска. Замените / dev / sda на свое фактическое устройство.

    Обычно я использую что-то вроде этого, чтобы вращать диск, а затем проверять, когда он снова закручивается:

     # sync # hdparm -y /dev/sda # while true; do hdparm -C /dev/sda ; sleep 600 ; done 

    Цикл while проверяет состояние активного / холостого диска каждые 10 минут. Когда вы увидите, что он включен, запустите линию dmesg выше, чтобы увидеть whodunnit.

    Interesting Posts

    Получить номер строки в сценарии оболочки Bourne

    Регулирование полосы пропускания для каждой группы пользователей

    Dropbox настаивает на автозапуске – Fedora 20

    Пустой экран после входа в систему. Хотя виртуальная консоль работает. Пожалуйста, помогите

    Journalctl прекратил протоколирование после переполнения и перезагрузки

    "-bash: /root/.bashrc: Permission denied" при входе в систему

    Могу ли я одновременно использовать GnuPG 2 и GnuPG 1, видя одни и те же клавиши?

    В чем разница между выходом из процесса с помощью Ctrl + C и выдачей команды kill -9?

    Если Else в Gawk

    Текст цензора с регулярным выражением

    Как именно «до $ @» работает в сценариях bash?

    Как сравнить два файла по строкам, чтобы проверить, сколько из них перемещено вверх или вниз?

    cgroups / systemd: Как создать группу для дерева процессов

    Написание сценария установки для CentOS

    Как скомпилировать и установить программы из источника

    Linux и Unix - лучшая ОС в мире.