数据丢失带来的损失是相当昂贵的. 关键数据的丢失会对各种规模的企业带来影响. 有几种方法来备份 Linux 系统, 包括 rsync 的和 rsnapshot 等. 本文提供有关使用 dd 命令备份 Linux 系统的 6 个实例. dd 是一个功能强大的 UNIX 工具, 由 Linux 内核的 makefile 进行引导映像, 它也可以用来复制数据.
例 1: 备份整个硬盘使用 dd 命令备份整个硬盘. 在这个例子中, 源硬盘的设备名为 / dev/ sda 的, 目标硬盘的设备名是 / dev/ sdb. 执行 dd 命令, 备份整个硬盘 / dev/sha 到同一系统的另一个硬盘 / dev/sdb. 如下所示:
[root@linuxprobe ~]# dd if=/dev/sda of=/dev/sdb- "if" 后跟输入文件,"of" 后跟输出文件.- 上述命令在执行过程中如有任何错误都会失败. 但若加入参数 "CONV= NOERROR", 则即使执行过程中有错误, 它也会继续复制.- 输入文件和输出文件在执行前必须检查再三, 如果两者顺序颠倒, 你可能会损失所有数据.
在备份整个硬盘时, 我们也可以加入 sync 参数来同步 I/O. 如下所示:
[root@linuxprobe ~]# dd if=/dev/sda of=/dev/sdb conv=noerror,sync
例 2: 创建硬盘的映像使用 dd 命令为硬盘创建一个图像文件并将其保存在其他存储设备. 这种备份方式有很多好处: 一是易于使用, 二是这种备份方法的速度快于其他方法的备份, 也能让你更快速的恢复数据. 创建一个硬盘 / dev/sda 的 image 命令:
[root@linuxprobe ~]# dd if=/dev/sda of=~/sdadisk.img
例 3: 恢复硬盘映像文件恢复数据使用 dd 命令将硬盘的映像文件恢复数据到另一个硬盘. 如下所示:
[root@linuxprobe ~]# dd if=sdadisk.img of=/dev/sdb
Sdadisk.img 文件是 / dev/sda 的映像, 所以上面的命令将恢复 / dev/had 的映像到 / dev/sdb
例 4: 创建软盘映像使用 dd 命令创建软盘的映像备份. 输入文件填写软盘机设备的位置, 输出文件写软盘映像文件的名称, 如下所示.
[root@linuxprobe ~]# dd if=/dev/fd0 of=myfloppy.img
例 5: 备份分区使用 dd 命令备份硬盘分区. 输入文件填写分区的设备名称, 输出文件填写你指定的目标路径或映像文件. dd 命令示例所示如下:
[root@linuxprobe ~]# dd if=/dev/sda1 of=~/partition1.img
例 6: 光盘备份 dd 命令允许我们创建源文件的 iso 文件, 所以我们可以插入 CD, 输入 dd 命令来创建一个 CD 的 iso 文件内容.
[root@linuxprobe ~]# dd if=/dev/cdrom of=tgsservice.iso bs=2048
dd 命令从输入中读取一个块并将其写入输出文件. 你可以指定输入和输出文件的块大小. 参数 "bs" 指定输入和输出文件的块大小. 上面的 dd 命令使用的块大小为 2048 bytes. 注意: 如果光盘是自动挂载的, 在使用 dd 命令创建 iso 映像之前最好 umount 掉以避免造成对 CD ROM 不必要的访问.
来源: http://stor.51cto.com/art/201808/580360.htm