如何通过终端注销?

The*_*Xed 279 command-line logout

是否有一个终端命令可以让您退出当前的桌面会话并带您回到登录屏幕?

Ste*_*zzo 219

11.10 及以上

gnome-session-quit
Run Code Online (Sandbox Code Playgroud)

11.04 及之前的版本

dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.Logout uint32:1
Run Code Online (Sandbox Code Playgroud)

(通过 替代文字执行长,请参阅他对“没有 sudoer 权限重新启动?”的回答。为了更多的 dbus 好处!)

或者,您可以使用

gnome-session-save --force-logout
Run Code Online (Sandbox Code Playgroud)

--force-logout相反只是--logout不会要求用户处理未保存的文件等等。

这是最简单的方法吗?没有像 sudo logout 这样简单的单行命令?我永远不会记得这一切。

是的,有一个名为 logout 的命令,但它与终端有关。gnome-session-save 是实际退出 的程序,gnome-session您当然可以杀死它,但这不符合注销条件。:-)

还要注意,这些命令不需要您是 root。

如果您想要更短的命令,您可以随时为您的系统添加别名

~/.bash_aliases使用文本编辑器打开,或者如果它不存在则创建它,然后添加如下内容:

alias logout-gnome="gnome-session-save --force-logout"
Run Code Online (Sandbox Code Playgroud)

(.bashrc 是每次启动新虚拟终端时运行的脚本,您应该在那里设置所有永久别名,另请参阅:如何创建永久“别名”?

  • 在我看来,“--force-logout”不太有效,因为它给出了这个错误:警告**:无法启动:未知选项--force-logout。在研究了 `man gnome-session-quit` 之后,我发现“--force”和“--logout”实际上是不同的参数。因此,“--force --logout”(“force”和“logout”之前的两个减号,中间有一个空格)会更好,因为你不会有错误。至少,Ubuntu 13.04 和 Linux Mint 15 就是这种情况。关于任一发行版的其他/旧版本的 IDK。 (3认同)
  • 好吧,总是有 Ctrl-Alt-Backspace(如果您启用它),但这又会杀死会话而不是从中注销。 (2认同)

小智 97

我已经安装了 mate 桌面,但没有一个菜单起作用,甚至 f 键也不起作用。我设法通过使用文件管理器浏览来获得 xterm。

唯一有效的是:

sudo pkill -u username
Run Code Online (Sandbox Code Playgroud)

  • @Eugene `alias logout="sudo pkill -u ${USER}"` 怎么样? (3认同)
  • 我还为我做了一个别名`alias ulogout="sudo pkill -KILL -u $1"`。可能对某人有用。用法:`ulogout user_name` (2认同)
  • 你有什么需要`sudo`的理由吗?另外,我认为这与注销不同,因为它会杀死*所有*您的进程(例如,如果您有另一个远程会话,它也会被杀死)。我也不确定它是否一定会杀死您的所有进程(我可以想象它可能会先杀死自己?)您知道这是否可能吗? (2认同)

小智 33

11.10 及以上

这是我个人的解决方案!

在终端中,运行:

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

并添加:

alias log-out="gnome-session-quit"
Run Code Online (Sandbox Code Playgroud)

到文件!现在你只需要运行注销!


小智 14

看起来gnome-session-save已重命名gnome-session-quit为 11.10。主要答案中的其他所有内容仍应适用于该单一更改。

http://mail.gnome.org/archives/desktop-devel-list/2011-February/msg00147.html


bel*_*qua 12

对于 gnome 会话,gnome-session-quit效果很好。默认情况下,它会要求确认,然后将您注销(即,--logout除非--power-off明确覆盖,否则假定该参数)。您还可以告诉命令在注销时不提示确认:

--no-prompt
      End the session without user interaction. This only works with --logout.
Run Code Online (Sandbox Code Playgroud)

gnome-session-quit 在 12.04 中仍然有效。

由于 OP 没有指定窗口/桌面管理器,并且 gnome-session-quit 可能不适用于所有可能性,这里有一个通用的 X-windows 返回登录屏幕或选择器的方法,我已经使用了多次最后几个版本:

从终端(通过不同的方式调用'Alt-F2 + xterm,或Ctrl-T,或Crt-Alt-F1,或通过在Nautilus 中右键单击桌面并使用“在终端中打开”快捷方式等调用)。 ) 类型

sudo pkill X

在大多数情况下,这通常是矫枉过正。我倾向于在进程挂起或必须快速注销时使用它。完成此操作后,Ubuntu 通过重新生成 X-windows 礼貌地将我返回到登录屏幕。

我还没有使用 的power-off功能gnome-session-quit,因为我通常shutdown -P now用于该目的。


小智 10

在 Xubuntu(或每当使用 Xfce 会话时),您可以通过终端使用

xfce4-session-logout --logout
Run Code Online (Sandbox Code Playgroud)

您必须指定,--logout否则将显示注销确认屏幕。无论您在登录时指定了“Xubuntu 会话”还是“Xfce 会话”,这都将起作用Lightdm,因为该会话仍由 Xfce 会话管理器管理。

此外,另一个选项也会将您注销:

xfce4-session-logout --fast  
Run Code Online (Sandbox Code Playgroud)

如果发出此命令,则不会保存会话,因此通常最好使用xfce4-session-logout --logout.

使用终端注销的功能对您非常有用,其他选项(例如挂起)对您非常有用xfce4-session-logout

有关更多信息,请参阅man xfce4-session-logoutUbuntu 联机帮助页


Osa*_*awy 8

您可以使用以下命令:

sudo service lightdm restart
Run Code Online (Sandbox Code Playgroud)

  • 对于所有用户,这很难杀死所有正在运行的 X 会话。 (2认同)

Old*_*rey 8

对于 Ubuntu Mate 使用mate-session-save --force-logout. 它就像gnome-session-quit.


小智 7

我尝试过gnome-session-quit --force并且有效!

注意:我使用的是ubuntu 15.04


小智 5

在三星上网本上运行的 lubuntu 12.10 LXDE(CPU:1.66 GHZ Intel Atom;RAM:2GB)

以下两个命令立即将我注销:

sudo pkill -u username
sudo service lightdm restart
Run Code Online (Sandbox Code Playgroud)


Zan*_*nna 5

如果您不想终止会话,可以使用以下命令返回登录屏幕:

dm-tool switch-to-greeter
Run Code Online (Sandbox Code Playgroud)

如果您选择用户并输入密码,会话将恢复,因此这不是完全注销。


归档时间:

查看次数:

722183 次

最近记录:

7 年,1 月 前