![在两个地方安装 Linux 驱动器](https://linux22.com/image/1295849/%E5%9C%A8%E4%B8%A4%E4%B8%AA%E5%9C%B0%E6%96%B9%E5%AE%89%E8%A3%85%20Linux%20%E9%A9%B1%E5%8A%A8%E5%99%A8.png)
我一直在寻找一种方法来在硬盘上的两个位置安装同一个驱动器(例如 /dev/sdd1)。如果我再次尝试使用在第一个位置安装驱动器的命令,我会收到以下错误:
“由于 NTFS 驱动器已以独占方式打开,因此拒绝挂载。”
我也尝试过绑定挂载点,但显然如果主位置未挂载,则绑定的文件夹将无法访问。
还有其他我可以尝试的命令吗?
答案1
我能想到的解决这个问题的唯一方法(特别是“如果卸载会发生什么?”部分)是使用自动挂载和符号链接,正如古斯塔夫的回答所建议的:
ln -s /mnt/original /home/max/newlink
但诀窍是制作/mnt
并特别/mnt/original
覆盖一个自动挂载映射,你的发行版应该为此提供一个包,你将需要类似以下内容/etc/auto.master
:
/mnt /etc/auto.mnt
然后在/etc/auto.mnt
:
original -fstype=ntfs /dev/sdd1
通过这种方式,访问 /mnt/original 将导致/dev/sdd1
正确安装,但如果由于某种原因尚未安装,则“查看”符号链接也将导致它被安装。
(还有一件事——如果你碰巧也通过 samba 导出它,你需要使用preexec
让 samba 相信它存在。我是这篇博文)
答案2
使用 Linux绑定坐骑,有没有这样的事作为“主要位置”。两个安装位置相同;如果卸载其中一个,则另一个将保留。
mount --bind /mnt/original /home/max/newlink
(为了文件系统, 使用/mnt/original /home/max/newlink none bind
。)
答案3
您可以从第一个挂载点建立到第二个位置的符号链接:
ln -s /mnt/original /home/max/newlink