最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
如何迁移Ubuntu From Scratch
时间:2026-06-10 09:35:07 编辑:袖梨 来源:一聚教程网
Ubuntu 整盘迁移到新硬盘或新机器的实操指南

适用场景与前置准备
- 适用:将现有 Ubuntu 20.04/22.04/24.04 从旧硬盘迁移到新硬盘,或从一台电脑迁移到另一台电脑(硬件不同也可,Linux“万物皆文件”)。
- 准备:
- 一个 ≥16GB 的 U 盘制作启动盘(推荐 Ventoy 或 Rufus/UltraISO)。
- 目标硬盘可用空间需不小于原系统盘已用空间;尽量保持分区布局一致(如 /、/home、/boot、EFI、swap)。
- 备份重要数据;准备外置硬盘/移动硬盘用于中转大文件(如系统镜像或打包备份)。
- 一台可联网的电脑(用于安装引导修复工具)。
方法一 整盘克隆 dd(最快速、最省心)
- 步骤
- 用启动盘进入 Try Ubuntu 环境(不要安装)。
- 确认设备名:lsblk、sudo fdisk -l(如源盘 /dev/sdb,目标盘 /dev/nvme0n1)。
- 执行克隆(目标盘会“变”成源盘,原有数据将被覆盖):sudo dd if=/dev/sdb of=/dev/nvme0n1 bs=64K conv=noerror,sync status=progress提示:另开终端观察进度:watch -n 5 pkill -USR1 dd。
- 若目标盘更大,可在克隆后用 GParted 扩展分区;若更小,需先压缩原系统数据再克隆。
- 迁移后首次启动,建议仅接新盘,避免挂载旧盘导致 fstab 挂载错误。
- 若启动失败,进入 Live 环境修复引导(见下文“引导修复”)。
- 说明
- 适合“同构”迁移(同架构、同引导方式);跨平台(如 BIOS+MBR ↔ UEFI+GPT)需额外处理引导分区与模式。
- 克隆会复制分区 UUID,若新旧盘共存,需调整 /etc/fstab 的 UUID 或使用文件系统标签。
方法二 打包解压迁移 tar(更灵活、可改分区)
- 步骤
- 启动到 Try Ubuntu,挂载原系统的 /、/home、/boot(必要时也挂载 /boot/efi)。
- 打包(排除运行时目录,避免不一致与过大包):
- 根分区:sudo tar -cvpzf ubuntu_root.tar.gz --exclude=/proc --exclude=/tmp --exclude=/home --exclude=/boot --exclude=/lost+found --exclude=/media --exclude=/mnt --exclude=/run --exclude=ubuntu_root.tar.gz ./
- 家目录:sudo tar -cvpzf ubuntu_home.tar.gz ./home
- 引导分区:sudo tar -cvpzf ubuntu_boot.tar.gz ./boot
- 在新硬盘用 GParted 建分区(示例):
- UEFI:ESP 512MB FAT32(flag: boot,esp),/boot 1GB ext4,/ 剩余空间 ext4,/home 余下 ext4,swap 视内存创建。
- Legacy:创建 1MB 未格式化分区(flag: bios_grub),其余同上。
- 将三份压缩包分别解压到新盘对应分区挂载点:tar -xzvpf ubuntu_root.tar.gz -C /mnt/new_roottar -xzvpf ubuntu_boot.tar.gz -C /mnt/new_boottar -xzvpf ubuntu_home.tar.gz -C /mnt/new_home
- 复制 EFI 分区内容(若迁移自 UEFI 机器):sudo cp -a /mnt/old_efi/* /mnt/new_efi/
- 生成新分区的 UUID 映射:blkid,编辑新盘 /etc/fstab,将根、/boot、/home、swap 的 UUID 更新为新的。
- 修复引导(见下文)。
- 说明
- 可在迁移时调整分区大小与数量;适合“异构”迁移与跨平台。
- 打包时排除的目录会在新系统首次启动时自动重建。
引导修复与常见问题处理
- 一键修复(推荐)
- 仅接新盘 → 进入 Try Ubuntu → 联网 → 安装并运行 boot-repair:sudo add-apt-repository ppa:yannubuntu/boot-repairsudo apt update && sudo apt install -y boot-repairsudo boot-repair
- 选择 Recommended repair,按提示完成;若提示创建缺失分区(如 bios_grub/ESP),先分区再修复。
- 手工修复要点
- UEFI:确保 ESP 挂载到 /boot/efi,grub 安装到 ESP(–target=x86_64-efi --efi-directory=/boot/efi)。
- Legacy:grub 安装到 /dev/sdX(整盘,不要写分区),并确保存在 bios_grub 分区。
- 更新配置:update-grub;检查 /etc/fstab 挂载是否正确(必要时用 UUID 或 LABEL)。
- 常见报错与对策
- Gave up waiting for root device:检查 /etc/fstab 是否引用了不存在的旧盘;NVMe 机型在部分主板需将 SATA Operation 从 RAID 改为 AHCI。
- 进入 emergency mode:fsck 检查文件系统,或暂时注释 fstab 中不存在的挂载项后重启再恢复。
- 黑屏时间长:在 /etc/default/grub 设置合适的分辨率(如 GRUB_GFXPAYLOAD_LINUX=1920x1080),然后 update-grub。
迁移后的优化与验证
- 更新 initramfs:sudo update-initramfs -u -k all(内核或驱动变更后执行)。
- 重建 initramfs 帧缓冲(解决部分机型黑屏):echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splashsudo update-grub
- 重建 UEFI NVRAM 条目(可选):sudo efibootmgr -c -d /dev/nvme0n1 -p 1 -L “Ubuntu” -l EFIubuntushimx64.efi
- 验证:
- 检查分区与挂载:df -h、lsblk、cat /etc/fstab
- 检查引导:sudo efibootmgr(UEFI)、sudo update-grub
- 检查网络/显卡/外设驱动是否正常加载。
- 风险提示
- 操作会覆盖目标盘数据,务必先完整备份;不确定设备名时不要执行 dd。
- 若需保留双系统或多盘,请谨慎处理 /etc/fstab 与 GRUB,避免误挂载与启动项冲突。
相关文章
- winbox管理端口详情 06-10
- Pika开发者模型怎么选择?3个适配场景对比 06-10
- 2026年高人气无广告小说APP排行榜:免费小说软件推荐 06-10
- Pika开发者账号权限怎么设置?3种团队协作场景的配置方法 06-10
- 免费追剧软件推荐:2026年热门高清无广告追剧App排行榜 06-10
- Sora开发者提示词怎么写?3种场景化模板与避坑要点 06-10