为什么`reboot`和`poweroff`在Ubuntu 16.04中没有超级用户权限的情况下工作?

Modified on: Sat, 09 Jun 2018 06:29:23 +0800

关于为什么shutdownreboot需要root权限,有很多问题。有很多好的答案。

但有一些我不明白:如果能够在多用户系统中没有root权限的情况下重新启动或关闭,那么非常糟糕强烈的>想法......那么为什么Ubuntu 16.04有可能呢?

当我在终端输入poweroffreboot并按 Enter 时,它确实会关闭/重新启动!

poweroffreboot不需要root权限时,我没关系...但为什么suspend需要root权限?
 当我在终端中键入suspend并点击 Enter 时,它不会挂起,而是会卡住......当我运行pm-suspend,它需要sudo

作者:,Severus Tux

最佳答案

对我来说,poweroffreboot都需要Ubuntu 16.04上的密码。

但是,为此,我必须创建一个名为“foo”的用户帐户,然后以该用户或我自己的身份ssh到localhost。当我这样做时,我确实需要对自己进行身份验证。它似乎认识到另一个用户已登录。

例如,我收到此消息:

User foo is logged in on sshd.
Please retry operation after closing inhibitors and logging out other users.
Alternatively, ignore inhibitors and users with 'systemctl reboot -i'.

据推测,当其他用户登录时,它足够“智能”。

(我同意你总是以root身份进行身份验证会很好。有时候,没有其他用户登录,但是一个重要的进程在后台执行某种计算。)

编辑:试过自己。如果我以foo身份登录,我需要对自己进行身份验证(谁在sudo组中)。如果我自己重新启动foo仍然登录,我必须输入systemctl reboot -i而无需密码。我认为区别在于系统知道我在sudo组。

编辑2:如Severus Tux所述,systemctl suspend -i的行为类似于上一次编辑中的systemctl reboot -i

作者:,Ray

相关问答

添加新评论