C)dump
dump为备份工具程序,可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。dump 可以执行类似 tar 的功能。然而,dump 倾向于考虑文件系统而不是个别的文件。下面是引自 dump 手册文件中的内容:“dump 检查 ext2 文件系统上的文件,并确定哪些文件需要备份。这些文件将出于安全保护而被复制到给定的磁盘、磁带或其他存储媒体上……大于输出媒体容量的转储将被划分到多个卷。在大多数媒体上,容量是通过一直写入直至返回一个 end-of-media 标记来确定的。”
dump命令格式:
dump [-cnu][-0123456789][-b <区块大小>][-B <区块数目>][-d <密度>][-f <设备名称>][-h <层级>][-s <磁带长度>][-T <日期>][目录或文件系统] 或 dump [-wW]
主要选项:
-0123456789 备份的层级。
-b<区块大小> 指定区块的大小,单位为KB。
-B<区块数目> 指定备份卷册的区块数目。
-c 修改备份磁带预设的密度与容量。
-d<密度> 设置磁带的密度。单位为BPI。
-f<设备名称> 指定备份设备。
-h<层级> 当备份层级等于或大雨指定的层级时,将不备份用户标示为"nodump"的文件。
-n 当备份工作需要管理员介入时,向所有"operator"群组中的使用者发出通知。
-s<磁带长度> 备份磁带的长度,单位为英尺。
-T<日期> 指定开始备份的时间与日期。
-u 备份完毕后,在/etc/dumpdates中记录备份的文件系统,层级,日期与时间等。
-w 与-W类似,但仅显示需要备份的文件。
-W 显示需要备份的文件及其最后一次备份的层级,时间与日期。
dump命令操作举例:
1.执行一个完全 Linux 备份,它把所有 ext2 和 ext3 文件系统备份到一个 SCSI 磁带设备。
dump 0f /dev/nst0 /boot
dump 0f /dev/nst0 /
说明:在这个例子中,系统中有两个文件系统。一个用于 /boot,另一个用于 / ,这是常见的配置。它们必须在执行备份时单独地引用。 /dev/nst0 引用第一个 SCSI 磁带驱动器,不过是以非重绕的模式引用。这样确保各个卷在磁带上一个接一个地排列。dump 的一个有趣特性是其内置的增量备份功能。在上面的例子中,0 表示 0 级或基本级备份。这是完全系统备份,您要定期执行以保存整个系统。对于后续的备份,您可以使用其他数字(1-9)来代替 0,以改变备份级别。1 级备份会保存自从执行 0 级备份以来更改过的所有文件。2 级备份会保存自从执行 1 级备份以来更改过的所有文件,以此类推。使用 tar 和脚本可以执行相同的功能,但要求脚本创建人员提供一种机制来确定上次备份是何时执行的。dump 具有它自己的机制,即它在执行备份时会输出一个更新文件(/etc/dumpupdates)。这个更新文件将在每次执行 0 级备份时被重设。后续级别的备份会保留它们的标记,直至执行另一次 0 级备份。如果您在执行基于磁带的备份,dump 会自动跟踪多个卷。
2. 配合使用 find 命令复制整个目录
$ find . |cpio -ov >archive.cpio