绑定挂载目录后再挂载设备:安全吗?


9

我有一个家庭分区,由多个发行版在同一盒子上共享。我正在使用bind来自的坐骑fstab。每个Linux安装都具有以下内容:

UUID=[...]       /mnt/data  ext4  nodev,nosuid   0 2
/mnt/data/arch   /home      none  defaults,bind  0 0
/mnt/data/files  /files     none  defaults,bind  0 0

缺点是,当然,这/mnt/data/arch/mnt/data/files现在安装的两倍。我直觉上尝试过umount /mnt/data,似乎可以按我希望的那样工作:据称mount,该设备现在仅安装在/home和上/files

我的问题是:

  1. 安全吗,还是我忽略了什么?
  2. 是否可以获得与umount /mnt/data仅使用相同的效果fstab?还是我可以在里面做rc.local

Answers:


8

卸载绑定安装的副本之一是安全的。运行后mount --bind /foo /bar,内核不会跟踪哪个/foo/bar第一个,它们是同一文件系统(或文件系统的一部分)的两个安装点。

请注意,如果/foo是一个安装点但/foo/wibble不是,mount --bind /foo/wibble /bar/bar指向已安装在的文件系统的一部分/foo。仍然可以卸下/foo

所以如果你安装了/mnt/data,然后将它的一部分绑定到/home/files,然后卸载/mnt/data,最终将无法访问/mnt/data外部arch和外部的部分files。如果那不打扰您,那就去吧。

您无法通过fstab以下方式实现这一点:它仅支持挂载文件系统。绑定挂载通过黑客入侵(bind挂载选项--bindmount内部变成了命令的选项)。mount --move并且无法在中指定卸载fstab。您可以使用/etc/rc.local致电umount


除此以外archfiles我一直都无法做到。感谢您的确认。:-)
Peter-Paul van Gemerden
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.