为什么“sudo bash”是个坏主意?

为什么“sudo bash”是个坏主意?

有人想对 与的sudo bash比较发表评论吗?sudo susudo -i

我知道sudo -i是因为“环境”而首选。

我几年前就养成了一个坏习惯,当时我还是个孩子,喜欢在地下室里使用sudo bash

我知道这有点笨拙和尴尬,但它确实有效。

我正在寻找一个精确且令人信服的论据来让我的大脑摆脱这种习惯。

请告诉我为什么我的方法是垃圾?我需要干预。

答案1

我认为这样做没有sudo bash错,只是不太方便。首先,它比 多了 2 个字符sudo -i。当sudo bashbash以另一个用户身份启动时(尝试执行此操作并pwd查看当前目录是什么),而 sudo -i“在运行 shell 之前尝试更改为该用户的主目录”。sudo -i尝试为您提供“类似于用户登录时收到的环境”。此外,sudo -i将读取“登录特定的资源文件,例如 .profile 或 .login”。最后,sudo -i将遵守用户在 中设置的 shell /etc/passwd

在单用户系统上,这些可能不太重要,但除非你绝不期望在您自己的系统之外的系统上工作,您最好训练自己按照推荐的方式做事。

sudo su也可能不是完全错误的(并且不比 长sudo -i),但这个选项显然很丑陋,看起来真的很笨拙;如果你可以sudo,为什么sudo su,而不是sudo设置一个合适的 shell?此外,sudo su不会正确设置用户的登录环境,你需sudo su -要这样做,此时你再次输入比 更多的字符sudo -i

相关内容