记得把Gentoo系统从HD迁移一次SSD。公司主机为1T机械硬盘。最近领导高兴,给大家分配了一块256G的固态硬盘,所以今天把Gentoo从机械硬盘迁移到了固态。磁盘分区插入SSD后,旧HD由sda变为sdb,新SSD变为sda。原来的HD分区内容如下:sdb1,EFI分区,原来挂载在/boot/efi下。sdb2,swap分区,sdb3,/home分区,sdb4,/分区,加入SSD后,准备新旧硬盘混用,新分区规划如下:sda1,/分区,sdb1,EFI分区,hangunder/引导/efi。sdb2、交换分区sdb3、/homesdb4、/var将/var放在HD下,避免频繁读写SSD。现在对SSD进行分区:root#parted/dev/sda(parted)mklabelgpt#对齐,从1开始,使用整个SSD的95%(parted)mkpartprimaryext4195%#检查是否对齐(parted)align-checkoptimal11aligned(parted)quitformatpartitionroot#mkfs.ext4-Estride=128,stripe-width=128/dev/sda1复制文件清理系统垃圾ecleandistfilesrm-rf/usr/portage/distfiles/*mountSSDmkdir/mnt/gentomount-odiscard/dev/sda1/mnt/gentoo使用cp-av命令删除/dev,/mnt,/proc,/run,/tmp,/var,/sys其他目录全部复制到/mnt/gentoo。dd命令也可以在这里使用。然后手动创建/mnt/gentoo/run目录mkdir-v/mnt/gentoo/run把原来的/var目录复制到/root:cp-av/var/配置系统挂载需要的目录,然后chroot:mount-tproc/proc/mnt/gentoo/procmount--rbind/sys/mnt/gentoo/sysmount--make-rslave/mnt/gentoo/sysmount--rbind/dev/mnt/gentoo/devmount--make-rslave/mnt/gentoo/devchroot/mnt/gentoo/bin/bashsource/etc/profileexportPS1="(chroot)$PS1"使用blkid命令查看硬盘的UUID。编辑/etc/fstab文件,根据硬盘分区规划,完善文件。#/dev/sda1UUID=XXX/ext4defaults,relatime,discard01partition/tmpandputitonHD:mkdir-pv/var/tmpln-s/var/tmp/tmpwill/etc/portage/make.conf的缓存文件的路径也设置为HD。安装Grub引导安装,配置grubgrub-install--target=x86_64-efi--efi-directory=/boot/efigrub-mkconfig-o/boot/grub/grub.cfg重启系统取消挂载,重启系统,享受新系统。exitumount-l/mnt/gentoo/dev{/shm,/pts,}umount-R/mnt/gentooreboot故障排除安装SSD后,系统无法启动,提示找不到sda4。原因是原来的HD变成了sdb,所以grub应该是在找sdb4。解决方法:重启电脑,在grub中选择菜单,按neare进入编辑模式,将hd0改为hd1,将sda4改为sdb4,按F10从HD启动系统。
