将主文件夹映射到 fstab 中的不同位置

将主文件夹映射到 fstab 中的不同位置

我希望将我的/home文件夹映射到计算机上的不同位置/驱动器。当我查看 fstab 文件时,我看到以下内容:

/dev/mapper/cl-home     /home            xfs     defaults        0 0
/dev/mapper/cl-swap     swap            swap    defaults        0 0
/dev/sda1   /mnt/store/hd2      ntfs    defaults,auto   0   0

我的问题是:cl in/dev/mapper/cl-home指的是什么?

我可以这样输入吗:

/mnt/store/hd2/home/   /home        ntfs     defaults        0 0

答案1

在 中/etc/fstab,第一列是卷位置,第二列是目录。该目录是挂载点,即可以访问文件的位置。卷位置指示文件的存储位置;根据文件系统类型,有不同类型的位置。对于“普通”文件系统,存储在磁盘上的文件和卷位置是磁盘分区。对于网络文件系统(例如nfs或 )cifs,这表示主机名和主机上的导出路径等。

您当前拥有的 ,/dev/mapper/cl-home使用 Linux 卷格式指定一个分区(左心室容量)。卷名称由两部分组成:cl是卷组(覆盖一个或多个磁盘的一部分),home是该卷组内的逻辑卷。系统并不关心逻辑卷home和目录/home同名,但人类使用同名很方便。

如果您想将主目录放在现有的 Windows 分区上,那么您不能只在此处更改卷名称:/home它不是安装磁盘文件系统的位置。您可以通过多种方式执行此操作:

  • 您可以使用绑定挂载使/mnt/store/hd2/home也可通过 访问/home。 fstab 条目将是

    /dev/sda1  /mnt/store/hd2  ntfs
    /mnt/store/hd2/home  /home  bind
    

    请注意,您没有在 上挂载 NTFS 文件系统/home:它已经挂载在 上/mnt/store/hd2。您正在另一个位置提供目录树;事实上,另一个目录树完全位于 NTFS 分区上,这一事实并不相关。

  • 您可以建立/home到 的符号链接/mnt/store/hd2/home。在这种情况下根本/home不会出现。/etc/fstab

  • 您可以使用绑定安装或符号链接你的主目录,保留其他目录。

  • 您可以将您的主目录更改为/mnt/store/hd2/home.使用 GUI 来管理用户帐户,或使用类似命令

    sudo usermod --home /mnt/store/hd2/linux-home --move-home joe
    

我不推荐任何这些选项,因为 NTFS 无法存储所有 Linux 文件名、类型和属性。所有这些选项都有进一步的问题:

  • 绑定安装是一个非常有用的工具,但它们也有缺点。文件在枚举中的所有位置列出,这对locateetc等有影响。
  • 符号链接没有这些缺点,但有时某些软件会在扩展符号链接的情况下记录主目录的位置。具有符号链接/home也可能导致AppArmor 策略导致的问题
  • 即使在外部有一个主目录/home也会导致安全策略的问题,尽管现在任何主要发行版都应该没问题。

我建议不要将主目录放在 NTFS 文件系统上,而应将其保留在 Linux 文件系统上。要从 Linux 访问 Windows 文件,请在/mnt/store/hd2.为了方便起见,在主目录中创建指向以下位置的符号链接/mnt/store/hd2

相关内容