我有一台运行 Arch Linux 的台式电脑,在初始安装期间仅使用 120GB SSD,/
没有其他分区。我最近刚刚添加了一个 500GB HDD,我想安装它来/home
增加存储空间,避免将来在 SSD 上编译时出现问题,并在将来我更改任何内容但想保留相同内容时帮助更轻松地升级/home
。
在此之前我的 fstab 读到:
# <file system> <dir> <type> <options> <dump> <pass>
/dev/sda1 / ext4 rw,data=ordered,noatime,nodiratime,discard,erros=remount-ro 0 1
在准备升级时,我将所有内容复制/home
到新分区,然后重命名/home
为/home_old
并创建一个新的空分区,/home
然后修改/etc/fstab
为:
# <file system> <dir> <type> <options> <dump> <pass>
/dev/sda1 / ext4 rw,data=ordered,noatime,nodiratime,discard,erros=remount-ro 0 1
/dev/sdb1 /home ext4 rw,nodev,nosuid,erros=remount-ro 0 2
...当时这是正确的分区名称。
但是,我重新启动并将 SSD 安装为/
和/home
。我尝试使用 UUID 并收到相同的结果。
只是为了尝试,我切换了两者,它在启动时又回到了紧急控制台。再次尝试使用 UUID,得到相同的结果。
如果我回到/etc/fstab
现在的旧版本,它会显示 SSD as/dev/sdb1
和 HDD as/dev/sda1
但仍然将 SSD 安装为/
,我觉得这很奇怪。
鉴于现在的背景故事,我的问题是如何解决此问题以及为什么会出现这种情况,以便我可以了解导致此问题的原因?
编辑:
正如 Timothy Martin 在评论中指出的那样,我在 fstab 中输入了拼写错误,结果发现这就是导致问题的原因。这进一步证明了在配置文件中犯错时会发生奇怪的事情。
羞怯地笑
答案1
创建临时主文件夹
blkid
这将显示所有分区的 UID。记录dd的UUID
打开终端并输入以下内容:
vi /etc/fstab
并将以下行添加到文件末尾。
UUID=xxx-xxxxx-xxxxx /media/home ext4 nodev,nosuid 0 2
保存并退出
接下来,创建一个挂载点:
mkdir /media/home
并重新加载更新的 fstab。
mount -a
我们需要删除现有的主文件夹,以便为 500 GB 分区中的新主文件夹让路。为此,请在终端中键入以下命令:
cd /
sudo mv /home /home_backup
sudo mkdir /home
挂载新的主文件夹
vi /etc/fstab
您所要做的就是将 更改/media/home
为/home
.保存并退出文件。重新加载 fstab 文件:
mount -a
删除 Home_backup 文件夹
rm -rf /home_backup