你怎么能通过终端注销?

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

11.10及以上

gnome-session-quit 

11.04及以前的版本

 dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.Logout uint32:1 

(通过 替代文字 DoR ,看到他回答“没有sudoer权限重启?” 为了更多的dbus善良!)

或者,你可以使用

 gnome-session-save --force-logout 

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

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

是的,有一个名为logout的命令,但它涉及终端。 gnome-session-save是实际退出gnome-session的程序,你当然可以杀死它,但这不符合登出的条件。 🙂

另请注意,这些命令不要求您成为root用户。

如果要使用较短的命令,可以随时为系统添加别名

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

 alias logout-gnome="gnome-session-save --force-logout" 

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

我已经安装了配对桌面,没有任何菜单工作,即使f键也不起作用。 我设法通过浏览文件管理器获取xterm。

唯一有效的是:

 sudo pkill -u username 

11.10及以上

这是我个人的解决方案!

在终端中,运行:

 gedit ~/.bash_aliases 

并添加:

 alias log-out="gnome-session-quit" 

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

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

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

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

 --no-prompt End the session without user interaction. This only works with --logout. 

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将我带回登录屏幕。

我还没有使用gnome-session-quit power-offfunction,因为我shutdown -P now通常使用shutdown -P now来达到这个目的。

您可以使用以下命令:

 sudo service lightdm restart 

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

 xfce4-session-logout --logout 

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

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

 xfce4-session-logout --fast 

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

使用终端注销的能力对您来说非常有用,其他选项(例如xfce4-session-logout可用的挂起)也是如此。

有关更多信息,请参阅man xfce4-session-logout或联机Ubuntu联机帮助页 。

对于Ubuntu Mate,使用mate-session-save --force-logout 。 这就像gnome-session-quit

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

以下两个命令立即将我记录下来:

 sudo pkill -u username sudo service lightdm restart 

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

 dm-tool switch-to-greeter 

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

我尝试了gnome-session-quit --force ,它有效!

注意:我使用的是ubuntu 15.04

在kubuntu 12.04+中它是:

 qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout 0 0 0 

通过将以下行添加到.bashrc来定义函数,然后通过在shell提示符下键入logoff来调用。

  logoff() { gnome-session-quit --logout --no-prompt ; } # Log Out 

无论您是在运行X还是在TTY中,都有一种方法可行。 你去:

  • 如果你使用lightdm

     sudo service lightdm restart 
  • 如果你使用gdm或在Ubuntu GNOME中

     sudo service gdm restart 
  • 如果您使用kdm或在Kubuntu

     sudo service kdm restart 

这个命令的缺点是它会询问你的密码。

我偶然发现了这个。

 luvpreet@DHARI-Inspiron-3542:~/go/bin$ who -uH NAME LINE TIME IDLE PID COMMENT luvpreet tty7 2017-12-27 17:33 old 27458 (:0) 

在这里,您将获得当前会话的进程ID。

太简单。 杀死它

 luvpreet@DHARI-Inspiron-3542:~$ kill 27458 

你去吧