Linux系统迁移全攻略:从备份到新硬盘的无缝切换

1. 为什么需要系统迁移?不仅仅是换硬盘那么简单

最近帮朋友折腾一台老电脑,他的旧硬盘时不时发出“咔咔”的异响,显然是快要“寿终正寝”了。他问我:“能不能直接把旧硬盘里的Linux系统‘搬’到新买的固态硬盘上?我装了好多软件,配置了好久的环境,实在不想从头再来一遍。” 这其实道出了很多Linux用户的痛点:系统用久了,里面装满了开发环境、配置文件、个人数据,还有那些记不清怎么装上去的依赖库。直接重装系统,意味着数小时甚至数天的重复劳动。

所以,系统迁移这个事,绝不仅仅是物理上换一块硬盘。它的核心目标是 “无缝切换”——让你在新硬盘上启动后,感觉就像什么都没发生过一样。桌面壁纸、浏览器书签、终端里的别名配置、甚至没写完的代码文件,都原封不动地出现在它们该在的位置。这对于开发者、运维人员,或者任何已经把Linux当作主力生产环境的朋友来说,价值巨大。

我经历过几次失败的迁移,比如重启后直接进了grub rescue命令行,或者系统起来了但网络挂了,又或者用户权限乱套了。这些坑让我明白,迁移成功的关键在于处理好两个核心:文件系统的完整复制引导配置的精准适配。前者保证你的“家当”一个不少,后者保证新硬盘能正确“认路”并启动。接下来,我就把自己踩过坑、验证过的方法,一步步分享给你,从准备工具到最终收尾,手把手带你完成这次“大搬家”。

2. 迁移前的精密准备:工具盘与硬盘“认亲”

俗话说,磨刀不误砍柴工。系统迁移这活儿,前期准备做得好,能避免后面99%的抓狂时刻。你需要准备两样东西:一个Live USB启动盘和一块已经连接到电脑的新硬盘

Live USB启动盘是你的“手术室”。为什么不能直接在旧系统里操作?因为你要复制的是整个系统盘,包括正在运行的核心文件。这就像没法一边给汽车换发动机一边还开着它跑。Live USB是一个完全独立、运行在内存中的临时Linux环境,它让你能“置身事外”地对新旧两块硬盘进行读写操作。制作方法很简单,用Ventoy、Rufus或者Ubuntu官方工具,把你熟悉的发行版ISO镜像(比如Ubuntu 22.04 LTS)写进U盘就行。我习惯用Ventoy,因为它可以在一个U盘里放多个ISO,非常灵活。

接下来是硬件连接。把新硬盘装进电脑(台式机直接接SATA线和电源,笔记本可能需要硬盘盒)。开机,进入BIOS/UEFI设置,确保启动顺序是U盘优先。然后从U盘启动,选择“试用Ubuntu”(Try Ubuntu)而不安装,这样我们就进入了干净的Live环境。

进入桌面后,第一件事就是打开终端,获取root权限,然后给新旧硬盘“验明正身”:

sudo -i
# 或者先 sudo su, 看个人习惯
fdisk -l

或者用图形化工具更直观:

gnome-disks

fdisk -l 命令会列出所有存储设备。你需要仔细分辨哪块是旧硬盘(通常容量小一点,分区复杂),哪块是新硬盘(可能还没分区,或者只有一个大分区)。关键看设备名,比如 /dev/sda/dev/nvme0n1务必记下来,后面每一步都会用到。我一般会结合容量、分区表类型(MBR/GPT)和现有分区情况来综合判断。这一步要是搞错了,后果可能是灾难性的——把新系统写到旧盘上,数据就全没了。

确认无误后,我们在根目录下创建两个工作目录,作为新旧硬盘的“接入点”:

mkdir /backup
mkdir /restore

假设我的旧硬盘系统根分区在 /dev/sda2,新硬盘准备用的分区是 /dev/nvme0n1p1,那么挂载命令就是:

mount /dev/sda2 /back
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值