摘要.
神奇的 ghost 的原理是什么呢?不就是数据复制吗?Linux 下的 dd 命令不就是最强大的数据复制工具!
1.. 在我的 6.5 系统装在 120G 的 ssd 上,.gxbak 目录上挂了个 md126 的 3.5T 的 raid5 的数据盘,把系统盘,也就实根下的 120G 备份到 3,5T 下面
df -h
lsblk
备份系统盘到 / gxbak 下面,压缩和不压缩的两个 img 文件
dd bs=512 count 250068999 if=/dev/sda | gzip -6 > /gxbak/ghost.img.gz
dd bs=512 count 250068999 if=/dev/sda of/=/gxbak/ghost.img
2 查看
可以查看所有磁盘上的所有分区的尺寸和布局情况。
-u,让 start 和 end 中数字的单位是 512 字节,也就是一个 sector 扇区的大小
- 镜像的命令格式说明
执行:
# dd bs=512 count=[fdisk 命令中最大的 end 数 + 1] if=/dev/sda of=/ghost.img
这样,就可以把我需要的分区数据全部 copy 到 ghost.img 文件中。镜像制作完成了!
然后,我们就可以把 U 盘插到其他系统上,用 U 盘启动,进入 centos7LiveCD,打开命令行,
执行如下命令:
dd if=/ghost.img of=/dev/sda
完成后,拔掉 U 盘,启动计算机,就可以看到我们的 Linux 系统已经安装完毕了!
注意:
不要直接在计算机上用本地磁盘启动系统后执行 dd 命令生成本地磁盘的镜像。而应该使用 livecd 启动计算机。
因此计算机运行时会对系统盘产生大量写操作。 直接对运行中的系统盘生成的镜像,在恢复到其他硬盘上时,很可能会无法启动!
如果备份文件太大了,想把备份放到 U 盘里,要使用 dd 和 gzip 生成压缩的镜像文件,可以执行命令:
# dd bs=512 count=[fdisk 命令中最大的 end 数 + 1] if=/dev/sda | gzip -6 > /ghost.img.gz
还原时,可以执行下列命令:
# gzip -dc /ghost.img.gz.gz | dd of=/dev/sda
gzip 参数:
-c 表示输出到 stdout
-d 表示解压缩
-1 表示最快压缩
-9 表示最好压缩
默认使用的是 - 6 压缩级别。
4. 不压缩备份系统盘到 / gxbak 下面
dd bs=512 count 250068999 if=/dev/sda of/=/gxbak/ghost.img
dd 的参数 250068999( 只有比上面的 加 1,就可以了,这里加了个 8,所有尾数是 9 了)
5. 压缩备份系统盘到 / gxbak 下面
dd bs=512 count 250068999 if=/dev/sda | gzip -6 > /gxbak/ghost.img.gz
6. 下载 centos7LiveCD 镜像,使用软碟通制作 U 盘启动盘
centos7liveCD 下载地址:http://mirrors.163.com/centos/7/isos/x86_64/
7. 重启电脑,按 F11 选择 U 盘启动,启动进入界面后 su 到 root 账户使用 lsblk 查看所有磁盘
su root
8. 创建挂载目录把 3.5T,和 sda 挂载到 LIVE 系统下
mkdir /mnt/da
mkdir /mnt/db
9. 挂载成功
mount /dev/md126 /mnt/db
mount /dev/sda /mnt/da
10. 进入挂载目录查看之前备份的镜像大小,压缩的 1.9G,没压缩的 120G,
cd /mnt/db
ls
11. 对压缩的镜像 ghost.img.gz 进行还原,大约 1.5 小时重启,后恢系统复正常
gzip -dc /mnt/db/ghost.img.gz | dd of=/dev/sda
12.. 没压缩的镜像 ghost.img 进行还原 ,大约 2 小时,后黑屏,重启后系统恢复正常了。
dd if=/mnt/db/ghost.img of=/dev/sda
13. 查看 dd 备份的进度
killall -s SIGUSR1 dd
14. 把 1.9G 的备份放到 U 盘里很方便的
参考教程 https://www.cnblogs.com/wanghuaijun/p/5531512.html https://blog.csdn.net/xtggbmdk/article/details/82706380?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param