如何拯救被 rm -r的数据

描述

天雷滚滚。

天雷滚滚。

天雷滚滚。

作为一个Linux程序员,你能碰到的最伤心的事情,莫过于:

编译了一整天的工程,不小心被rm -r掉了

错误的执行了rm -r,把文件系统都删除了

在嵌入式板子和PC之间切换的时候,不小心删错了目标

不要说你没有遇到过!那么,你不是真的程序员。

要求确认

有人说,在你的bash中加入别名,譬如:

alias rm='rm -i'

这样可以保证任何的一次删除动作,都是需要确认的!

比如在~/.bashrc中添加:

这样删除文件会引发提示:

Linux

如果嫌弃提示太多,可以用-I:

Linux

这样提示会少:

Linux

阻止删除

在ext4这样的文件系统中,如果想阻止某个目录被不小心删除,可以"chattr +i "该目录,譬如:

chattr

$mkdir tmpi

$sudo chattr +i tmpi/

这样后,甚至根用户也无法删除和改动里面的文件:

chattr

$rm -r tmpi

rm: remove write-protected directory ‘tmpi’? y

rm: cannot remove ‘tmpi’: Operation not permitted

$sudo rm -r tmpi

rm: cannot remove ‘tmpi’: Operation not permitted

Linux chattr命令用于改变文件属性,-i 是设置了immutable属性:

Linux

亲爱的读者,你是怎么避免这种灾难性的误操作的呢?或者您有什么类似经历呢?欢迎留言您的故事和解决方法,即有机会获得神秘礼品。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分