Linux 中的 dump 命令为备份工具程序,可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。由于 CentOS 6.x 系统默认是没有安装此命令的,因此需要我们手动安装 dump 命令。
dump 命令使用 “备份级别” 来实现增量备份,它支持 0 ~ 9 共 10 个备份级别。其中,0 级别指的就是完全备份,1~9 级别都是增量备份级别。
备份文件系统。
dump [options] destFile srcFile
参数 | 描述 |
---|---|
options | dump 命令使用的参数。 |
destFile | 备份后的目标文件。 |
srcFile | 需要备份的源文件。 |
选项 | 含义 |
---|---|
-0123456789 | 备份的层级。 |
-b<区块大小> | 指定区块的大小,单位为 KB。 |
-B<区块数目> | 指定备份卷册的区块数目。 |
-c | 修改备份磁带预设的密度与容量。 |
-d<密度> | 设置磁带的密度,单位为 BPI。 |
-f<设备名称> | 指定备份设备。 |
-h<层级> | 当备份层级等于或大雨指定的层级时,将不备份用户标示为 “nodump” 的文件。 |
-n | 当备份工作需要管理员介入时,向所有 “operator” 群组中的使用者发出通知。 |
-s<磁带长度> | 备份磁带的长度,单位为英尺。 |
-T<日期> | 指定开始备份的时间与日期。 |
-u | 备份完毕后,在 /etc/dumpdates 中记录备份的文件系统,层级,日期与时间等。 |
-w | 与 -W 类似,但仅显示需要备份的文件。 |
-W | 显示需要备份的文件及其最后一次备份的层级,时间与日期。 |
当我们备份一份数据时,第一次备份应该使用 0 级别,会把所有数据完全备份一次;第二次备份就可以使用 1 级别了,它会和 0 级别进行比较,把 0 级别备份之后变化的数据进行备份;第三次备份使用 2 级别,2 级别会和 1 级别进行比较,把 1 级别备份之后变化的数据进行备份,以此类推。
需要注意的是,只有在备份整个分区或整块硬盘时,才能支持 1~9 的增量备份级别;如果只是备份某个文件或不是分区的目录,则只能使用 0 级别进行完全备份。
dump 可以执行类似 tar 的功能。然而,dump 倾向于考虑文件系统而不是个别的文件。配合 dump 的程序是 restore ,它用于从转储映像还原文件。
restore 命令执行转储的逆向功能。可以首先还原文件系统的完全备份,而后续的增量备份可以在已还原的完全备份之上覆盖。可以从完全或部分备份中还原单独的文件或者目录树。
dump 和 restore 都能在网络上运行,因此您可以通过远程设备进行备份或还原。 dump 和 restore 使用磁带驱动器和提供广泛选项的文件设备。然而,两者都仅限用于 ext2 和 ext3 文件系统。如果使用的是 JFS、Reiser 或者其他文件系统,您将需要其他的实用工具,比如 tar。
dump 的一个有趣特性是其内置的增量备份功能。
实例 | 描述 |
---|---|
dump -0uj -f /root/boot.bak.bz2 /boot/ | 备份 boot 分区。 |
dump -0j -f /root/etc.dump.bz2 /etc/ | 备份目录。 |
CentOS 6.x 系统默认是没有安装 dump 命令的,我们直接输入 dump,检查 dump命令是否已经安装,具体命令如下:
dump
执行完毕后,如下图所示:
我们看到,提示我们没有 dump 命令,因此需要我们手动通过 yum 安装 dump 命令,具体命令如下:
yum install dump
执行完毕后,如下图所示:
我们看到,正在安装 dump 命令,安装完毕后,如下图所示:
由此我们看到,dump 命令已经安装完毕。
dump -0j -f /root/etc.dump.bz2 /etc/
我们使用 dump 命令,备份整个 etc 目录,将其备份到 /root 目录下,具体命令如下:
dump -0j -f /root/etc.dump.bz2 /etc/
运行后,终端输出如下:
我们看到,我们使用了 dump 命令,备份了整个 etc 目录。
Linux 中的 dump 命令为备份工具程序,可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。由于 CentOS 6.x 系统默认是没有安装此命令的,因此需要我们手动安装 dump 命令。
dump 命令使用 “备份级别” 来实现增量备份,它支持 0 ~ 9 共 10 个备份级别。其中,0 级别指的就是完全备份,1~9 级别都是增量备份级别。