今天是一个难忘的日子,当时本来想清除主机上面data目录下的mysql8.0相关的数据文件的,进入mysql8.0的数据文件所在路径下,结果在执行rm -rf ./data/* 时打成了rm -rf /data/* ,一个回车下去,结果就悲剧了。整个/data目录下的所有文件全部删除了,瞬间奔溃了,真是欲哭无泪,索性之前主机做了快照备份的,立即回滚快照。
虽然最后解决了,但给我留下很大的阴影,为了避免以后才出现类似的情况,强烈建议生产环境中千万不要使用rm -rf 和 *这种操作,太危险了。删除了可以去回收站里面找,结果linux下还真有这样的工具,那就是使用 trash-cli。

trash-cli是一个使用 python 开发的软件包,包含 trash-put、restore-trash、trash-list、trash-empty、trash-rm等命令,我们可以通过这写命令,将文件移动到回收站,或者还原删除了的文件。
trash-cli的项目地址:trash-cli下载地址


1、下载trash-cli安装包


使用trash-cli防止rm -rf 误删除带来的灾难(“事前”非“事后”)_rm -rf删除还能还原吗?


2、开始安装


使用trash-cli防止rm -rf 误删除带来的灾难(“事前”非“事后”)_rm -rf删除还能还原吗?  _02


3、安装成功后我们的系统就有了以下工具.


使用trash-cli防止rm -rf 误删除带来的灾难(“事前”非“事后”)_rm -rf删除还能还原吗?  _03


功能说明:

trash-put 将文件或目录移入回收站

trash-empty 清空回收站

trash-list 列出回收站中的文件

trash-restore还原回收站中的文件

trash-rm 删除回首站中的单个文件


4、安装完毕之后我们可以通过一些配置,用它替代 rm命令


使用trash-cli防止rm -rf 误删除带来的灾难(“事前”非“事后”)_rm -rf删除还能还原吗?  _04


5、实验测试


使用trash-cli防止rm -rf 误删除带来的灾难(“事前”非“事后”)_rm -rf删除还能还原吗?  _05


 还原删除的文件


使用trash-cli防止rm -rf 误删除带来的灾难(“事前”非“事后”)_rm -rf删除还能还原吗?  _06


备注

trash-put命令会把我们想要删除的文件移动到~/.local/share/Trash/files 中。

相关信息记录在~/.local/share/Trash/info中。


转载地址:http://www.seiang.com/?p=229