1. 目的及构想
防止误删文件,尤其是用root用户时误删根目录导致不可逆的操作,将rm命令映射成mv命令,将数据mv到伪回收站下,利用程序进行清理回收站。
清理回收站有两种构想,一种是设置命令清空回收站,另一种则是通过定时任务去清理删除超过一定时间的数据,由于rm命令已被映射为mv命令,需要使用/bin/rm来进行真正的rm操作
2. 修改/etc/profile
1 | this_path="/mnt/.trash/"$USER |
在/mnt下建立目录.trash作为伪回收站,用户打开shell时,检测.trash目录下是否已有用户所属目录,若无则建立一个,该用户所有的rm操作会mv到此目录下。并对rm的文件或目录加上时间戳以作区分,ur命令可用于将回收站的数据恢复到本地(时间戳暂时需要自己删除),rl命令可以用于查看回收站现有数据