ddrescue,gddrescue和dd_rescue有什么区别?
dd
命令通常用于对驱动器或分区进行映像备份 。 但是,如果源驱动器不可靠或失败,它的性能很差。 我读到ddrescue
/ dd_rescue
是一个很好的工具,可用于从坏驱动器恢复映像,因为它会智能地尝试重新读取第一次无法读取的扇区。
但是在Ubuntu存储库中,我看到了两个不同的ddrescue
程序,其中有3个不同但相似的名字出现在不同的地方: ddrescue
, gddrescue
, dd_rescue
。 有什么不同?
令人困惑的是, ddrescue
可以指两个完全独立的程序,Kurt Garloff的dd_rescue和GNU ddrescue 。 两者都有相同的目的,并积极发展。
Garloff的程序dd_rescue
是第一次改进dd
尝试; GNU ddrescue是更新的, 旨在解决dd_rescue
缺点 。
有几个消息来源比dd_rescue
更喜欢GNU ddrescue。 例如,
-
http://lwn.net/Articles/430000/
ddrescue赢了(在我的书中),因为它是一个用C ++编写的高效自包含程序(不是shell脚本kludge),在控制台/终端上产生更清晰的输出,并且(最重要的是) 优雅而智能地处理不可读的块 。
-
http://www.toad.com/gnu/sysadmin/index.html#ddrescue
GNU ddrescue是你最好的朋友。
它是在前两个程序dd_rescue(带底栏)和dd_rhelp之后建模的。 但GNU ddrescue它比两者都要好得多 – 我在同一个驱动器上尝试了所有这三个,并试图使用普通的旧“dd”。
Antonio Diaz Diaz的GNU ddrescue从这些经历中学习。 它结合了dd_rescue读取大块然后换档的能力,dd_rhelp能够记住已经看过磁盘的哪些部分。 它将此信息保存为非常简单的日志文件格式,并使其每30秒更新一次,或者在停止或中断时更新。 它是用C ++编写的,而且体积小而且速度快。
GNU ddrescue的一个优点是它可以更快地备份大多数数据,首先跳过坏块(恢复速度很慢),并且只有在备份好块后再回到它们。 GNU ddrescue的一个缺点是它不支持管道输出,这意味着你不能用gzip
或lzop
压缩输出图像 。
Ubuntu包
不幸的是,Ubuntu存储库中的软件包名称令人困惑; dd_rescue
包装在名称ddrescue
,而ddrescue
在gddrescue
下! 从包装摘要:
-
gddrescue
包:请注意,这是提供/ sbin / ddrescue可执行文件的GNU ddrescue版本。 如果您正在寻找Kurt Garloff的ddrescue版本,请查看ddrescue软件包。
-
ddrescue
包:请注意,这是提供/ bin / dd_rescue可执行文件的Kurt Garloff的dd_rescue版本。 如果您正在搜索GNU ddrescue版本,请查看gddrescue软件包。
名称摘要:
Program name Ubuntu package name Executable name Name in URL GNU ddrescue gddrescue ddrescue ddrescue dd_rescue ddrescue dd_rescue ddrescue