温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ubuntu系统下使用rm命令删除文件

发布时间:2020-07-07 17:01:38 来源:网络 阅读:2406 作者:远东FarEast 栏目:开发技术

一 ubuntu系统下使用rm命令删除文件,如何恢复?

    如果是ext3/ext4文件系统,可以使用extundelete工具恢复。

$ df -hT
文件系统       类型      容量  已用  可用 已用% 挂载点
/dev/sda1    ext4      455G  366G   66G   85% /

    参考文章:

    1. http://longgeek.com/2012/11/25/extundelete-recovery-for-linux-ext2-ext3-ext4-rm-rf-accidental-deletion-of-data/

    2. http://www.linuxyunwei.com/2012/08/ext4%E4%B8%AD%E6%81%A2%E5%A4%8D%E4%BD%BF%E7%94%A8rm%E5%91%BD%E4%BB%A4%E8%AF%AF%E5%88%A0%E9%99%A4%E7%9A%84%E6%96%87%E4%BB%B6/


二 建议安装好ubuntu后,先将rm命令做一下别名替换。

    替换rm命令为mv命令,将要删除的文件移动到一个自定义的文件夹里,防止误删除。

代码如下:

1. 在/home/username/ 目录下新建一个目录,命名为:.trash

2. 在/home/username/tools/目录下,新建一个shell文件,命名为:remove.sh。内容如下:
PARA_CNT=$#
TRASH_DIR="/home/username/.trash"
for i in $*; do
    STAMP=`date +%s`
    fileName=`basename $i`
    mv $i $TRASH_DIR/$fileName.$STAMP
done

3. 修改~/.bashrc, 增加一行
alias rm="sh /home/username/tools/remove.sh"
用我们自建的remove.sh替代rm命令

4. 设置crontab,定期清空垃圾箱,如:
0 0 * * * rm -rf /home/username/.trash/*
每天0点清空垃圾箱

5. source ~/.bashrc 使替换立即生效
经过上面的步骤后,执行rm删除的文件,会被放入垃圾箱。如果误删除,可以从中恢复。

6. 由于~/.bashrc这个文件对root用户无效,所以也要修改/etc/bash.bashrc,
这个文件有全局效应。
    在最后一行加上:alias rm="sh /home/username/tools/remove.sh"

    这样,把rm命令转换成了mv命令,能够达到想要的效果,只不过在习惯性的敲入-r 参数时会报出一个错误,因为mv命令没有-r参数嘛。




向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI