写在硬盘暴废之后

the-importance-of-data-backup.jpg◎ 使用 TestDisk 恢复并备份已损坏的硬盘的文件

2018 年 11 月 12 日下午,踢完球回到宿舍后,发现正在下电影的 qBittorrent 报错:input/output error(只记得这部分)。由于之前貌似遇过一次,也就没在意,觉得重启一下应该就能解决(已连续运行几天的笔记本)。没多想,匆匆瞄一眼后关机洗澡去了。然后,回来开机直接进的 BIOS,而不是熟悉的 GRUB 界面,但一点都不慌,因为这种情况我之前也遇过一次,再重装一次 GRUB 呗😶...

然而,慢慢地,我开始慌了。我先用那个写入了 Kali Linux 的 U 盘,重启后选择 U 盘启动,但还是直接进的 BIOS,几次后依旧。我开始担心是我的硬盘出问题了。虽然这笔记本电脑才用了两年多,但是却被我重装过很多次系统,重建过很多次分区,500 G 也应该用了 80% 多,出问题前是 Linux + Win10 双系统,强行断电过很多次,最长的连续运行不关机记录大概半个月,而且还在不关机的情况下放背包带出去过……

不甘心的我又用另一个写入了微 PE 的 WinPE 的 U 盘尝试,选折 U 盘启动后能进入 PE 的启动界面,这倒是让我一下开心了不少。但是,却进不了 PE,一直卡在进度条页面!只能强行断电,期间又重试了几次,但依旧。开机时,听了听声音,感觉硬盘的声音不对。软件问题自己可以解决,硬件问题怎么解决啊?去电脑店?可他们能解决?叫我换块硬盘,然后装个系统?另外,他们又怎能理解里面的数据对我的重要性?!要让我崩溃了!

好吧,直接崩溃了。盖上电脑,看下时间,才晚上 9 点多,默默爬上床,直接躺下。躺着,双眼呆直地盯着天花板,想着没电脑我还能干啥,一想到我的所有笔记、我的资料、我的博客,难道我要第三次繁琐地修改博客 + 手动将 HTML 转成 Markdown?(第一次第二次)另外,这次的工作量是两倍了啊,因为我现在有两个博客了啊!数据无价,数据无价,数据无价……啊的一声,直接蜷缩进被窝了。戴上耳机,心想着:不想了,睡一觉明天再说——对了,还有我的浏览器的书签,少说也有一千多个了吧!后脑冰凉。

一边听着歌,一边数着我究竟失去了多少,又究竟能重建多少。不知不觉,不知几点,睡去。

#第二天

第二天醒来,想着总能挽救些什么吧,于是起床。吃过午饭,突然想起,我的那个写入 Kali Linux 的 U 盘好像被我在 Windows 下格式化过,以用来存点东西打印。马上借室友的电脑试了一下,Windows 能识别,这就对了。默默用室友电脑下载 Kali Linux 和 Win32 Disk Imager,然后写入 U 盘。不激动也不再悲伤,有的只是冷静和那一丝希望。

另一个室友说我昨天大喊一声还以为我疯了,我说我电脑硬盘坏了,心态崩了。他说:「我的上次也坏了,拿去电脑店那花了一百修好了,硬盘免费换,但装系统要了一百,很坑。」我懒得解释了,他是不会理解这对我意味着什么的。可以说,硬盘一坏就把我的全部一起带走了,这是一种分手的心痛与后悔啊!

好了后,电脑开机选择 U 盘启动顺利进入 Kali Live 系统,看到 GNOME 的界面心里瞬间舒坦了不少。想了想,觉得还是 GRUB 的原因,于是尝试重建 GRUB。打开终端,mount 部分一切顺利,用文件浏览器也看到了久违的 root 目录下的文件,一阵惊喜。但是,chroot 时却提示 input/output error,心中一凉。盲目重复几次 chroot,无效后重启。重启后发现连 mount 也无法完成,会报错。又盲目重启几次,发现有时居然连 Kali Live 系统也进不了了,红色报错 input/output error 并卡着,只得强行断电,想着也许这次硬盘就彻底废了吧,凉凉。

the-importance-of-data-backup-2.jpg◎ 拆解硬盘以恢复数据

只有数据恢复了,心想,可是上哪找专业的呢?想着不管找谁帮忙,还是得先了解了解数据恢复相关的知识。于是手机 Google 了一会 linux data recover,看到一个视频。于是,拆了电脑,拆了硬盘,拨了拨然后不敢动了,因为碟片简直是一块完美的镜子,赶紧装回去,但依然没用。已是深夜,也没心情弄了,睡觉。

躺在床上,拿出手机,打开淘宝买硬盘。浏览一会后,没买机械硬盘而是买了块固态硬盘。睡前,想的唯一一件事就是:后悔第一次尝试时,没有马上将就在眼前的 root 及时备份到移动硬盘。

#第三天

