rm -rf * 了咋办,跑路吗?

初商 2019-08-08

阿里云MVP

昨天有个工程师写了一个删除日志的bug:

...
rm -rf / home/work/logs/

...

还好是在测试环境执行的,否则估计要跑路了。

画外音:一个“多了一个空格”的bug,看懂了么?

曾经我也干过类似的傻事,写过这样删除日志的脚本:

...

cd ${log_path}

rm -rf *

...

进入到日志目录,然后把日志都删除。

画外音:看上去没有任何问题?当目录不存在时,悲剧就发生了。

如何避免类似的删除根目录的“惨剧”发生,有这样一些建议:

一、命令替换

在生产环境把rm -rf 命令替换为mv,再写个定时shell定期清理。

画外音:模拟了回收站的功能。

二、收拢权限

帐号权限的分离,线上分配work帐号,只能够删除/home/work/logs/目录,无法删除根目录。

画外音:大公司一般线上权限管理比较规范,小公司就未必了

登录 后评论
下一篇
corcosa
10938人浏览
2019-10-08
相关推荐
分布式(hadoop)内核研发面试指南
18183人浏览
2016-12-22 11:22:03
协程 [wiki]
1252人浏览
2016-04-10 00:42:00
进程,线程,协程
4039人浏览
2016-05-27 23:57:28
区块链之初识区块链
711人浏览
2018-04-16 11:42:37
0
0
0
228