作为自动 VM 创建系统的一部分,块设备安装到临时文件夹 (/tmp/whatever)。各种脚本在首次运行之前安装和配置 VM。
最近发生了一些变化,临时挂载很忙,拒绝卸载。在尝试确定可能仍然保持文件打开的内容时,我已检查:
以 root 身份运行测试
上述测试都没有指向文件系统使用的结果,但是 umount -f 仍然抱怨“设备或资源繁忙”/“设备繁忙”。
我应该尝试哪些其他测试,以便我可以找到真正的根本原因,从而希望在不重新启动的系统上修复卡住的安装,我目前无法重新启动一段时间以及防止这种情况再次发生?
这也是 /doubtful/(但我不知道如何检查)来自临时挂载的内核模块被加载,因为临时挂载安装的 Linux 版本与主机正在运行的版本不同。
编辑
我的 Linux 服务器(Centos 7.5)的 USB 驱动器处于奇怪的状态。当我尝试将 USB 驱动器上的分区安装到新创建的安装点时,出现错误
\n\nmount: /dev/sdd1 is already mounted or /mnt/foo busy.\n
Run Code Online (Sandbox Code Playgroud)\n\n/mnt/foo
是一个新创建的挂载点,所以它不应该很忙。这意味着/dev/sdd1
已经安装了。但是,当我尝试卸载它时,出现错误
umount: /dev/sdd1: not mounted\n
Run Code Online (Sandbox Code Playgroud)\n\n系统似乎处于某种混乱状态,我无法安装或卸载 USB 驱动器?
\n\n我可以运行一些命令来使事情正确,以便我可以安装 USB 驱动器吗?我不想重新启动系统。详细信息如下所示。谢谢
\n\n# lsblk\nNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT\n...\nsdd 8:48 1 29.8G 0 disk\n\xe2\x94\x94\xe2\x94\x80sdd1 8:49 1 29.8G 0 part\n# mkdir /mnt/foo\n# mount /dev/sdd1 /mnt/foo\nmount: /dev/sdd1 is already mounted or /mnt/foo busy\n# umount /dev/sdd1\numount: /dev/sdd1: not mounted\n
Run Code Online (Sandbox Code Playgroud)\n\n更新:USB 存储子系统似乎处于不良状态。当 USB 驱动器被移除时,“lsusb”输出仍然显示该设备。当插入其他 USB 驱动器时,它们根本不显示。我尝试卸载并重新加载“usb-storage”内核模块,但由于它正在使用中,因此不会卸载它。
\n\n …我只是想弄清楚这是否可行。我正在尝试调整多个文件系统的大小,为了安全(这些是生产盒以及 QA),我想离线调整大小。
我已经以单用户模式进入服务器,并且在卸载时没有问题/var
,并且/opt
. 但是我无法卸载/.
任何想法将不胜感激,使用救援 cd 不是一种选择。