本次操作所使用的系统
Proxmox VE(pve) 7.1
迁移前提: 目标硬盘需要比原硬盘容量大
为何不使用dd命令直接迁移
因为硬盘受损或读取错误时,使用dd会报错,导致写入目标硬盘空数据,而使用ddrescue能解决这个问题 还有实时进度
错误描述
$ sudo dd if=/dev/sdc1 of=/dev/sda1
dd: reading `/dev/sdc1': Input/output error
11233976+0 records in
11233976+0 records out
5751795712 bytes (5.8 GB) copied, 187.731 s, 30.6 MB/s
安装ddrescue
apt-get install gddrescue
首先使用 lsblk 命令看下所有硬盘列表(type=disk) 找到两个硬盘的名称
ddrescue -f -n [源硬盘] [目标硬盘] /root/rescue.log
例如下面把 硬盘A拷贝到硬盘B
ddrescue -f -n /dev/sda /dev/sdb /root/rescue.log
执行命令前要检查命令是否正确,否则参数写反会导致数据被清除
下图是执行命令后的进度界面