从终端关闭而不输入密码?

San*_*mar 56 command-line sudo shutdown

我有桌面版的 Ubuntu。

我喜欢终端,所以我更喜欢用shutdown命令关闭我的电脑。

但是,当我输入shutdown now它时,它会提示我输入密码。有什么办法可以在不输入密码的情况下使用此命令关闭我的计算机?

Sir*_*rlo 65

打开终端(CTRL + T)并输入以下内容 sudo visudo

添加以下行:

%group_name ALL=(ALL) NOPASSWD: /sbin/poweroff, /sbin/reboot, /sbin/shutdown
Run Code Online (Sandbox Code Playgroud)

或者

user_name ALL=(ALL) NOPASSWD: /sbin/poweroff, /sbin/reboot, /sbin/shutdown
Run Code Online (Sandbox Code Playgroud)

这允许用户/组使用 sudo运行上述三个命令,但没有密码。

因此,sudo poweroff现在将导致无密码关机。


但是,为了使这更清晰,我们将添加一个别名,以便运行shutdown调用sudo shutdown now.

打开~/.bash_aliases编辑。

nano ~/.bash_aliases
Run Code Online (Sandbox Code Playgroud)

在文件末尾插入以下行:

alias shutdown='sudo shutdown now' 
Run Code Online (Sandbox Code Playgroud)

最后,加载对.bash_aliases文件的更改...

source ~/.bash_aliases
Run Code Online (Sandbox Code Playgroud)

试试看!

shutdown
Run Code Online (Sandbox Code Playgroud)

谢谢,埃里克


Maj*_*jal 38

不使用 sudo且不修改系统的情况下执行此操作的一种安全方法是执行以下单行命令:

对于 Ubuntu 14.10 或更早版本:

关掉:

/usr/bin/dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
Run Code Online (Sandbox Code Playgroud)

重新开始:

/usr/bin/dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
Run Code Online (Sandbox Code Playgroud)

控制台套件 安装控制台套件 当然应该安装你的系统。

您可能喜欢的其他命令:

暂停:

/usr/bin/dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
Run Code Online (Sandbox Code Playgroud)

休眠:(如果在您的系统上启用)

/usr/bin/dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Hibernate
Run Code Online (Sandbox Code Playgroud)


对于 Ubuntu 15.04 及更高版本:

(这是由于 Ubuntu 改变使用systemd而不是Upstart

systemctl poweroff

systemctl reboot

systemctl suspend

systemctl hibernate

systemctl hybrid-sleep
Run Code Online (Sandbox Code Playgroud)

由于在 Ubuntu 系统中通常默认禁用休眠,您可以通过查看此答案来启用它:https : //askubuntu.com/a/617254/101985

原始来源:https : //bbs.archlinux.org/viewtopic.php?id=127962

  • 这是一个有用的参考,但是“systemctl”命令需要输入用户的密码,因此它不适用于问题的直接答案。 (2认同)