Мой корневой раздел отформатирован как ext3, и я хотел бы выполнить проверку на наличие поврежденных блоков. Обычно это делает e2fsck -c -c , но вы не можете запустить его на смонтированном разделе. Я знаю, что можно заставить fsck запускаться при загрузке, создав файл /forcefsck, но можно ли указать, что он также должен проверять наличие плохих блоков? Если нет, каков рекомендуемый способ проверки наличия плохих блоков в корневом разделе? Я хотел бы избежать создания аварийного диска и загрузки с него.
5 ответов
Если ваши сценарии инициализации поддерживают это (Fedora IIRC), вы можете добавить -c -c
в /fsckoptions
(затем создать /forcefsck
и перезагрузиться).
К сожалению, эта функция доступна не везде. Вы, вероятно, должны перезагрузить LiveCD/LiveUSB вместо этого.
См. Могу ли я запустить fsck или e2fsck, когда смонтирована файловая система Linux?, который отмечает, что запуск любого fsck в смонтированной файловой системе может привести к повреждению диска или данных.
Предлагает следующие решения:
A. Переведите систему в однопользовательский режим, размонтируйте систему, затем запустите e2fsck
init 1
umount /dev/sda
e2fsck -y /dev/sda3
Б. Загрузитесь с установочного компакт-диска в режим восстановления.
boot: linux rescue nomount<br/>
mknod /dev/sda
mknod /dev/sda3
fsck /dev/sda3
Другим решением было бы использовать fsck для проверки всего диска (кроме swap) во время загрузки как root:
shutdown -Fr now
где -F обозначает принудительную проверку fsck и -r для перезагрузки.
Для размонтированной файловой системы я также использую:
dd if=/dev/diskdevice of=/dev/null
Для проверки есть любая ошибка при чтении.
Вы можете загрузить систему и указать init=/bin/bash
качестве параметра загрузки. Это будет запускать bash при загрузке, а не обычные сценарии запуска. В результате файловые системы не обрабатываются, и вы получаете доступ только для чтения.
Теперь у вас есть доступный только для чтения рут, и вы можете fsck.
я использую
cat /dev /diskdevice> /dev /null
а затем проверьте, что находится в dmesg. Если будет плохой блок, он скажет. Ремонт это еще одна длинная история.