上周受到一个需求,上级单位找我们要生产系统一个服务器的系统盘镜像。
因为涉及一些客户资料保密要求,系统盘内有些资料不能未经许可移交其他单位。
经协商确认,这部分资料可以不提供。
因为这个主机是生产系统的一部分,这部分资料运行的服务还要用。
好吧,做个方案把不能移交的部分剔出。
做法如下:
1使用dd命令制作磁盘分区镜像文件
例如: dd if=/dev/sda1 /data/image.raw
2.将文件下载下来备用
3.做一个虚拟机,系统与线上版本一致。虚拟机除了系统盘,需要准备2个数据分区,其中一个容量要与线上备份的系统盘容量一致(这个磁盘后面称为b),另一个数据盘要大于这个数值(这个磁盘后面称为c)。
4.镜像文件上穿到虚拟机,并存储于c盘。此时b盘不挂载。
5.执行dd命令,将镜像内容恢复到b盘
例如:dd if=image.raw of=/dev/sdb1
注:/dev/sdb1代表分区后的b磁盘
6.执行成功后,挂载b盘并进行内容删除
mount /dev/sdb1 /data1
cd /data1
7.删除完毕后,卸载b盘。然后再次制作镜像
umount /d