/home目录无损迁移至独立分区实践
Tofloor
poster avatar
47******76@qq.com
deepin
2018-09-03 08:17
Author
本帖最后由 cherishlj 于 2018-9-3 00:25 编辑

参考了该文章 Ubuntu 16.04 /home 目录迁移到独立分区的方法

第一次发帖,顺便记录一下全过程。

背景
笔记本电脑,4代i7 ES,Quardro K2100M 独显,8G DDR3 1600 内存(有一条8G内存坏了),512G的固态。从15.5慢慢升级到15.7,没有swap分区,用的Swap System Control自动管理swap,除了efi分区,单独一个分区。最近发现已经膨胀到120多G了,home目录占了60多G,每次用live备份系统要花半个多小时,太夸张,就想着可不可以把/home目录迁移到独立分区,以后就只要备份根分区就可以了。查询了论坛只有一个帖子涉及到这个需求,且说的都不是很清楚,便去google了许多教程,经过尝试成功完成迁移。
PS:deepin是本人第一次用linux,以前是呆在windows阵营的,现在笔记本里只有deepin,windows在virtualbox里头,给2G内存,64位win10,体验贼佳。

过程
准备工作:在live系统下先把全盘备份,防止出问题。然后用Gparted工具把系统盘大小调整为200G,空余部分新建ext4分区,200G,作为将要迁移的目的地。然后重启进入deepin系统,开始进入正题。
1. 记录目的地分区的UUID,命令:
  1. sudo blkid
Copy the Code

2. 打开/etc/fstab,添加挂载,命令:
  1. sudo gedit /etc/fstab
Copy the Code
在最后添加一行,等号后面部分替换成第一步记录的UUID:
  1. UUID=782e0333-6722-4506-bf73-4353fc3ccfc6 /media/home ext4 nodev,nosuid 0 2
Copy the Code
3. 让添加的挂载生效,将目的地分区挂载到/media/home,命令:
  1. sudo mkdir /media/home
  2. sudo mount -a
Copy the Code
4. 将/home目录全部拷贝至/media/home,下面使用的命令我不清楚是什么命令,牵扯到的时间,属性,权限什么的我也不清楚,但是这个命令有效,不会引起后续问题,如果有懂的亲,可以在楼下回复解释一下其作用和特点,命令:
  1. sudo rsync -aXS /home/. /media/home/.
Copy the Code
命令会持续较长时间,视硬盘速度以及/home目录大小而定。

5. 接下来的操作尽量不要离开终端,因为你的资源管理器(目测很多应用)会打不开了,因为在操作过程中/home目录会短暂地消失一会,命令:
  1. cd /
  2. sudo mv /home /home_backup
  3. sudo mkdir /home
Copy the Code
完成的工作为,备份原/home目录,建立新的/home目录,接下来的工作即为将目的地分区挂载到新建的/home目录则大功告成。
6. 再打开/etc/fstab,命令:
  1. sudo nano /etc/fstab
Copy the Code
接下来在终端内对配置文件进行处理,因为此时/home目录为空,除了终端,估计啥也干不了,把fstab文件的最后一行改为:
  1. UUID=782e0333-6722-4506-bf73-4353fc3ccfc6 /home ext4 nodev,nosuid 0 2
Copy the Code

没错,只是把"/media"字符串删掉了,记得Ctrl+O保存,Ctrl+X退出。同时,重新挂载一下,命令:
  1. sudo mount -a
  2. sudo rm -rf /media/home
Copy the Code
至此,大功告成,当然最后的/home_backup你可以先不删,留校查看。

大家一起学习deepin,喵!





Reply Favorite View the author
All Replies
2 / 2
To page
avatar
NSFW
deepin
2019-10-12 22:26
#21
本帖最后由 gov360 于 2019-10-12 14:32 编辑
  1. sudo rsync -aXS /home/. /media/home/.
Copy the Code

sudo  是指使用root用户执行接下来的命令
rsync  是系统文件同步命令参考链接
aXS    是命令参数  a 表示使用存档模式    X 表示使用扩展属性保持和源文件属性一致   S 表示使用稀疏文件模式实现高效传输   参考链接
/home/.    表示源文件或目录
/media/home/.    表示目标文件或目录
Reply View the author
avatar
ghostry
deepin
2019-10-12 22:54
#22
楼主好人啊.

Reply View the author
avatar
lbnew
deepin
2019-11-17 05:06
#23
mark一下。新装的deepin,还在学习。这样做备份和重装系统比较方便,感谢!
Reply View the author
avatar
伴你高飞
deepin
2026-05-09 15:52
#24

标记一下,可能快用到了

Reply View the author
2 / 2
To page