1,给新ssd分区
使用usb安装u盘, try ubuntu,打开gparted。Device - 创建分区表。
创建新分区:
2M grub分区。 格式选 unformatted 对应分区 /dev/nvme0n1p3
200MB /boot。 格式选 ext4 对应分区 /dev/nvme0n1p2
80G / 格式选 xfs(因为我之前的系统root分区是xfs的。) 对应分区 /dev/nvme0n1p1
300G /home 格式选 ext4 对应分区 /dev/nvme0n1p4
- 点对勾 - 保存。
然后右键2M grub分区,manage flags选为 bios_grub。
右键200MB /boot 分区,manage flags选为 boot, esp
参考:https://segmentfault.com/a/1190000008317976
2,拷贝文件
if=源磁盘
of=目标磁盘
dd if=/dev/sda5 of=/dev/p2 # 迁移boot
dd if=/dev/sda8 of=/dev/p1 # 迁移root
dd if=/dev/sda7 of=/dev/p4 # 迁移 home
参考:https://blog.csdn.net/dark5669/article/details/53547955
看到gparted的下面 /dev/nvme0n1p1分区后面有红色叹号。修复xfs分区(之前的root: sda8是xfs分区类型):
分区/dev/nvme0n1p1使用gparted右键check不通过。报错:mount: wrong fs type, bad option, bad superblock on /dev/xvdf1, missing codepage or helper program, or other error主要是不能挂载。那么如何修复xfs分区的问题,然后挂载呢?1,检查错误
$ xfs_repair -n /dev/nvme0n1p12,尝试修复
$ xfs_repair /dev/nvme0n1p13,上一步2失败的话(报错 ERROR: The filesystem has valuable metadata changes in a log...),换丢失文件的方法再次修复
$ xfs_repair -L /dev/nvme0n1p14,修复(现在不报错)
$ xfs_repair /dev/nvme0n1p15,挂载硬盘
$ mount -t xfs -o nouuid /dev/nvme0n1p1 /mnt6,获取uuid
$ blkid7,卸载硬盘
$ umount /dev/nvme0n1p18,重新生成uuid
$ xfs_admin -U generate /dev/nvme0n1p19,现在可以正常的挂载和卸载硬盘了
$ mount /dev/nvme0n1p1 /mnt不再报错。此时 gparted check应该也可以通过了。
感谢:Simon Brady @ https://serverfault.com/questions/948408/mount-wrong-fs-type-bad-option-bad-superblock-on-dev-xvdf1-missing-codepage
https://blog.51cto.com/dangzhiqiang/1657511
之后再出现挂载不上的问题,在用gparted打开然后check一下应该就好了。
3,修复grub
挂载新ssd的三个分区 (home分区可能无所谓。可以不挂载)
$ sudo mkdir /mnt/ssd
$ sudo mkdir /mnt/ssd/root
$ sudo mkdir /mnt/ssd/boot
$ sudo mkdir /mnt/ssd/home
$ sudo mount /dev/nvme0n1p1 /mnt/ssd/root
$ sudo mount /dev/nvme0n1p2 /mnt/ssd/boot
$ sudo mount /dev/nvme0n1p4 /mnt/ssd/home
把原来硬盘(挂载在/media/ubuntu)的boot下的所有内容拷贝到新ssd的boot分区
$ sudo cp -r /media/ubuntu/boot /mnt/ssd/boot
改一下权限,防止可能出现权限问题
$ sudo chmod 777 -R /mnt/ssd/boot
此时可以看到新ssd的root下的内容同步更新了。修改新ssd的root中的/etc/fstab文件。替换老的root分区uuid为新的uuid
$ sudo gedit /media/ubuntu/etc/fstab
执行boot-repair
$ sudo add-apt-repository ppa:yannubuntu/boot-repair
$ sudo apt-get update
$ sudo apt-get install -y boot-repair
$ boot-repair
-> 选择recommend repair
repair成功,重启。(repair过程中如果提示efi问题,选择yes continue就好了)
感谢:https://blog.csdn.net/u011331731/article/details/90167020
注意:之前定义了swap分区,如果按照以上设置不单独划分swap分区的话,需要注释fstab中挂载swap的内容。否则开关机会卡慢。参考:https://blog.csdn.net/asahinokawa/article/details/79272761
注:
格式化某个分区为指定格式: mfks -t ext4 /dev/sda1 //将sda1分区格式化为ext4格式