问题描述
我在登录时选择了一个Openbox DE,系统需要很长时间来加载DE。所以我切换到CLI(Ctrl
+ Alt
+ F1
)并重新启动我的系统(但我想从GUI注销而不是重启整个系统)。
我的问题是,我可以在CLI发出一些命令从GUI登出我,这样我就可以选择不同的DE。 (我不想重启我的系统every-time DE挂起。)
$ DISPLAY=:0 gnome-session-quit --force
** (gnome-session-quit:3144): WARNING **: Failed to call logout: The name org.gnome.SessionManager was not provided by any .service files
最佳解决方法
要结束所有用户进程并将其发送回登录屏幕,您可以使用:
kill -9 -1
不要以root身份运行它,原因是讨论了here。
次佳解决方法
这可以使用gnome-session-quit
命令完成。它需要--force
选项来禁止没有它的情况下出现的确认对话框。
与从X终端仿真器运行的应用程序不同,从TTY结束会话要求您附加DISPLAY
变量以指示正在运行会话的X显示器。因此:
DISPLAY=:0 gnome-session-quit --force
假设您正在运行GNOME:0,这在正常情况下就是这种情况。
-
在Ubuntu 12.04LTS中运行GNOME,命令
"DISPLAY=:0 gnome-session-quit --logout --no-prompt"
作品。 “–force”参数在当前更新级别中不存在]
第三种解决方法
请关注takkat’s suggestion。标准品是Ctrl
+ Alt
+ Backspace
。
你也可以运行:
$ sudo service lightdm restart
第四种方法
其他方式,
sudo pkill -u NameOftheUser
要么
sudo pkill x
杀死所有用户。