将 /home 移动到另一个具有预先存在文件的分区,如何保留分区上的现有目录结构

将 /home 移动到另一个具有预先存在文件的分区,如何保留分区上的现有目录结构

好的,场景就是这样。

我有一个与 Ubuntu 分区不同的分区。我使用这个 500GB 的分区来存储重要数据,以便将它们全部放在一个地方。

在 500GB 分区上我有一个 MISC 文件夹。下一个至 MISC 我想存储来自 Ubuntu 的 /home 数据。

我已遵循 Ubuntu 官方指南分区/家庭/搬家将我的 /home 存储在包含 MISC 的分区上没有任何问题,并且工作正常。

唯一的问题是,现在 MISC 不知怎么地出现在 Ubuntu 的 /home 中……而我希望它们是分区上并排的文件夹。我不确定我是否应该指定更长的目录路径,即 /home/MISC2

似乎将 /home 移动到分区(在本例中为 sda5)已经吞噬了整个分区。此外,该分区不再像以前 Ubuntu 不使用它来存储 /home 时那样,在文件应用程序中显示为计算机、USB 和 CD 驱动器旁边的单独驱动器。

我希望这不会太令人困惑,任何帮助都会很感激!

编辑:

我希望这个 500GB 分区可以作为独立驱动器,不包含 Ubuntu 目录结构。我希望它只是存储/备份数据的地方。

所以也许我不应该通过 /home 的 fstab 安装它...???相反我应该使用--bind 或符号链接吗?

答案1

在@oldfred 和@ByteCommander 的帮助下回答我自己的问题

就我最初的目的而言,将分区挂载为 /home 并不是我真正想要的。阅读更多有关 --bind 和符号链接之间的差异后,我发现符号链接才是我想要的。

最后,我不得不撤消将 /home 挂载到分区的操作,这是官方指南然后为 /home 中的所有有用文件夹创建符号链接(即文档、音乐、图片等),就像 @oldfred 引用的链接一样

答案2

当将分区挂载到目录时,该分区的根目录将映射到挂载点目录。

例子:

sda1: /
     - bin/
     - home/

sda2: /
     - user1/
     - user2/
     - MISC/

sda1您的根分区也是如此,现在您正在挂载sda2到挂载点目录/home/。这将导致如下目录结构:

sda1: /
     - bin/
     - home/
        - user1/
        - user2/
        - MISC/

您不能只从分区中选择一个目录并挂载它。

但是,您可以将分区挂载到其他任何位置,然后将其子目录绑定到您实际想要的位置。这将使它们通过两条路径可用。为了方便起见,我建议您将所有属于的目录放在/home一个目录中,即第二个分区的结构如下所示:

sda2: /
     - to_home/
        - user1/
        - user2/
     - MISC/

然后,在不会打扰您的地方创建一个挂载点,例如:

sudo mkdir /media/home_and_MISC

现在将分区挂载到那里:

sudo mount /dev/sda2 /media/home_and_MISC

然后将其内容目录绑定到您想要的位置:

sudo mount --bind /media/home_and_MISC/home /home
sudo mount --bind /media/home_and_MISC/MISC /MISC

fstab当然,您可以将这些挂载命令转换为相应的条目。

相关内容