6-【防止误rm----safe-rm】

#某次主目录下rm -rf ~ 后查找

safe-rm 防止误操作rm

1.安装

wget -c https://launchpadlibrarian.net/188958703/safe-rm-0.12.tar.gz
tar -xzvf safe-rm-0.12.tar.gz
cd safe-rm-0.12

2.给权限

#此处我似乎未操作,有点记不清了,好像只是在.bashrc 加了 alias rm=‘safe-rm’

sudo su
mv safe-rm /usr/local/bin/rm
chown root:root /usr/local/bin/rm 

3.设置环境变量

sudo gedit /etc/profile
#第一个export前填加
PATH=/usr/local/bin:$PATH

4.保护列表

sudo gedit /etc/safe-rm.conf 

可以为

/
/bin
/boot
/dev
/etc
/home
/initrd
/lib
/proc
/root
/sbin
/sys
/usr
/usr/bin
/usr/include
/usr/lib
/usr/local
/usr/local/bin
/usr/local/include
/usr/local/sbin
/usr/local/share
/usr/sbin
/usr/share
/usr/src
/var

测试是否安装成功,可以再保护列表内添加路径文件
**注意:**此处添加的路径仅在删除该路径时生效,距离路径为/home/lx/w,则在使用rm -r w/时生效,如在w路径内删除,则正常删除。
这里我设置了后在跳过删除的同时还提示了其他的内容,本人暂未解决,希望那天被人看到可以指点一下,真的很需要

safe-rm: skipping w/
/bin/rm: 缺少操作数
Try '/bin/rm --help' for more information.

参考链接:safe-rm防止危险删除

再做第三步的时候,重启后出现了输入密码后无法进入桌面,只显示壁纸的情况,此时需要ctrl+alt+f1 进入操作模式,复原文件后

sudo service lightdm restart

重启桌面后正常

Plan B

1.安装safe -rm

2.在zsh或者bash添加下列字段

说明:具体指在使用rm指令时,会自动变成mv指令。同时将文件回收至指定目录,并将信息记录在指定路径内的00rmlog.txt文件内,建议将次文件夹的误删除添加到上个方法内。
# 注意: 此方法在使用xargs传参删除时无效

alias rm='safe_rm'
export TRASH_DIR="/home/lx/Recycling"  #回收rm的文件
safe_rm () {
    local d t f s
    [ -z "$PS1" ] && (/bin/rm "$@"; return)
    d="${TRASH_DIR}"  # 更改 d 变量的值
    t=`date +%F_%H-%M-%S`
    [ -e "$d" ] || mkdir -p "$d" || return
    for f do
        [ -e "$f" ] || continue
        s=`basename "$f"`
        /bin/mv "$f" "$d/${t}_$s" || break
    done
    echo -e "[$? $t `whoami` `pwd`]$@\n" >> "$d/00rmlog.txt"
}

alias rm='safe-rm'
export TRASH_DIR="/home/lx/Recycling"
safe_rm () {
    local d t f s
    [ -z "$PS1" ] && (/bin/rm "$@"; return)
    d="${TRASH_DIR}/.`date +%W`.__trash"  # 更改 d 变量的值 
    t=`date +%F_%H-%M-%S`
    [ -e "$d" ] || mkdir -p "$d" || return
    for f do
        [ -e "$f" ] || continue
        s=`basename "$f"`
        /bin/mv "$f" "$d/${t}_$s" || break
    done
    echo -e "[$? $t `whoami` `pwd`]$@\n" >> "$d/00rmlog.txt"
}

不同之处在于此段代码会在回收路径内,被删除的文件会自动根据周数命名,同时文件是隐藏的,需要使用ls -a 查看

参考大神:safe-rm变为mv

#小白记录使用,如有侵权,联系删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值