以下命令有什么区别:
su
sudo -s
sudo -i
sudo bash
Run Code Online (Sandbox Code Playgroud)
我知道su
我需要知道 root 密码,而且sudo
我必须在sudoers
文件中,但是一旦执行有什么区别?
我知道su
和之间存在差异,sudo -s
因为我的主目录/root
在我执行之后su
,但我的主目录仍然/home/myname
在sudo -s
. 但我怀疑这只是我遗漏的潜在差异的症状。
默认情况下,Ubuntu 不会创建用户可以登录的 root 帐户。相反,用户sudo
在需要执行需要管理访问权限的操作时使用。
显然,Ubuntu 的人认为这是个好主意,我在 Ubuntu 网站上读到的所有内容都给出了很多理由让他们认为这是个好主意(例如,参见RootSudo @ the Ubuntu Wiki)。
但是,许多其他主流发行版,例如 Debian、Gentoo 等,默认情况下并没有这样设置,我正在尝试找出原因。如果 Ubuntu 的默认 sudo-root 设置是一个好主意,为什么不是所有其他主流发行版也这样做呢?这让我相信,不以这种方式设置它可能有充分的理由;但我很难找到任何可以提供任何详细信息的内容。我发现的只是谈论它有多棒的文章/帖子......
所以我的问题是:Ubuntu 的 sudo 设置是否存在任何阻止其他发行版使用此设置的主要问题(不安全、功能限制等),如果有,它们是什么?当然,它可能只是一个好主意,其他发行版只是缓慢地接受或抵制,因为它与过去 30 年的运作方式不同。如果是这样的话,我想知道这一点。
我最近在 EC2 上安装了 Amazon Linux 来运行 NodeJS 应用程序。
建议以非 root 用户身份运行它们。这个用户仍然是我,所以不用担心其他人可以访问 vim,这不在列表中。
我添加了一个 newuser,现在 newuser 与 root 拥有相同的 sudo 权限。那么现在如何安全呢?仅仅是因为 newuser 必须输入密码才能运行命令吗?