После некоторой работы моя файловая система (EXT4) становится доступной только для чтения. Затем я использую свой Live USB для загрузки в режиме реального времени и запускаю fsck на поврежденном разделе (и других, чтобы быть в безопасности). я бегу fsck -y
и он исправляет все ошибки в проблемном разделе. Когда я запускаю fsck, все разделы снова отображаются как чистые.
Затем я перезагружаю свою систему в обычном режиме (не через USB); Я бегу несколько touch abc
команды в разных местах, чтобы проверить, и он может записывать на диск. Однако через некоторое время он снова становится доступным только для чтения.
Я повторил весь этот процесс 4-5 раз (fsck-from-live-usb -> boot-normal -> стал-read-only -> fsck-from-live-usb), и я не знать причину этой проблемы.
dmesg
показывает следующие виды ошибок:
blk_update_request: ошибка ввода-вывода, dev sdb, сектор 2521582056
тег # 28 FAILED Результат: hostbyte = DID_SOFT_ERROR driverbyte = DRIVER_OK
Есть способ исправить это? Я не могу работать в своей системе. Это не похоже на аппаратную проблему, поскольку fsck все исправляет и smartctl
также сообщает, что диск в порядке, ошибок нет.
Спасибо.
Хотя SMART сообщает, что все в порядке, диск в любом случае может быть неисправен, вам следует попробовать:
smartctl -t long /dev/sdb
см. например вики Archbadblocks -s
, для других способов сделать это (некоторые деструктивные) см. (снова) Вики СообществаЭто также может быть проблема с контроллером SATA или с шиной, но сначала вы должны проверить диск (возможно, с другой машины, если вы не уверены в контроллере).
Скорее всего, это плохой блок. Хотя в моей компании есть правило, что любой такой жесткий диск следует немедленно выбросить, мы, домашние пользователи, часто пытаемся спасти как можно больше. Выбранный инструмент - HDD Regenerator (неразрушающий), но это платное программное обеспечение. Если вы хотите сделать это бесплатно, вы можете использовать HDD Low Level Format. Старые версии бесплатны. Для этого потребуется полное резервное копирование и восстановление. Упомянутые мной программы работают независимо от файловой системы. HDD LLF работает непосредственно в WinXP или 2003, тогда как HDD Regenerator создает загрузочный USB-накопитель, но также доступен в Интернете в виде образа дискеты Linux initrd, используемого с memdisk.