Linux Minimal如何进行系统迁移
导读:Linux Minimal 系统迁移实操指南 一、方案总览与准备 迁移方式选型 文件级迁移:用 rsync 或 tar 将系统目录逐文件复制到新盘/新机器,灵活、跨硬件好,适合最小化系统。 镜像级迁移:用 dd/Clonezilla 整...
Linux Minimal 系统迁移实操指南
一、方案总览与准备
- 迁移方式选型
- 文件级迁移:用 rsync 或 tar 将系统目录逐文件复制到新盘/新机器,灵活、跨硬件好,适合最小化系统。
- 镜像级迁移:用 dd/Clonezilla 整盘克隆,速度快、一致性高,但对目标盘容量/布局要求严格。
- 关键准备
- 备份重要数据(如 /home、/etc、数据库),准备可启动的 Live USB(如 Ubuntu LiveCD),确保网络或移动硬盘可用。
- 在旧机确认分区与文件系统:如 lsblk、blkid、df -h;记录根分区 UUID 与 /etc/fstab 挂载项。
- 目标机硬件差异评估:不同 CPU/显卡/存储控制器 可能需要新内核或驱动,首次启动可选 Recovery Mode。
二、方法一 文件级迁移 rsync 或 tar(通用且安全)
- 步骤 1 旧机备份
- rsync 全量备份(推荐,保留属性与权限)
- sudo rsync -aAXhv --exclude={ “/dev/“,”/proc/”,“/sys/“,”/tmp/”,“/run/“,”/mnt/”,"/media/“,”/lost+found"} / /mnt/backup/
- 或 tar 打包(便于网络传输)
- sudo tar -cvpzf /mnt/backup/backup.tar.gz --exclude=/mnt/backup --exclude=/home/*/.cache --exclude=/var/cache --one-file-system /
- rsync 全量备份(推荐,保留属性与权限)
- 步骤 2 传输到目标机
- 移动硬盘挂载复制,或通过 scp 传输压缩包。
- 步骤 3 目标机恢复
- 用 Live USB 启动,分区并格式化新盘(示例为 /dev/sda1 为根分区)
- sudo gparted
- sudo mkfs.ext4 /dev/sda1
- sudo mount /dev/sda1 /mnt
- 恢复数据
- rsync 方式:sudo rsync -aAX /外部硬盘路径/ /mnt/
- tar 方式:sudo tar -xvpzf backup.tar.gz -C /mnt --numeric-owner
- 创建必要目录并 chroot
- sudo mkdir -p /mnt/{ proc,sys,dev,run,tmp}
- sudo mount --bind /dev /mnt/dev
- sudo mount --bind /proc /mnt/proc
- sudo mount --bind /sys /mnt/sys
- sudo chroot /mnt
- 用 Live USB 启动,分区并格式化新盘(示例为 /dev/sda1 为根分区)
- 步骤 4 修复引导与新硬件适配
- 重装 GRUB
- grub-install /dev/sda
- update-grub
- 更新 initramfs(适配新硬件)
- update-initramfs -u
- 修正 /etc/fstab 中的 UUID
- blkid 查看新分区 UUID
- 编辑 /mnt/etc/fstab 替换为实际 UUID
- 退出并重启
- exit
- sudo reboot
- 重装 GRUB
三、方法二 镜像级迁移 dd 或 Clonezilla(整盘克隆)
- 整盘克隆(dd)
- 备份:sudo dd if=/dev/sda of=/mnt/backup/system_backup.img bs=4M status=progress
- 恢复:sudo dd if=/mnt/backup/system_backup.img of=/dev/sda bs=4M status=progress
- 适用:新旧盘容量一致或目标盘更大;目标盘布局需与源盘兼容。
- 分区/磁盘克隆(Clonezilla)
- 制作 Clonezilla Live 启动盘,按向导选择源盘与目标盘(或分区)进行克隆;适合批量与快速迁移。
- 迁移后注意
- 若目标盘容量不同,进入系统后扩展分区与文件系统(如 growpart、resize2fs/xfs_growfs)。
- 仍需检查并更新 /etc/fstab 的 UUID 与 GRUB 引导。
四、最小化系统的引导配置要点
- 仅内核与 initramfs 的最小系统
- 在目标盘创建分区(如 /dev/sdb3),挂载后复制内核与 initramfs
- sudo mount /dev/sdb3 /mnt/tinyos
- sudo cp ~/tinyos/bzImage /mnt/tinyos/
- sudo cp ~/tinyos/initrd.img /mnt/tinyos/
- 在现有 GRUB 中添加自定义菜单(示例)
- 编辑 /etc/grub.d/40_custom
- menuentry “Tiny OS” { set root=‘hd0,msdos3’ linux /bzImage initrd /initrd.img }
- 更新 GRUB:sudo grub-mkconfig -o /boot/grub/grub.cfg
- 编辑 /etc/grub.d/40_custom
- 说明:GRUB 的 root 使用 (hdX,msdosY) 形式,编号与磁盘实际顺序有关,必要时在目标机上调整。
- 在目标盘创建分区(如 /dev/sdb3),挂载后复制内核与 initramfs
五、常见问题与验证
- 启动失败排查
- 进入 Live USB 检查分区与 UUID:blkid;核对 /mnt/etc/fstab 是否匹配。
- chroot 后重装 GRUB:grub-install /dev/sda;update-grub;重建 initramfs:update-initramfs -u。
- 硬件差异导致的问题:首次以 Recovery Mode 启动,按需安装驱动或调整内核参数。
- 网络与网卡
- 清理旧网卡规则:sudo rm /etc/udev/rules.d/70-persistent-net.rules(若存在)。
- 数据一致性验证
- 对比关键目录:diff -r /mnt/backup/ /mnt/restore/(或按业务校验和/快照)。
- 空间建议
- 备份介质可用空间建议 ≥ 已用空间的 1.2 倍,为快照与临时文件留余量。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux Minimal如何进行系统迁移
本文地址: https://pptw.com/jishu/752751.html
