恢复错删的文件
这是在第七个Leap year的2月29日(暴露了-_-|||
),记录下的逗比事件。
起因:我写了个程序自动重命名下载的图片,改着改着,程序出了bug,把所有图片从图片文件夹/media/disk/picure
都移动到了当前脚本的工作目录/root/bin
。
我以为原图片文件夹还有这些图片,就把当前工作目录下的都删除了。 -_-b
经过:从昨天晚上到今天,抽时间找了不同的软件和方法来恢复数据。
1.在linux下采用 testdisk
中的photorec
来恢复图片文件。
如果用终端版的不适应,可以安装GUI dnf install qphotorec
。
具体步骤可以参考这里。
在使用时请选择只查找没有文件的区域(Free: from the unallocated space only),否则会花费很长时间,给你找出一堆chrome隐藏的网络图片。
我一共测试了在三种地址查找,1. 在/root/硬盘里搜索全部图片(70G空间),2. 在/root/硬盘里搜索没有文件的区域(小于70G空间),3. 在/media/disk/里搜索没有文件的区域(500G空间)。
在三种找法中,第一种最满。所以千万不要搜索全部空间。
找出的图片有几个问题:首先不会按照原来的名字来命名,其次图片文件信息也会丢失,最重要的是所有文件按照在磁盘的位置(就是从0到最大容量的数字)来存放,查找起想要的文件非常不方便。
2.百度经验里的debugfs修复
该文档应该有错。在dd if= of=
这个步骤。出来的结果是无法识别的。
绝对不建议使用,除非很熟悉dd
命令。
3.EasyRecovery
只测试了恢复/meida/disk
里的文件。绝赞好评!
软件下载时请不要从中文网站下载,搜索时发现有两个EasyRecovery网址,这里面肯定有李鬼。
直接从英文网站下载,最好找个带keygen的。免费版我使用不成功。
用这个软件复原的图片包含原名字,在原文件夹的位置结构,含有图片信息!!!
结果:以后不要用rm
命令了,用trash-put
来代替,在.bashrc
里alias rm='trash-put'
Trash-put 对于移动硬盘和windows系统下的盘里的删除数据,无法恢复到原有位置,只会在移动硬盘或者windows系统硬盘的根目录建立.Trash
文件夹,所恢复的文件会在该文件夹的路径下,这一点还是不太好用。20160427