第三天,打开淘宝看是否发货时,又买了个光驱位硬盘托架(感谢淘宝的推荐算法)。打算拆了用不着的光驱,然后把机械硬盘放里面,也许哪一天自己还能用 Linux 的强大命令行恢复里面的数据呢。

下午,在电脑旁开始用手机疯狂 Google(有时直接用电脑 Google,感谢 Kali Live),以 mount 的报错信息以及 dmesg 的错误信息为起点,敲了 N 条命令,换过 N 次关键词,重启过 N 次电脑,强行断电过几次。好在硬盘够坚强,有时还是能顺利进 Kali Live。

功夫不负有心人。最终 Google 到一个视频,视频中的命令行的输出与我之前的尝试非常符合,我对 TestDisk 也有印象,应该是之前 Google 的数据恢复相关的关键词的时候有见过。于是马上尝试,最终成功地看到熟悉的 4 个 Windows 分区和一个 Linux 分区,吸取上次的教训,立即将重要文件备份到移动硬盘!

the-importance-of-data-backup-3.png◎ 开始备份后,我立即评论以对作者表示感谢,作者也很快回应❤

整个备份过程很顺利,一共花了一个多小时,你可能好奇:怎么那么快?可以说,在失去之后能更加清晰地明白自己真正想要的是什么,而我经历了一个不眠之夜的反思。我首先备份了 Linux 下的 root 文件夹(因为我直接用的 root),因为最近一年 Linux 已经成为了我的主系统,我的所有重要文件大多都已经存放在了 Linux 下,而感谢 Linux 的优越性,我只需将家目录备份即可。期间有一次小意外,qBittorrent 报错的那部电影无法复制,会报错,但无太大影响。然后,对于 Windows 的 4 个分区,我依次浏览,只备份了我目前仍感兴趣且有用的文件,对于占了很大空间的各类视频教程,如:单片机、Arduino 等嵌入式相关的,以及等等我过去感兴趣所收集的种种资料,都未复制备份。此外,一年多前我购买移动硬盘后,已经将几百 GB 的文件移动到我的移动硬盘上了。

遗憾的是,Windows 的系统分区缺失了大量目录,一个文件夹无法找回,因为我放在了桌面。还好只有这一个较重要的文件夹在桌面,另外这个文件夹的东西并不多,只是一些我回到 Windows 下用 Ps 时存的一些图片及 .psd 文件。为什么我的桌面只有一个重要的文件夹呢?因为我很久之前有过一次将放在桌面的树莓派折腾笔记误删的经历,很痛苦(本来可以整理下再写几篇树莓派相关的文章),所以在那之后我 Windows 下的桌面一直很干净。在这里也给用 Windows 的读者一个提醒:千万不要为图方便将文件全堆在桌面。

备份完后,非常开心,一部分原因是已备份,但更重要的原因是我终于有机会尝试 Arch Linux 了!极简主义者的最爱!顺便摆脱之前每次更新拖着一大堆包的 Kali,2333... 虽然刚开始学习 Linux 时在 Windows 下的虚拟机中安装过一次,但还是打开浏览器,开始搜索相关安装教程,因为我想详细了解以避免所有的坑,我要一次完美安装好 Arch Linux!搜到这篇文章,看到作者的家目录因放在一块硬盘上而得以存活,感觉值得实践,毕竟数据无价呀!于是又买了一块固态硬盘,打算未来单独作为我的家目录,然后 rsync 备份到另一块固态硬盘上。

#几天后

第四天,lsblk 竟然看不到硬盘了(BIOS 能看到,不排出我的恢复操作的影响),庆幸自己及时备份了。这时,突然想试试 WinPE 能不能进了,好吧这次能进了,不过 DiskGenius 也并没识别出硬盘,呵呵。彻底废了也罢,反正我需要的数据都备份了。

打开浏览器,悠闲地看着 YouTube,争取记住 Arch Linux 安装中的每个细节,就等固态硬盘到手了。

the-importance-of-data-backup-4.jpg◎ 装好两块固态硬盘

第五天,中午拿到光驱位硬盘托架,晚上 10 点多拿到两块硬盘,刚好也是周五。拿到后立即拆电脑,拆光驱,装光驱位硬盘托架,装硬盘。开机 BIOS 顺利识别,装上电脑后睡觉,计划花两天时间配置好 Arch Linux,然后周一恢复日常。

the-importance-of-data-backup-1.jpg◎ BIOS 顺利识别两块固态硬盘

最后,我又买了块西数黑盘 + 硬盘盒,用来存储 + 备份文件,整理好后还会考虑备份到云端,而用了一年多的移动硬盘则单独作为 BT 下载盘使用。


一些可能有用的链接:

  1. Recover partition or repair broken superblocks on Ubuntu | YouTube
  2. File recovery | ArchWiki
  3. DataRecovery | Ubuntu Documentation
  4. LINUX: RECOVER CORRUPTED PARTITION FROM A BAD SUPERBLOCK
  5. How to recover data from a hard drive (stuck heads: buzzing, clicking, etc) | YouTube

希望对遇到类似情况的朋友会有用,最后成功将数据恢复。