使用时狂欢有或没有sudo
都有很多陷阱。例如,当以 root 身份登录时
rm -rf ~/bin
和
rm -rf /bin
虽然只有一个角色,但是这种差异可能会让你很不高兴。
为了保护自己免受此类灾难的侵害,我在我的/etc/bash.bashrc
系统范围内使用了这种方法.bashrc
:
if [ $UID -ne 0 ]; then
# ask me before deleting
alias rm='rm -i'
else
# do not delete / or prompt if deleting more than 3 files at a time
alias rm='rm -I --preserve-root'
fi
这样,我至少要在遇到灾难之前确认删除。也许还有更危险的命令,如 rm...
哪些 bash 命令最危险以及如何保护自己免受日常灾难的侵害?
答案1
首先,切勿使用 root 身份执行日常命令。
这是真正让自己暴露于灾难的最好方式。
考虑到这一点,如果您使用 sudo,您实际上可以限制命令和用户可以使用 sudo 执行的命令选项。
例如,在您的 sudoers 文件中,您可以像这样限制使用 rm:
myuser ALL=(root) NOPASSWD: rm -r
这意味着我的用户只能使用 sudo 作为根并且只能执行R M与-r选项。
sudoers 文件还支持正则表达式,因此您可以真正自定义使用 sudo 时可以执行的内容。
一个很好的起点...