答案1
我不问你为什么这样做,但我可以解释这个问题。
当您挂载/bin
到/home/binex
时,您也有/bin
目录/home/binex
,并且从文件系统角度来看,它是相同的目录。接下来,当您挂载/dev
到时,/home/binex
您肯定会挂载/dev
到/bin
,因为/home/binex
挂载/bin
点(在第一个mount
命令之后)是相等的挂载点,并且它们指向一个目录。因此,您重叠了/bin
并且无法访问mount
命令。
因此,文件不会被删除。它们正在重叠。重新启动将解决此问题。
答案2
具体来说,这是由于安装传播。
现代系统,包括任何使用 启动的系统,默认情况下systemd
都会启用挂载传播和子挂载。/
为了挂载命名空间的好处,通常建议这样做。
这意味着当您创建绑定挂载时,默认情况下您在绑定挂载下进行的任何挂载操作也会应用于源目录。 (更有用的是,传播也以相反的方式进行)。
如果您不幸不知道这一点并最终用其他东西过度安装/bin
(我猜这是到 的符号链接/usr/bin
),您将无法访问正常的命令。哎哟。
如果您想了解更多有关挂载传播效果的信息,您可以先浏览man mount
.它还引用了其他一些文档。