我的硬盘 (seagate 1Tb) 出现故障,扇区损坏。我想用 ddrescue 制作它的映像。问题是我没有 1TB 的硬盘来存放映像。我要恢复的文件只有 90GB。那么,我可以缩小硬盘并在一个分区上使用 ddrescue,这样生成的映像最大为 100GB 吗?
答案1
驱动器是否仍然出现故障、情况变得更糟、发出奇怪的声音等?
如果不是,并且它仍然可读(除了单个坏扇区)和可安装,为什么不快速将其安装为只读/ ro
(不启动它)并复制所需的文件。或者,如果它无法安装,请使用 testdisk 之类的程序,它可能只能复制几个文件。或者也许是 photorec,尽管它会尝试读取整个设备,但只保存找到的文件。
如果驱动器确实听起来很糟糕,并且到处都有错误,你真的应该得到另一个足够大的备份驱动器来存储图像,请参阅为什么无法通过 ddrescue 动态压缩图像?如果您想要整个驱动器,您只需要乞求/借用/购买一个足够大的驱动器,即使只是几个小时。您可以在 ddrescue 完成创建后压缩映像,但请注意不允许即时访问的压缩,如 gz、xz 等... squashfs 可能会起作用。
或者也许您很幸运,您想要备份的单个分区足够小,可以容纳您的存储空间,毕竟它不能大于整个驱动器。
答案2
也许您可以通过管道传输到 gzip 或其他压缩来动态压缩图像?https://serverfault.com/questions/52260/compressing-dd-backup-on-the-fly
就像是
sudo bash -c "dd if=/dev/sda2 | gzip > /media/disk/sda2-backup-11december18.gz"