Я пытаюсь запустить, fsck -p /dev/sda5
чтобы исправить ошибки в разделе ext4, однако команда выводит
fsck from util-linux-ng 2.17.2
fsck.ext4: Device or resource busy while trying to open /dev/sda5
Filesystem mounted or opened exclusively by another program?
Я подтвердил использование /etc/mtab
и lsof
ничего не использует раздел, и он не смонтирован. Я также использовал fuser -k /dev/sda5
принудительное закрытие чего-либо, используя файл, и umount
пытался размонтировать его безрезультатно.
Как я могу заставить fsck
хотя бы проверить и, надеюсь, восстановить раздел, несмотря на то, что он читается как занятый? Предполагая, что я достаточно уверен, что он не подключен и не используется, и что возможность повреждения данных не является проблемой.
Все команды были выполнены как root с 32-битного liveCD Ubuntu 10.04. Раздел является системной (не домашней) частью 32-разрядной установки Ubuntu 10.04.
ubuntu
ext4
fsck
unmounting
Keeblebrox
источник
источник
fsck
если он думает, что устройство занято (или почему это не может быть сделано).Ответы:
Существуют вещи (обычно в ядре, такие как потоки NFS, файлы подкачки, монтирование bind и т. Д.), Которые могут поддерживать файловую систему занятой, которая не будет отображаться
fuser
.Если вы попытаетесь
fsck
смонтировать файловую систему, она будет повреждена. Вы должны найти живой CD, который автоматически не монтирует ваши файловые системы, такие как Knoppix или Fedora.источник
fsck
использовать локальную файловую систему, так что я надеюсь, что NFS не будет занимать ее, однако я получаю то, что вы говорите о том, что ядро загружает его так, что это не обязательно будет отображаться. Поскольку это все еще происходит в среде живого диска, знаете ли вы, как остановить ядро от доступа к нему достаточно долго, чтобы я мог его запуститьfsck
?fsck
когда я знаю, что устройство не занято и не смонтировано, и когда повреждение данных не является проблемой.Вы можете удалить раздел
fstab
и перезагрузить компьютеристочник
Попробуйте загрузить другой liveCD - я рекомендую SystemRescueCD, который разработан специально для решения проблем с установками Linux. Это также меньше, чем типичные ОС LiveCD. И чтобы быть в безопасности, бегите
fsck
с консоли (без X).Если стандарт
fsck -p
не работает, вы также можете попробоватьe2fsck -y -f
.источник
e2fsck -y -f
принудительно проверяет чистый раздел. Ничего не говорится о смонтированных разделах. Знаете ли вы, что это также заставит проверить?e2fsck
man-страницы). Другая мысль: если/etc/mtab
кажется, что раздел не смонтирован, но вы все равно получаете сообщение об ошибке, вам также следует проверить/proc/mounts
, так какmtab
файл может быть устаревшим по какой-то странной причине.Соответствующий вопрос / ответ на /server/556014/centos-thinks-disk-is-busy-cant-mount-or-fsck
В частности, файловая система уже может использоваться чем-то другим, кроме монтирования fsck. Любой из fuser и lsof может помочь выяснить, что это за драйвер / приложение.
источник