我正在尝试运行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 身份从 Ubuntu 10.04 32 位 liveCD 执行。该分区是 Ubuntu 10.04 32 位安装的系统(非主目录)部分。
答案1
有些东西(通常在内核中,如 NFS 线程、交换文件、绑定安装等)可以使文件系统保持忙碌,但这些东西不会显示在fuser
.
如果您尝试安装fsck
已安装的文件系统,它将被损坏。您应该找到一张不会自动挂载您的文件系统的 Live CD,例如 Knoppix 或 Fedora。
答案2
您可以删除分区fstab
并重新启动机器
答案3
尝试启动另一张 liveCD - 我推荐系统救援光盘它是专门为解决 Linux 安装问题而设计的。它也比典型的操作系统 liveCD 小。为了安全起见,请fsck
从控制台运行(无 X)。
如果标准fsck -p
不起作用,你也可以尝试e2fsck -y -f
。
答案4
相关问题/答案位于https://serverfault.com/questions/556014/centos-thinks-disk-is-busy-cant-mount-or-fsck
具体来说,文件系统可能已被 fsck 挂载以外的其他程序使用。 fusionr 和 lsof 都可能有助于确定该驱动程序/应用程序是什么。