mount.ntfs замедляет компьютер, не занимая процессор, показывая «спящий режим диска»

mount.ntfs замедляет компьютер, не занимая процессор, показывая «спящий режим диска»

У меня в файловой системе смонтировано два раздела NTFS. На одном из них размещены мои проекты, поэтому это очень важно.

Время от времени мой компьютер становится вялым, иногда почти зависающим. Я заметил, что всякий раз, когда это происходит, процесс mount.ntfsпоказываетdisk sleepв столбце ЦП системного монитора ksysguard (см. снимок экрана ниже).

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

Каковы возможные объяснения этого и как это исправить?

Я использую Kubuntu 19.04, 64-бит.

Скриншот

решение1

В некотором смысле, «спящий режим диска» — это непричиназамедления, это всего лишь симптом.

Прямо сейчас процесс не делает ничего, кроме ожидания ответа на запрос чтения/записи диска. Так что если диск слишком долго отвечает,любойПроцесс, пытающийся выполнить чтение или запись, перейдет в состояние «спящего диска» или «ожидания ввода-вывода» до завершения операции.

Полагаю, система работает медленно, потому что многие из ваших программ просто пытаются прочитать файлы с вашего раздела NTFS, поэтому, естественно, они будут ждать восстановления mount.ntfs, а сам mount.ntfs не может обслуживать эти запросы на доступ, поскольку он ждет восстановления вашего жесткого диска.

Причин может быть несколько:

  1. Естьмногочтения или записи на диске (для этого физического диска в целом; не обязательно для этого конкретного раздела). Чтобы определить, является ли это причиной, начните с:

    • iotopили iotop -Paoдля просмотра отдельных программ, выполняющих в данный момент ввод-вывод;
    • iostat -h 1чтобы сообщить ообщийСкорость ввода-вывода для каждого физического устройства хранения данных.
  2. Диск занят попытками прочитать поврежденную область. (Иногда на жестких дисках появляются поврежденные сектора — иногда сектор можно прочитать только после дюжины попыток; иногда он вообще нечитаем, но нужно подождать, пока жесткий диск прекратит попытки.)

    • dmesgили dmesg -wпроверить, сообщает ли диск о каких-либо ошибках чтения или других аппаратных проблемах.
  3. В ядре могут быть ошибки, например, диски, подключенные через USB 3.0 в высокопроизводительном режиме «UAS», раньше часто тормозили всю систему.

    • Снова dmesg, но на этот раз ищите ядро, сообщающее о своих собственных блокировкахбезсвязанная ошибка чтения диска.

Если ваш проект важен, дажеодинокийОшибка, указанная в «dmesg», означает, что вам следует остановить все и сделать резервные копии на другом диске. (На самом деле, если ваш проектна самом деле(Важно, вы уже должны были сделать резервные копии.)

Связанный контент