在Linux下工作的很多人都有过这样的尴尬经历,辛辛苦苦写了很久的代码或者文档,一个不小心就rm掉了,命令行删除一般不会进入回收站,这时候是不是想死的心都有了。

先说说活生生的悲剧是怎么发生的。

先是认认真真写了一个下午脚本setup.sh,在coreV1.1中有一个旧版本但是同名的setup.sh,于是就想删了旧版本的,输入命令:rm / coreV1.1/setup.sh ,结果多输入一个空格。于是悲剧就发生了。旧版本的没删除,当前目录下写了一个下午的setup.sh被彻底删除了!

不过也不要太着急,因为不管是Windows还是Linux,文件的删除只是系统回收了该文件的软件资源,但是在物理上文件的内容仍然保留在存储介质之上,直到下一次被覆盖,格式化了也可以被找回来,除非低格(直接擦除磁盘)了那就真没办法了,但是一般日志式的系统更容易恢复,我的Fedora是Ext4的系统,很容易恢复。

下面就是找回这个setup.sh的过程。

1.安装extundelete

先yum search extundelete 查找这个软件包;

再yum insta extundelete.i686安装。

2. 找到被rm的文件

(0)查看文件系统类型和分区

文件系统类型为ext4,extundelete支持的类型为ext3/ext4 ,

用户文件系统在/dev/mapper/fedora-root根文件系统中,被rm的文件也在这里。

(1) 执行:extundelete --inode 2 /dev/mapper/fedora-root

--inode 2为查找当前目录下的文件和被rm掉的文件。先从根目录查起。

要恢复的setup.sh就在home目录下。

(3) 执行:extundelete --inode 393217 /dev/mapper/fedora-root

home的节点号为393217,--inode 393217就是查看home目录下的文件及被删除的文件。

依次下去,知道找到setup.sh的节点号。

(4) 执行:extundelete --restore-inode 542480 /dev/mapper/fedora-root

setup.sh的节点号为542480,--restore-inode 542480就是恢复这个节点文件。

(5)查看恢复结果

在原来setup.sh的目录下产生了一个RECOVERED_FILES目录,恢复的文件就在这个目录中。

file. 542480就是要恢复的setup.sh。

下面是找回setup.sh全部过程的截图:

如果觉得麻烦,为了以后方便,也可以将以上步骤封装成一个脚本,这样下一次就可以直接执行脚本就行了,我就不封了。

