如何将“rm -rf /”设为别名?

Car*_*dru 4 root alias rm

我想为rm -rf /. 我知道如何制作别名;问题是我不知道如何使用一系列命令来为所有命令创建别名。我想要类似rm -rf / = echo 'something', 但仅当使用“/”时。

我怎样才能做到这一点?

Ami*_*ias 17

通过应用适当的权限来防止人们删除内容会更好地做到这一点。

通过禁用别名、符号链接rm并以这种方式运行它、复制rm二进制文件,甚至可能直接运行它,这种别名“安全”方法很容易被覆盖。

您应该在无人看管时按Ctrl+ Alt+L锁定桌面以保护桌面。


hee*_*ayl 10

一个简单的bash函数就可以了(但这显然可以被用户覆盖):

rm () { [[ $1 =~ -(rf|fr) && $2 = / ]] && echo "whatever" || command rm "$@" ;}
Run Code Online (Sandbox Code Playgroud)

请注意,即使某些用户这样做rm -rf /,操作也不会继续,因为需要输入--no-preserve-root选项以rm递归删除根目录。(但没有什么可以阻止一个人做rm -rf /*cd /; rm -rf *顺便说一句)

但是你应该考虑实施一个好的安全策略而不是猴子修补敏感的东西。

  • 还有,戒烟;) (3认同)