如何卸载不良安装?

如何卸载不良安装?

我做错了事。我安装 /dev/mapper/vgpool-lvstuff7到了/,那很糟糕。我怎样才能卸下那个东西?

答案1

我强烈建议重新启动以彻底解决问题。

但如果你反对的话,那就试试吧umount -l

答案2

安装某些东西/会隐藏所有现有的安装。要解决此问题,您需要某种方法以 root 身份发出mountumount系统调用。

如果您运行来自 的程序umount /,它将失败,因为执行卸载的程序正在使用该卷。我认为可行:假设没有其他程序在运行(如果有,请先杀死它们),退出时该卷将被卸载。umountvgpool-lvstuff7umount -lvgpool-lvstuff7umount

另一种可能的方法是使用mount --bindmount --move。在某处安装tmpfs文件系统 ( mkdir /z; mount -t tmpfs scratch /z; mkdir /z/root) 并尝试mount在那里复制或创建程序,然后运行mount --bind / /z/root​​.vgpool-lvstuff7然后可以在 处访问该卷/z/root。我不确定此时是否可以移动根安装。

如果您无法访问该mount程序,也没关系,只要您有办法获得 root shell 并访问/proc.您可以通过以下方式访问原始根目录/proc/1/root:虽然这看起来像是一个无用的符号链接/,但它实际上是一个神奇链接——取消引用它会将您带到 PID 为 1 (init) 的程序的实际根分区。因此您始终可以通过umount访问/proc/1/root/bin/umount

如果您没有/proc,获取该umount程序的另一种方法是从某个地方复制它,甚至只是一个仅调用umount系统调用的小二进制文件,或者您可以从某些解释语言(例如 perl)调用系统调用。

答案3

检查一下/proc/mounts,没有df。看起来df很困惑(可能是因为/etc/mtab错误)。

如果它们实际上都安装在 上/,则df两者将显示相同的统计信息(大小、使用中、空闲、百分比)。

相关内容