前言
一台Ubuntu机器无法启动,启动界面报错error: failure reading sector 0x1910900 from hd2
。通过硬盘检测工具发现,作为系统盘的固态硬盘响应特别缓慢,这应该是导致Ubuntu无法启动的原因。另外,发现作为数据盘的机械硬盘存在许多坏道,也需要更换。同时,该Ubuntu拥有许多服务,重装系统将会耗费相当多的精力,所以得想办法克隆整个硬盘。基于Linux下“一切皆文件”的思想,使得备份与恢复Linux系统有了操作空间,但是在实际执行过程中发现还是有很多需要注意的地方,故记录于此。
方案对比
Clonezilla:第三方工具,需要刻录启动U盘,但是我刻了它的启动盘却无法启动,不知为何,放弃了。
Systemback:网上看到文章写的挺简单,但是操作了一番都发现无法安装,最后发现其停更了,所以不支持Ubuntu 18.04。
ddrescue:系统原生硬盘救援工具,实际使用还不错,我是使用的CI接口,网上看有提供UI应该会更好用。新的硬盘比原来硬盘大,用ddrescue会直接将比原来硬盘多出来的空间闲置,可以使用GParted工具扩容分区即可。
克隆硬盘
将新旧硬盘均插入同一台电脑;
使用Ubuntu Desktop启动盘启动该电脑并选择试用Ubuntu,以此进入LiveCD模式;
参考Ubuntu 软件仓库镜像使用帮助切换清华源,务必切换源,否则无法安装ddrescue;
安装ddrescue:
sudo apt install gddrescue
使用
sudo fdisk -l
查看硬盘信息,通过硬盘分区情况,或者也可以进入文件管理查看有无文件来区分新旧硬盘,假设旧硬盘为/dev/sda
,新硬盘为/dev/sdb
;克隆硬盘:
sudo ddrescue -v --force /dev/sda /dev/sdb
。
扩容分区
进入主菜单,搜索GParted即可找到软件,图形界面操作,比较简单,不赘述。