您的位置:首页 > 其它

dump、cpio、tar、dd四种备份工具比较

2013-10-12 20:05 190 查看
dump

dump可执行文件系统增量备份的存储操作,dump 可将目录或整个文件系统备份至指定的设备,或备份成一个大文件。dump 可以执行类似 tar 的功能。然而,dump 倾向于考虑文件系统而不是个别的文件。

配合 dump 的程序是
restore ,它用于从转储映像还原文件。

restore 命令执行转储的逆向功能。可以首先还原文件系统的完全备份,而后续的增量备份可以在已还原的完全备份之上覆盖。可以从完全或部分备份中还原单独的文件或者目录树。

dump 和 restore 都能在网络上进行备份,因此您可以通过远程设备进行备份或还原。 dump 和 restore 使用磁带驱动器和提供广泛选项的文件设备。然而,两者都仅限用于 ext2 和 ext3 文件系统。如果使用的是
JFS、Reiser 或者其他文件系统,您将需要其他的实用工具,比如 tar 。

cpio

如果没有 dump 指令或者 dump 版本不符所需, 则 cpio 是您的下一个好选择。cpio 比其它备份工具存在的时间久,且具有一些其它工具所缺乏的重要特性。 

dump 有而 cpio 无:

◆无需使用find命令搭配;

◆备份完后不改变资料的atime及ctime;

◆以互动方式执行资料恢复,如restore的选项-i。

cpio 是一个非常有用的备份工具,它最大的不同处,是可以备份从标准输入( stdin )而来的的档案。 目前有些新版的 tar 支持 从标准输入来的档案备份,但大部份尚未有此功能。

为什么cpio较不常被使用?

cpio有时支持 I 及 O;有的版本则无。如果将 cpio 每种版本的选项累计,则有近 40 个选项, 甚至有些使用同一字母的参数,在不同版本的 Unix 有不同的意义。 但您只要使用在大部份平台皆标准的选项,那么,cpio 几乎与 tar 一般简单好用。

tar

如果需要定期备份整个作业系统,dump 可能是最好的选择。其次是 cpio, 因为它与 find 搭配执行变动备份( incremental backup )。如果您像大部份的人一般,只为了将资料做一次完整的备份,那么就不需要定期或变动备份等功能。 例如,您可能希望快速地备份使用者 /home 目录。您可能想要删除使用者的一大群目录与档案,
但唯一可让使用者接受的备份方式,是将其资料全部写入 磁带或光盘内储存并交给他。 因此您不在乎 atime,不需定期做变动备份, 只希望将一堆资料放到备份媒体上,而且也希望他人可以很容易地将资料从备份中取出, 在这种情况下,tar 会是最佳选择,且tar支持gzip与bzip2的压缩。
cpio 有而大部份的 tar 无( GNU tar 没有这些限制),例如:
◆可以备份来自stdin的档案;

◆当备份完成时重新设定档案的atime,尽管这会改变其ctime。

dd

大部份的人不常使用 dd 来作备份, 它是一个相当低级的指令, 可将资讯内涵的每个比特( bit )原封不动地从一个地方搬到另一个地方, 它不管也无需知道备份资料的结构。dd可备份分区或磁盘或其中部分,因为dd可读取磁盘的扇区表面的数据,因此不同于
dump,tar, 及 cpio, 它不可以拷贝一群文件至储存媒体, 只可以拷贝一个文件或一个文件的部份,甚至可以在资料修改中途将资料从标准输入(
stdin )拷贝至标准输出(stdout )。即使 dd 可以拷贝单一档案,但其对文件或文件内容是一无所知的, 它纯粹只是从一个地方搬运文件的比特内容至另一个地方而已。

dd 是一个文件系统复制实用工具,它产生文件系统的二进制副本。dd 还可用于产生硬盘驱动器的映像,类似于使用诸如 Symantec 的 Ghost 这样的产品。然而,dd 不是基于文件的,因此您只能使用它来将数据还原到完全相同的硬盘驱动器分区。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: