Узнайте, какие процессы записываются на жесткий диск

На моем Lenovo T400 и Ubuntu свет для записи жесткого диска продолжает мигать. Мне было интересно, можно ли в Linux узнать, какие процессы делают I / O на жесткий диск? Как и top , вы можете узнать, какие процессы используют большинство процессоров и памяти.

  • Процессы печати, отсортированные по использованию ЦП
  • Почему я вижу больше процессов в KVM, чем в OpenVZ?
  • Через системы, Как процесс взаимодействует с другим процессом?
  • Как продемонстрировать недопустимые предположения PID?
  • Почему SSH -t не ждет фоновых процессов?
  • Максимальная память, используемая 32-битной системой RHEL 6
  • Процессы CGroup не завершаются, даже когда основной процесс был убит командой Systemctl stop
  • Почему nautilus в фоновом режиме занимает столько IO и CPU при входе в систему, и как это разрешить, или это ошибка?
  • 4 Solutions collect form web for “Узнайте, какие процессы записываются на жесткий диск”

    Iotop – хороший инструмент для того, что вы хотите. Он также позволяет отображать накопленный объем ввода-вывода на любом из DISK READ, DISK WRITE, SWAPIN и IO (в целом). Это через отличный интерфейс:

    • Вы просто нажимаете a на клавиатуре, и он сортирует голодные процессы сверху.
    • Обратившись к порядку, вы просто нажмите r .
    • Если вы хотите сортировать по другим колонам, вы просто нажимаете левую / правую клавишу.

    Как и top , презентация довольно занята. Другое дело, что у него нет множества параметров, которые имеют top (например, я не могу скрыть ни один из столбцов, в которых я не заинтересован), но этот инструмент более чем достаточно для его конкретной цели.

    Вы можете использовать lsof ( man lsof ). Ниже приведен список всех файлов, открытых для записи:

     lsof | grep -e "[[:digit:]]\+w" 

    Используйте strace .

    Для работы с низким диском необходимо использовать iotop в пакетном режиме, чтобы быстро избежать коротких линий доступа. Ответ: Как записывать / записывать файловую систему по имени файла в Linux? показывает, как это сделать.

    Пока что iotop – лучшее общее решение. Следующая команда дает вам вывод в реальном времени всех процессов с использованием диска.

     iotop -bktoqqq -d .5 where: -b is batch mode -k is kilobytes/s -t adds timestamp -o only show processes or threads actually doing I/O -qqq removes output headers -d .5 updates every .5 seconds 

    Когда у вас есть идентификатор процесса, вы также можете найти файлы с

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