Linux命令行删除文件恢复相关推荐

  1. linux删除的文件有回收站么,Linux命令行删除文件到回收站

    先说方法,原理后面分析. 由于我使用的是Ubuntu14,这里以该系统为主,其他系统略有区别. 可以新加别名del,用于删除文件. alias del='mv -t ~/.local/share/Tr ...

  2. 命令行删除文件夹及文件夹下文件

    如果文件夹下存储的文件很多(几个G或者几个T的数据),右键删除速度很慢,所以需要用到命令行删除,速度相对快很多.我整理了两个系统的删除方法,以此记录方便备查. Win10 cmd命令行删除文件夹及文件 ...

  3. windows 命令行删除文件和文件夹

    学习内容: windows 命令行删除文件和文件夹 假设删除d盘下的123文件夹 del/s/q d:\123*.* ----(用于删除文件夹下的子文件) rd/s/q d:\123 ----(用于删 ...

  4. android cmd命令行删除文件夹,文件

    android cmd命令行删除文件夹,文件 adb root adb remount adb shell su cd system/sd/data //进入系统内指定文件夹 ls //列表显示当前文 ...

  5. Linux命令行下载文件到本地

    一直在用ftp工具进行下载,但是很麻烦.现使用Linux命令行的方式下载文件到本地 方案: yum install lrzsz // 下载 上传下载工具sz和rz 安装完之后,输入命令 sz 文件名 ...

  6. Git入门之命令行删除文件及上传大文件至Github(二)

    自2013年开始,作者的代码基本是分享到CSDN下载区,最早设置均是免费的,但随着下载量增加,分数自动增长.为了更好地分享开源代码及相关工具,赶上时代潮流,作者后续会将代码分享至Github和CSDN ...

  7. Windows命令行删除文件和文件夹

    1.rd /? 命令帮助 删除文件夹(空) rd /S 文件夹路径 2.rmdir /Q /S 目录 删除文件夹(非空) /S 除目录本身外,还将删除指定目录下的所有子目录 /Q 安静模式,带 /S ...

  8. linux 删除文件夹中所有文件命令行,Linux中使用命令行删除文件夹

    使用rm -rf 目录名字 命令便可html -r 就是向下递归,无论有多少级目录,一并删除 -f 就是直接强行删除,不做任何提示的意思linux eg:post 删除文件夹实例:rm -rf /va ...

  9. linux 命令行删除分区,如何在 Linux 中删除分区

    管理分区是一件严肃的事情,尤其是当你不得不删除它们时.我发现自己经常这样做,特别是在使用 U 盘作为实时磁盘和 Linux 安装程序之后,因为它们创建了几个我以后不需要的分区. 在本教程中,我将告诉你 ...

  10. 秒杀迅雷的linux命令行下载文件以及常用工具:wget、Prozilla、MyGet、Linuxdown、Curl、Axel

    本文介绍常用的几种命令行式的下载工具:wget.Prozilla.MyGet.Linuxdown.Curl.Axel 下面就为大家详细介绍一下这些工具 1. Wget Wget是一个十分常用命令行下载 ...

最新文章

  1. java io 缓冲流_记忆系列-Java IO的缓存输入输出流(高效流)
  2. 后面一次上传对linux kernel 的分析
  3. 解决TensorBoard训练集和测试集指标只能分开显示的问题(基于Keras)
  4. Oracle:select 或 inactive 会话语句产生锁?
  5. 从默认的 _id 字段中,取得时间信息
  6. DDD理论学习系列(5)-- 统一建模语言
  7. 声音模仿_学唱歌 |唱歌声音难听的解决方法有哪些?这里给你总结总结!
  8. MyCat分布式数据库集群架构工作笔记0006---Mycat启动
  9. 【白皮书】2020在线教育用户增长闭环白皮书.pdf(附下载链接)
  10. 从上千篇投稿脱颖而出,这5篇大数据论文凭什么征服KDD评委?
  11. JAVA-初步认识-第九章-接口-定义interface
  12. android 屏幕分辨率 更改
  13. 使用zlog实现日志记录
  14. Java 项目中使用 TongLink/Q 实现消息队列传输
  15. Linux系统搭建房卡游戏教程,2020年H5电玩房卡游戏源码合集运营级:超强后台控制+部署教程文档...
  16. Teamcenter Item
  17. 效率是绳,质量是命!——浅析如何运用UML来提高手游团队的绳命质量
  18. 迅雷11下载报错:下载引擎未启动
  19. 宏碁暗影骑士3 win10 和 ubuntu18.04双系统安装
  20. 支付宝沙箱开启以及配置

热门文章

  1. GCC、GNU到底啥意思?
  2. linux gnu grub,怎样取消GNU GRUB
  3. C语言:一元二次方程求解
  4. python下将图片合成pdf
  5. 数字逻辑课程设计--数字钟的设计(quartus ii)(内附源代码和实习报告以及6篇实习日志)
  6. 技术系统进化法则包括_TRIZ理论八大技术系统进化法则.doc
  7. 速卖通尺寸表 html源码,最新!速卖通尺码表功能上线
  8. 嗖嗖移动大厅之使用场景类
  9. Python 玩转数据 19 - 数据操作 正则表达式 Regular Expressions 搜索模式匹配
  10. EDP to LVDS转换设计电路|EDP to LVDS转接板电路|Capstone/CS5211芯片电路原理图参考