当 umount 不可用时如何卸载?

当 umount 不可用时如何卸载?

想象一下,您不小心使用mount --bind隐藏,/bin以至于umount(和大多数其他二进制文件)不再可见。

您将如何摆脱这种困境?

除了硬重启之外还有其他办法吗?

答案1

幸运的/bin是,它实际上相当小,只有非常基本的实用程序和 shell。只要您仍打开 root shell,您就应该能够使用 /usr/bin 中的工具下载本应挂载在您的发行版(例如apt-get install -d mountDebian)中的软件包,然后从下载的软件包中手动提取文件(dpkg-deb -x mount.whatever.deb /some/temp/folder),然后./umount在该文件夹中使用。

答案2

哈哈,重新启动可能也不起作用,因为那可能/bin也需要工具:)

我猜这些不会起作用:

  • 进行 scp机器(你的 shell 不存在,登录将被拒绝)
  • dpkg -x / dpkg -i / rpm -i 因为这些很可能需要 /bin 中的东西

我只需重启即可。这没什么问题 :)

如果您不想重新启动,我会尝试从另一台具有相同操作系统的机器上 scp/wget /bin/umount 的副本并运行它。

答案3

实际上,如果您不想重新启动,您可能可以返回到您保留的那些精细备份并恢复您缺少的相应区域。(就我个人而言,我会重新启动以保持清洁)。

答案4

如果您的根文件系统支持快照,您可以拍摄快照,并从快照中复制应复制到分区的 /bin 文件(忘记了您无法挂载它)。

否则,如果您有一个备用分区,则可以使用 dd 将根分区复制到那里并以此方式获取 /bin 文件。可能使用外部 USB 驱动器。

最后,如果您的网络正常,您可以从类似的系统复制回命令。

相关内容