系统迁移

Win

  1. 准备工作:
    • 原系统硬盘
    • 新系统硬盘
    • 带有PE系统含有diskgeniusi软件按的U盘
  2. 步骤:
    • 关闭原系统
    • 插入U盘,bios设置启动U盘,进入PE系统
    • 打开diskgenius,选择系统迁移即可

Linux

  1. 准备工作:
    • 原系统硬盘
    • 新系统硬盘
    • 带有Live USB的Un盘
  2. bios设置启动U盘,进入U盘Live USB的linux系统
  3. 输入lsblk命令查看磁盘信息,找到原系统的磁盘和新系统的磁盘,例如/dev/sdb1和/dev/sdb2分别为原系统的EFI分区和根分区,/dev/sda为新系统磁盘(此处为举例,具体根据lsblk命令输出进行修改)
  4. 输入cfdisk命令,对新磁盘进行分区,创建efi分区和根分区,efi设置分区类型为fat32,根分区类型须和原来系统一致,例如原系统为ext4,则新系统根分区也为ext4
    格式化EFI分区
    1
    2
    3
        mkfs.fat -F32 /dev/sda1
    ```
    格式化根分区

    mkfs.ext4 /dev/sda2
    1
    2
    5. 挂载分区
    + 挂载旧磁盘

    mkdir /sdb1
    mount /dev/sdb1 /sdb1
    mkdir /sdb2
    mount /dev/sdb2 /sdb2
    1
    + 挂载新磁盘

    mount /dev/sda2 /mnt
    mkdir /mnt/boot
    mount /dev/sda1 /mnt/boot
    1
    2
    6. 复制原系统文件到新系统
    + 复制根分区数据

    rsync -aHAXxSP –exclude=/boot /sdb2/ /mnt/
    1
    + 复制EFI分区数据

    rsync -aHAXxSP /sdb2/ /mnt/boot/
    1
    2
    7. 更新fstab
    + 生成新的UUID

    blkid
    1
    2
        + 修改/etc/fstab文件,将原系统的UUID和新系统的UUID进行替换
    8. 配置启动加载器

    sudo mount –bind /dev /mnt/dev
    sudo mount –bind /proc /mnt/proc
    sudo mount –bind /sys /mnt/sys
    sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
    1
    2
    3
    9. 切换到新根目录  
    ```sudo arch-chroot /mnt```
    10. 安装配置grub
    pacman -S grub efibootmgr
    grub-install –target=x86_64-efi –efi-directory=/boot –bootloader-id=ArchLinux
    grub-mkconfig -o /boot/grub/grub.cfg
    
    
  5. 重启系统,bios设置从新硬盘启动,进入新系统