数据恢复方法--linux ubuntu--ddrescue

本文介绍了如何使用Ubuntu LiveCD启动系统,并详细讲解了利用ddrescue这一免费工具进行数据恢复的方法,包括创建磁盘镜像及后续操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

live cd :可以让Linux系统从光盘启动,用户可以方便的先对系统进行一次体验,觉得好用,再进行 硬盘安装

ubuntu live cd 版:就是可以直接光盘启动的 ubuntu系统 。Mr. Hou先让我下载这种ubuntu live cd, 下载地址:
下载后是一个ubuntu-18.04-desktop-amd64.iso文件(光盘映像文件我已经放在百度网盘computerTool中了),直接在win10中双击打开,会自动映射到一个盘,然后将里面所有的东东拷贝到一个空的FAT32格式化的U盘,然后,插入U盘,启动时通过F12选择从U盘启动,会进入Ubuntu系统(启动时碰到一个选择项,选择try ubntu without install),太棒了!
--------------------------

ddrescure是一款免费的数据恢复工具。
官方文档:

ddrescure的安装方法:
1)我直接用apt安装没有成功:  sudo apt-get install 软件名
2)官方文档提到,可以从网上下载安装文件,按照说明,自己编译,但是报错(可能时我的gcc版本问题)
3)江哥自己build了一个可执行文件发给我了:在163邮箱,2018.05.30收到的邮件里。可以用,运行方法:切换到可执行文件所在目录,然后./ddrescue parame1,parame2,,。

ddrescure(免费的数据恢复工具)的使用方法(网友整理):

step 1: Creating an image from a failing disk

在终端运行: lsblk -o name,label,size,fstype,model  该指令会列出当前电脑上的所有存储设备。这些设备的名字以sd开头,例如sda, sdb,(linux中的硬件设备一般以sd开头,在/dev/目录下面)。

(我的电脑的C盘(ssd)损坏了,启动windows时显示找不到分区表,运行这条指令后FSTYPE栏没有显示任何东西,应该就是找不到分区。)
上图,sda包括两部分sda1和sda2,应该就是在装系统时将一块硬盘分成了2个盘。

记下你想要恢复那个盘的数据,比如sda, 首先需要将sda整个搞成一个image file,然后将其存储到你的一个足够大的移动硬盘中,记下移动硬盘的名字。 注意:不要浏览你想恢复的盘的文件,当你恢复时。
然后,打开一个终端(ctrl+alt+t)cd 指令进入你想保存image file的移动硬盘。
然后,运行如下指令,将会生成image文件和log文件在当前目录下,(注意:运行指令前再查看一次各个盘的名字时sdax,因为重启系统后,名字有可能会变)。

# ddrescue -d -r3 /dev/sda test.img test.logfile
其中,
  • d tells ddrescue to use direct disk access and ignore the kernel’s cache
  • -r3 tells ddrescue to retry bad sectors 3 times before giving up. Note: On a failing drive you may want to eliminate this option the first time so as to not waste time hammering on bad sectors and risking drive failure. You can always use the logfile to go back and retry the bad sectors after you get an image from the first sweep.
  • /dev/sda is the drive we are rescuing…the whole disk. Naturally, if you just wanted a specific partition, you would use something like /dev/sda1 instead.
  • test.img is the name of the image file
  • test.logfile is the name of the logfile. Always use a logfile. This allows you to resume an interrupted image at the point you left off, or to retry bad sectors after an initial pass. Without a logfile, you will have to start over again!

This process will take a good while. It’s not uncommon for a large drive with lots of damage to take days to complete.

step 2: Restoring an image to a new disk & cloning directly to a new disk
.......
step 3: Working with the image files(将step1中生成的image file恢复数据)
.......




