ubuntu

ubuntu文件系统迁移方法

小樊
44
2025-10-29 02:53:54
栏目: 智能运维

Ubuntu文件系统迁移常见方法及步骤

1. rsync(文件级同步,推荐用于同版本迁移)

rsync是Ubuntu系统迁移的高效工具,可保留文件权限、时间戳、符号链接等属性,适用于本地或远程迁移。
本地迁移示例

sudo rsync -avzh --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /source/directory/ /destination/directory/

参数说明

sudo rsync -avz -e ssh user@remote_host:/source/path /local/destination

适用场景:新旧电脑系统版本一致(如Ubuntu 22.04→22.04),且需增量同步数据。

2. Clonezilla(完整系统克隆,适合跨硬件迁移)

Clonezilla是开源磁盘克隆工具,可创建系统镜像并恢复到新硬盘,支持增量备份和加密。
操作步骤
① 下载Clonezilla ISO,用Rufus制作启动U盘;
② 从U盘启动,选择“device-image”模式(镜像→设备);
③ 选择源硬盘(如/dev/sda)和目标硬盘(如/dev/sdb),确认分区大小匹配;
④ 开始克隆(进度条显示完成);
⑤ 重启电脑,从目标硬盘启动。
注意事项

3. tar打包恢复(系统级备份,适合全盘迁移)

通过tar打包系统核心目录(/home、/etc、/var),可迁移个人配置和软件环境。
备份步骤

sudo tar -czvpf ubuntu_backup.tar.gz --exclude={'/proc','/sys','/dev','/run','/tmp'} /home /etc /var

恢复步骤
① 新系统安装完成后,挂载目标分区(如/dev/sda1挂载至/mnt/newroot);
② 解压备份文件:

sudo tar -xzvpf ubuntu_backup.tar.gz -C /mnt/newroot

适用场景:跨版本迁移(如Ubuntu 20.04→22.04),需手动恢复软件包和引导。

4. dd命令(低级磁盘复制,适合完整镜像迁移)

dd命令按扇区复制整个磁盘或分区,生成与源磁盘完全一致的镜像,适合硬件完全一致的场景。
操作示例

sudo dd if=/dev/source_disk of=/dev/target_disk bs=4M status=progress conv=noerror,sync

参数说明

5. LVM迁移(逻辑卷管理,适合动态扩展存储)

若系统使用LVM(逻辑卷管理),可灵活迁移数据到新物理磁盘,无需重新分区。
操作步骤
① 添加新磁盘并创建物理卷:

sudo pvcreate /dev/new_disk

② 扩展卷组(VG):

sudo vgextend volume_group_name /dev/new_disk

③ 扩展逻辑卷(LV):

sudo lvextend -l +100%FREE /dev/volume_group_name/logical_volume

④ 调整文件系统大小:

sudo resize2fs /dev/volume_group_name/logical_volume  # ext4文件系统

适用场景:系统使用LVM管理磁盘,需扩展存储或更换物理磁盘。

迁移后关键设置

无论使用哪种方法,迁移后需完成以下步骤:
修复GRUB引导(双系统或更换硬盘时):

sudo update-grub
sudo grub-install /dev/target_disk  # 如/dev/sdb

修改分区UUID(dd克隆后必做):

sudo blkid  # 查看新分区UUID
sudo nano /mnt/newroot/etc/fstab  # 替换旧UUID为新UUID

更新硬件驱动(硬件变更时):

sudo ubuntu-drivers autoinstall

验证系统完整性

df -h  # 检查挂载点
systemctl list-units --type=service  # 检查服务状态

0
看了该问题的人还看了