我有第二个驱动器,我想安装在根目录下。该驱动器包含以下文件夹:
/home
/shared
Run Code Online (Sandbox Code Playgroud)
我希望这两个文件夹可以在“/”处访问。我可以将驱动器安装在 /media/disk1 上,但这并不能解决我的问题。
我尝试了以下命令,但它不起作用:
mount /dev/sdb1 /
Run Code Online (Sandbox Code Playgroud)
我没有错误,但文件夹没有出现在 /
Rma*_*ano 14
您似乎想要的是“ union ”安装,这在 Ubuntu 中无法完成(至少不能使用默认工具;按照上面的链接,您很冒险)。总的来说,Linux 中仍然没有官方的 union-mount 解决方案(2014-04-22);有像AUFS这样的树外文件系统和UnionMount 上正在进行的工作或多或少。Valerie Aurora有一个关于它的(稍微过时的)页面。
例如,您可以轻松地将磁盘挂载在以下位置,/mnt/disk1然后将目录符号链接到您想要的位置:
ln -s /mnt/disk1/home /home
ln -s /mnt/disk1/shared /shared
Run Code Online (Sandbox Code Playgroud)
(同样,你应该不会有一个现有的/home或/shared文件夹,混乱和/或错误,否则会出现)。
做这些事情的另一种方法是“绑定安装”。它与符号链接目录非常相似,但可以跨越“chroot”边界。您可以在此页面和其他页面中找到更多信息。
更新:overlayfs 文件系统已升级为版本 3.18 的标准内核。所以现在是Linux下的一个正式的联盟式的解决方案; 用户空间实用程序肯定会简化其使用。目前,文档位于内核树中的Documentation/filesystems/overlayfs.txt.