<think>嗯,用户想知道如何使用ddrescue进行数据救援和恢复。首先,我需要回忆ddrescue的基本用法。记得ddrescue是一个强大的数据恢复工具,主要用于从损坏的磁盘中复制数据。它的优点是能够处理有坏道的磁盘,跳过错误区域,先复制好的部分,然后再尝试恢复坏道部分。 接下来,用户可能需要安装ddrescue。不同Linux发行版的安装命令可能不同,比如Ubuntu用apt,CentOS用yum。需要给出具体的安装命令,确保用户能正确安装。 然后是基本命令结构。ddrescue的命令参数有点多,需要解释每个参数的作用。比如输入文件(if)、输出文件(of)、日志文件(logfile)这些是必需的。日志文件很重要,因为它记录了恢复进度,方便中断后继续。 可能需要分步骤说明。比如第一次运行快速复制,跳过错误,第二次运行尝试读取坏道。这样用户能清楚流程。还要提醒用户注意输入输出顺序,不能搞反了,否则可能导致数据丢失。 另外,高级选项比如调整块大小、反向读取等,用户可能有不同需求,需要简单提及。示例命令能帮助用户更好地理解如何使用这些参数。 数据恢复后的处理也很重要,比如挂载镜像检查数据完整性,或者使用其他工具进一步修复。这部分需要给出实际的操作建议,比如使用mount命令或testdisk。 注意事项方面,确保用户使用只读方式访问源磁盘,避免进一步损坏。还有强调备份的重要性,以及操作前确认设备路径正确,这些都是关键点,防止用户操作失误。 最后,根据用户提供的引用,需要正确标注引用来源。比如官方网站和推荐的Linux数据恢复工具,这样用户可以参考更多资料。 总结一下,回答需要结构清晰,分步骤讲解安装、基本命令、分阶段恢复、高级选项和恢复后处理,同时强调注意事项和引用来源。确保用户能一步步跟着操作,同时避免常见错误。</think># 如何使用ddrescue进行数据救援和恢复 ### 一、工具安装与准备 1. **安装ddrescue** Ubuntu/Debian系统: ```bash sudo apt-get install gddrescue ``` CentOS/RHEL系统: ```bash sudo yum install ddrescue ``` 注:ddrescue是GNU项目下的开源工具,支持Linux/Unix系统[^1] 2. **准备存储介质** - 源设备(需恢复的磁盘):如`/dev/sdb` - 目标存储设备:需有足够空间的磁盘或镜像文件(如`recovery.img`) ### 二、基本命令结构 核心命令格式: ```bash ddrescue [选项] 输入设备 输出设备/文件 日志文件 ``` 关键参数说明: ``` -f 强制覆盖输出文件 -r <N> 设置遇到错误时的重试次数(默认0) -d 使用直接访问模式(绕过缓存) ``` ### 三、分阶段恢复流程 1. **第一阶段:快速复制** ```bash ddrescue -f -n /dev/sdb recovery.img rescue.log ``` - `-n`:跳过错误区域,优先复制完好数据 - 此阶段完成后检查日志文件: ```bash ddrescue --query rescue.log ``` 2. **第二阶段:尝试恢复坏道** ```bash ddrescue -f -r3 -d /dev/sdb recovery.img rescue.log ``` - `-r3`:对每个坏扇区重试3次 - `-d`:直接磁盘访问提升效率 ### 四、高级使用场景 1. **镜像反向读取** ```bash ddrescue -R /dev/sdb recovery.img rescue.log ``` 从磁盘尾部开始读取,应对特定硬件故障 2. **调整块大小优化速度** ```bash ddrescue -b 4096 /dev/sdb recovery.img rescue.log ``` 设置4KB块大小(默认512B) ### 五、恢复后处理 1. **挂载检查镜像** ```bash mount -o ro,loop recovery.img /mnt/recovery ``` 使用只读模式挂载防止二次损坏 2. **文件系统修复** 配合`fsck`或`testdisk`: ```bash fsck -y recovery.img testdisk recovery.img ``` ### 六、注意事项 1. **操作风险控制** - 始终先通过`lsblk`确认设备路径 - 使用`-f`参数前确保目标文件可覆盖 - 建议通过`udisksctl power-off`安全卸载设备 2. **日志文件重要性** 日志文件记录恢复进度和错误位置: - 允许中断后继续恢复 - 支持多阶段恢复策略优化 3. **硬件故障处理** 当检测到物理损坏时: - 立即停止对源盘的写入操作 - 保持设备在稳定温度环境下 - 可尝试冷冻法(针对机械硬盘磁头卡死)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

First Snowflakes

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值