我有 Ubuntu 14.04/dev/sda1
和 Fedora 25 /dev/sda3
。我想创建一个分区来存储我下载的文件(即应用程序、源代码、书籍等)。
目前,我将文件存储在工作操作系统的当前分区中,并且要从另一个操作系统访问该文件,只需挂载该分区即可。
这个解决方案有效。但是,我想要一个单独的分区仅用于此目的,并且两个操作系统都不拥有它,为了访问包含每个操作系统都必须安装的分区的文件。
答案1
简而言之:您只需要创建另一个分区,并在其上创建一个文件系统。然后将其添加到/etc/fstab
两个系统上。确保您的用户 ID 匹配。为了方便起见,添加您想要的任何绑定安装和/或符号链接。
细节:
首先:如果您的用户 ID 号在两个发行版上都匹配,那么这会容易得多。你可以运行id
查看一下你的用户ID号是多少。如果它们不匹配,就会很烦人(因为没有办法关闭权限检查,例如 ext4)。
因此,如果它们不匹配,您可能想要更改一个。基本过程是您注销,以其他用户身份登录,然后用于sudo groupmod -g new-gid your-group
更改组 ID 和sudo usermod -u new-uid your-user
更改您的用户 ID。至少在 Debian 上,这些记录还可以更改您的主目录和邮件池的所有权。您可能还想查找find / -uid old-user-id -or -gid old-group-id
它丢失的任何文件或目录并chown your-user:your-group filename
修复它们。 (我找不到要链接到的问题 - 所以如果您对此完全不清楚,请提出第二个问题,并链接到此)。
第二:你需要一个备用分区。使用您最喜欢的分区表编辑器来创建一个。这假设您有可用空间;如果没有,您将不得不缩小一些现有分区。我绝对建议在缩小任何分区之前进行备份。您可能需要重新启动才能激活新的分区表,请继续执行此操作。
第三:格式化新分区。例如,sudo mkfs.ext4 /dev/sdaX
。
第四:创建一个要挂载的目录。您可以将其放在主目录中,但我认为将其安装在其他位置,然后使用绑定安装实际上更有用(一方面,谁想要lost+found
在他/她的文档文件夹中不可移动?)。您可以将其放在任何地方 - 假设您将其安装在/shared
.您需要在两个发行版上执行此操作。
/etc/fstab
在两个发行版上添加一个条目。它应该看起来像这样:
# dev mountdir fs options dump pass
/dev/sdaX /shared ext4 defaults 0 2
现在,继续安装它:sudo mount /shared
。在其中创建一个目录 ( sudo mkdir /shared/your-username; sudo chown your-username: /shared/your-username
)。
您现在可以在目录中创建子目录(无需 sudo),当然也可以创建文件。您还可以从您的主目录(在每个发行版上)放置符号链接 - 例如,如果您创建了/shared/your-user/Documents
,您可以
# do these steps on each distro
mv Documents Documents.old
ln -s /shared/your-user/Documents Documents
mv -i Documents.old/* Documents/
rmdir Documents.old
另一种方法是使用绑定安装,但我不会为此烦恼,除非您确实需要它们(例如,使单个目录只读等)