Linux下命令rm -rf的补救方法

Linux下命令rm -rf的补救方法

在linux下rm -rf 是一个很可怕的命令,因为下达这个命令意味着一旦删除的文件是无法挽回的,事实是如此吗?真的没有补救措施了吗?答案是委婉了,在一定的条件下可以补救 ,大家可能熟悉windows下删除的补救措施是通过相关的软件实现的,在linux下同样可以做到补救,但是有个大前提:就是不能有覆盖的动作(意思就 是在尝试恢复删除的数据前,删除文件的目录内不能存放新东西),不然覆盖多少就损失多少!

这里用到的套件是ext3grep、系统必须默认的安装上e2fsprogs-libs-1.39-23.el5e、2fsprogs-devel-1.39-23.el5、e2fsprogs-1.39-23.el5这些软件
[root@localhost ~]# rpm -qa|grep e2fsprogs
e2fsprogs-libs-1.39-23.el5
e2fsprogs-devel-1.39-23.el5
e2fsprogs-1.39-23.el5
 [root@localhost ~]# ll ext3grep-0.10.2.tar.gz
-rw-r--r-- 1 root root 236364 Oct 17  2011 ext3grep-0.10.2.tar.gz

[root@localhost ~]# tar zxvf ext3grep-0.10.2.tar.gz
[root@localhost ~]# cd ext3grep-0.10.2
[root@localhost ext3grep-0.10.2]# ./configure
[root@localhost ext3grep-0.10.2]# make && make install
[root@localhost ~]# ll /usr/local/bin
total 2656
-rwxr-xr-x 1 root root 2709704 Oct 15 04:46 ext3grep   //www.linuxidc.com这句是那个可执行文件

接下来演示一个补救的过程实例

[root@localhost ~]# mkdir /data/ /ixdba/

[root@localhost data]# dd if=/dev/zero of=data-disk bs=1M count=105
[root@localhost data]# mkfs.ext3 data-disk   //格式为ext3的文件系统,在出现的提示符处输入y
[root@localhost data]# mount -o loop /data/data-disk /ixdba/  //挂载
[root@localhost data]# cp /etc/host* /ixdba/  //往里边放文件
[root@localhost data]# cp /etc/passwd /ixdba/
[root@localhost data]# cd /ixdba/
[root@localhost data]# rm -rf *   //制造删除的动作
[root@localhost data]# cd /data/

[root@localhost data]# ext3grep /data/data-disk --ls --inode 2   //查看丢失的文件

[root@localhost data]# ext3grep /data/data-disk --restore-file passwd  //仅仅恢复passwd这个文件
[root@localhost data]# ext3grep /data/data-disk --restore-all    //恢复的动作,全部恢复

[root@localhost data]# ls
data-disk  data-disk.ext3grep.stage1  data-disk.ext3grep.stage2  RESTORED_FILES
[root@localhost data]# ll RESTORED_FILES/       //所有恢复的文件全在这个文件夹里存放,都找回来了
total 48
-rw-r--r-- 1 root root   17 Oct 15 06:03 host.conf
-rw-r--r-- 1 root root  187 Oct 15 06:03 hosts
-rw-r--r-- 1 root root  161 Oct 15 06:03 hosts.allow
-rw-r--r-- 1 root root  347 Oct 15 06:03 hosts.deny
drwx------ 2 root root 4096 Oct 15 06:04 lost+found
-rw-r--r-- 1 root root 1635 Oct 15 06:03 passwd

总结:这里只能实现的是首次恢复的动作,并且不能有覆盖的动作,这个是很久以前都知道的知识,在这里做个笔记,以加深记忆!

<script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
阅读(353) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: "rm -rf" 是在 Linux 系统中用于删除文件和目录的命令。它的意思是删除文件或目录,并强制删除其中的所有内容,包括子目录和文件。该命令非常强大,如果不小心使用,可能导致丢失重要数据。因此,在使用该命令时需要格外小心。 ### 回答2: linux rm -rf 是一个非常强大的命令,它可以删除指定目录及其子目录下的所有文件和文件夹。在使用这个命令之前,需要非常小心谨慎,因为一旦执行了该命令,将无法恢复删除的文件或目录。 在使用 rm -rf 命令之前,需要确认要删除的目录和文件是否正确,以免出现误删的情况。另外,也需要确认是否具有删除权限,因为如果你没有删除权限,那么执行该命令将会失败。 如果需要删除一个目录,可以使用命令 rm -rf 目录名,比如 rm -rf mydir。如果需要同时删除多个目录,可以使用空格将它们分开,比如 rm -rf mydir1 mydir2 mydir3。 需要注意的是,如果你在使用 rm -rf 命令时加上了通配符 *,那么将会删除该目录下所有的文件和子目录,所以在使用时也需要格外小心。 除了手动输入命令来删除目录和文件,还可以通过脚本或程序来执行。在使用脚本或程序的时候,需要非常小心,因为错误的命令或者参数可能导致数据丢失或者系统崩溃。 总之,rm -rf 命令非常强大,在使用时需要非常小心谨慎,确认要删除的数据是否正确,避免出现意外情况。 ### 回答3: Linuxrm -rf是一个非常强大的命令,可以删除指定目录下的所有文件和目录,包括所有内容和子目录,无需再次确认。 rmLinux系统中用于删除文件或目录的命令,-r选项表示递归删除,意思是删除指定目录及其子目录下所有的文件和目录;-f选项表示强制删除,即不询问用户是否确认删除操作。所以,使用rm -rf命令可以一次性删除指定目录下的所有内容,即使某些文件或目录是只读或被锁定的。 但是,当使用rm -rf命令时,需要非常小心,因为它有潜在的危险。如果你不小心将该命令应用到了不正确的目录或文件上,就会导致数据丢失或系统崩溃。因此,在删除文件或目录之前,最好先确认一遍,确保不会误删别的文件或目录。 此外,如果你正在使用sudo rm -rf命令,可能会进一步增加错误的风险,因为sudo命令可以提升用户权限,允许你对系统上的任何文件或目录进行操作,包括那些不应该被修改或删除的文件。所以如果你想使用sudo rm -rf,请在使用之前三思而后行。 总而言之,在使用rm -rf命令时要格外小心,确保你已经仔细考虑过目标目录或文件,以及将要删除的所有内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值