在一些大型或者较为基础的软件进行大版本更新前最好进行全面的系统备份。在 Linux 中可以使用 dd 工具将整个系统路径保存为 img 镜像。使用该镜像可以将磁盘完全恢复。本文将介绍 如何对Linux 系统制作镜像进行备份 。
1 DD 使用
dd 的使用格式为
sudo dd if=FILE_FROM of=FILE_TO
FILE_FROM 为输入文件或设备
FILE_OUT 为输出文件或设备
在做文件备份时,FILE_FROM为备份的磁盘,FILE_TO为生成备份文件。
2 查看磁盘
使用 fdisk 工具查看磁盘位置
sudo fdisk -l
插入磁盘后查看结果变动,或通过挂在磁盘查看内容,判断所要备份的磁盘。
借助 df、du 工具查看磁盘占用情况,找到占用空间异常的文件夹。
sudo df -h
sudo du -h --max-depth=1 FILE_PATH
3 压缩
给一个128G的磁盘制作镜像,即使磁盘没有写满,制作的镜像文件仍为128G。这时压缩就显得非常重要了。
制作镜像时进行压缩:
sudo dd if=FILE_FROM | gzip > FILE_TO
恢复时进行解压:
gzip -dc /disk.img.gz | sudo dd of=/dev/sda
4 显示进度
默认情况下 dd 在工作中没有任何提示,这对大容量磁盘备份非常不友好。通过 watch 命令可以定时显示 dd 工作状态。
新建一个终端,输入
sudo watch -n 5 pkill -USR1 ^dd$
这样,在 dd 执行的终端内将显示工作状态。
同时也可以增加 status=progress 显示进度。