如何在 Linux 中将子目录挂载到硬盘?

如何在 Linux 中将子目录挂载到硬盘?

假设我有两个硬盘(A,B)并有以下目录:

  • /var/www
  • /var/www/上传

目前,如果我将文件上传到 /var/www 或 /var/www/upload ;它将保存在驱动器 A 中。

如何使文件夹 /var/www/upload 指向驱动器 B。因此,如果我将文件上传到 /var/www/upload,它将保存在驱动器 B 中,但是当我将文件上传到 /var/www 时,它将保存在驱动器 A 中。

答案1

我假设磁盘 A 是不是作为根 (/) 文件系统挂载。如果是,则忽略包含 driveA 的行。

编辑你的 /etc/fstab:

/dev/diskA /var/www/ 自动默认值 1 2
/dev/diskB /var/www/upload 自动默认值 1 2

您可以用该分区上的文件系统替换“自动”,但上述方法无论如何都应该有效。

如果磁盘 A 和 B 安装在其他地方,您可以尝试符号链接:

ln -s /路径/到/驱动器A_挂载点/var/www/
ln -s /路径/到/驱动器B_mountpoint /var/www/upload

笔记:/var/www 和 driveA 上的目录“upload”不能存在,否则将失败。

我个人更喜欢使用 mount 的 bind 选项:

mount -o bind /var/www/ /path/to/driveA_mountpoint
mount -o bind /var/www/upload /path/to/driveB_mountpoint

考虑编辑 /etc/fstab - 这可能是最好的方法。

答案2

硬盘 B 是否已安装?如果已安装,

ln -s /path/to/hard/drive/B/mount/point /var/www/upload

否则

mount -t <fstype> -o defaults /dev/<hard driver B> /var/www/upload

相关内容