txtyb's Blog

The quieter you be, the more you can hear.

尝试将Windows10+Archlinux双系统迁移至新ssd的记录3

txtyb's Avatar 2019-07-21

  1. 1. 修复WIndows10
  2. 2. 修复ArchLinux
    1. 2.1. 挂载分区
    2. 2.2. 配置fstab文件
    3. 2.3. Chroot
    4. 2.4. 修复Grub
    5. 2.5. 重启
  3. 3. 调整bios

前一次尝试因为win10系统映像损坏而失败,这次我事先用dism备份好了系统盘映像,再次尝试。

省略用Clonezilla(再生龙)克隆磁盘的步骤介绍,详细内容请参阅上篇记录

修复WIndows10

使用Clonezilla克隆磁盘后关机,插入烧写有WinPE的u盘,进入PE系统。

打开dism++,选择 恢复功能-系统还原。IMG_20190720_204942.jpg
经过几分钟等待,IMG_20190721_230406.jpg
弹出错误提示:系统盘空间已满。打开资源管理器查看系统盘,发现仅剩130M空间。无奈,格式化系统盘后用WinTool释放系统映像。IMG_20190721_230419.jpg
经过漫长的等待(约30分钟),释放镜像完成,关机重启,成功进入系统。IMG_20190721_230441.jpg

修复ArchLinux

插入刻录有Arch iso的u盘,开机进入Arch安装环境。

挂载分区

执行以下命令将根分区挂载到/mnt

1
mount /dev/nvme0n1p7 /mnt

注:/dev/nvme0n1p7是我的linux系统所在分区。

执行以下命令创建/boot文件夹并将引导分区挂载到上面:

1
mount /dev/nvme0n1p1 /mnt/boot

注:/dev/nvme0n1p1是我的EFI引导分区。

配置fstab文件

删除原来的fstab文件:

1
rm -rf /mnt/etc/fstab

创建新的fstab文件以在开机时自动挂载分区:

1
genfstab -L /mnt >> /mnt/etc/fstab

Chroot

将操作权交给硬盘上的Linux系统:

1
arch-chroot /mnt

修复Grub

重新安装Grub:

1
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB

生成配置文件:

1
grub-mkconfig -o /boot/grub/grub.cfg

重启

1
2
exit
reboot

调整bios

进入bios将Grub的启动优先级调至Windows Boot Manager上方。
IMG_20190721_230500.jpg
保存修改并退出,重启就可以看到熟悉的Grub启动界面了,成功进入ArchLinux。ArchLinux


终于算是将双系统迁移成功了。

本文最后更新于 天前,文中所描述的信息可能已发生改变