先查看服务器有没有wget命令,如果没有可以使用yum安装一个,使用wget命令从官网上面下载包
[root@localhost ~]# which wget
/usr/bin/wget
[root@localhost ~]# wget https://launchpad.net/safe-rm/trunk/0.12/+download/safe-rm-0.12.tar.gz
--2022-02-14 17:15:44-- https://launchpad.net/safe-rm/trunk/0.12/+download/safe-rm-0.12.tar.gz
正在解析主机 launchpad.net (launchpad.net)... 91.189.89.223, 91.189.89.222, 2001:67c:1560:8003::8004, ...
正在连接 launchpad.net (launchpad.net)|91.189.89.223|:443... 已连接。
......
......
100%[===================================================================================================================>] 16,371 11.6KB/s 用时 1.4s
2022-02-14 17:15:51 (11.6 KB/s) - 已保存 “safe-rm-0.12.tar.gz” [16371/16371])
将下载的包解压到/usr/src/目录下
[root@localhost ~]# ls
anaconda-ks.cfg safe-rm-0.12.tar.gz
[root@localhost ~]# tar xf safe-rm-0.12.tar.gz -C /usr/src
[root@localhost src]# cd /usr/src/
[root@localhost src]# ls
debug kernels safe-rm-0.12
[root@localhost src]# cd safe-rm-0.12
[root@localhost safe-rm-0.12]# ls
Changes COPYING INSTALL README safe-rm
将命令拷贝到/usr/local/bin/目录下,并查看
[root@localhost safe-rm-0.12]# pwd
/usr/src/safe-rm-0.12
[root@localhost safe-rm-0.12]# cp safe-rm /usr/local/bin/rm 将safe-rm文件拷贝到/usr/local/bin目录下并改成rm命令
[root@localhost safe-rm-0.12]# cd /usr/local/bin/
[root@localhost bin]# ls
rm
添加环境变量,使所有系统用户都可以使用safe-rm工具
[root@localhost ~]# echo “export PATH=$PATH:/usr/local/bin” >>/etc/profile
[root@localhost ~]# source /etc/profile
[root@localhost ~]# echo $PATH
查看命令路径
[root@localhost ~]# which rm
Alias rm = ‘rm -i’
/usr/local/bin/rm
在/etc/目录下创建safe-rm.conf配置文件,在目录中输入你想要保护的目录文件
[root@localhost ~]# mkdir /aaa/1.txt
[root@localhost ~]# echo 123 >/aaa/1.txt
[root@localhost ~]# cat /aaa/1.txt
在/etc/下创建配置文案并编辑输入测试文件
[root@localhost ~]#vim /etc/safe-rm.conf
/aaa/1.txt
:wq 保存退出
文件在被保护后将无法被删除,此时在使用rm -rf 尝试删除文件则会显示:
[root@localhost ~]# rm -rf /aaa/1.txt
safe-rm:skipping /aaa/1.txt
注:当safe-rm的文件中添加了保护目录还是能删掉,那么需要退出当前会话链接,重新连接即可。