You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Ubuntu 20.04新安装系统中的/home目录挂载至旧系统位于硬盘的/home分区

如何将Ubuntu 20.04新安装系统中的/home目录挂载至旧系统位于硬盘的/home分区

老哥,太懂你的心情了——重装要花十几个小时不说,还学不到真东西,咱们就用修改/etc/fstab的办法把旧硬盘上的/home分区挂回来,步骤我尽量讲得直白,跟着做就行,别怕那个“哈希标记提示符”!

第一步:先给关键文件做个备份,稳字当头

/etc/fstab是系统挂载分区的核心配置文件,改之前先存个备份,万一改出问题能立刻恢复:

sudo cp /etc/fstab /etc/fstab.bak

执行完这个命令就相当于给fstab拍了个快照,之后要是出岔子,用sudo cp /etc/fstab.bak /etc/fstab就能还原回去。

第二步:找到旧/home分区的唯一标识(UUID)

直接用/dev/sda2虽然也行,但系统重启后设备名偶尔会变,用UUID更稳。执行下面的命令:

sudo blkid

在输出里找/dev/sda2那一行,你会看到类似UUID="abc123-def456-ghi789"的内容,把这个UUID完整抄下来(带不带引号都行)。顺便确认一下这行里的TYPE="ext4",如果你的旧分区是其他文件系统,后面要对应修改。

第三步:处理当前新系统的/home目录

现在新系统的/home在SSD上,得先腾地方:

  1. 把当前的/home重命名为/home_old,留着备用:
sudo mv /home /home_old
  1. 创建一个空的/home目录当挂载点:
sudo mkdir /home

第四步:编辑fstab文件,添加旧分区的挂载规则

用新手友好的nano编辑器打开fstab:

sudo nano /etc/fstab

打开后往下翻到文件末尾,添加一行内容,把刚才抄的UUID替换进去:

UUID=你抄的那个UUID值 /home ext4 defaults 0 2

给你解释一下这行每个部分的意思:

  • UUID=xxx:指定要挂载的分区(用唯一标识,不会认错)
  • /home:挂载点,就是旧分区要对应到系统里的哪个目录
  • ext4:文件系统类型,和你刚才blkid里看到的TYPE一致
  • defaults:默认挂载选项(允许读写、开机自动挂载等)
  • 0:是否用dump工具备份(0就是不备份,咱们不需要)
  • 2:开机时fsck检查的顺序(根分区是1,其他分区设2就行)

输完这行后,按Ctrl+O保存,再按Ctrl+X退出nano编辑器。

第五步:测试挂载,不用重启就能验证

执行下面的命令把旧/home分区挂到新的挂载点上:

sudo mount /home

如果没有弹出任何错误提示,就成功了!你可以打开文件管理器看看/home目录,里面应该就是你之前的照片、视频那些旧内容了。

可选:合并新系统的配置文件(如果需要)

新安装的系统里,/home_old里可能有一些新程序的配置文件,要是想把它们合并到旧/home里,可以用这个命令:

sudo rsync -a /home_old/ /home/

rsync -a会完整复制所有文件,包括权限和隐藏文件,不会覆盖旧文件(如果有重名的会提示,或者你可以加--ignore-existing参数跳过已有的文件)。确认所有需要的内容都移过去后,再删除/home_old:

sudo rm -rf /home_old

万一出问题的补救办法

要是重启后系统进不去,别慌:用Ubuntu安装U盘启动,选择“试用Ubuntu”,然后找到SSD上的根分区(就是你新安装系统的那个分区),挂载它之后,找到/etc/fstab,把我们之前备份的fstab.bak复制回去覆盖原文件,重启就能恢复到修改前的状态了。


备注:内容来源于stack exchange,提问作者Will Steward

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 16:02:28