如何在系统范围内关闭Xfce会话?
我们正在使用运行Xubuntu的终端服务器。 因为我们在保存的会话中遇到了一些问题,所以我们希望完全关闭会话的保存。
到目前为止,我们已经能够将默认设置为不保存会话,但在注销屏幕中仍可以保存会话。 是否可以完全关闭会话保存(系统范围),以便我们的用户不会“意外”使用它?
(使用Xubuntu 12.04测试,但安装了Xfce 4.10和4.12的ppas,但我讨论的选项可用于Xfce 4.8)
有一种方法可以全局禁用保存会话的选项,实现它的最佳方法是使用Xfce kiosk模式 。 SaveSession
是一个可用的kiosk模式选项,埋藏在xfce4-session
的源代码中。 如果我们查看/home/mike/xfce4-session-4.10.0/xfce4-session/xfsm-shutdown.c
,我们可以看到未记录的设置:
/* check kiosk */ shutdown->kiosk_can_save_session = xfce_kiosk_query (kiosk, "SaveSession");
首先,使用创建kiosk目录
sudo mkdir /etc/xdg/xfce4/kiosk
然后使用文本编辑器创建和编辑kioskrc:
sudo nano /etc/xdg/xfce4/kiosk/kioskrc
将以下内容放在您的kioskrc
:
[xfce4-session] SaveSession=NONE
现在,保存更改并注销并再次以用户身份登录进行测试。 保存会话的复选框选项应该已经消失。
在应用设置之前,该框仍然可用:
之后,在kiosk模式处于活动状态时,该选项不再可用:
如果您希望使用kiosk模式全局禁用其他设置,例如关闭或暂停等function,请参阅我的答案:
- 如何在Xfce中更改系统级别的hibernate和挂起设置?
我遇到了同样的问题,但是@ user76204提供的解决方案并没有为我做到这一点。
我的细节
$ uname -ir && lsb_release -a && xfce4-about -V
3.13.0-24-generic x86_64 No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 14.04 LTS Release: 14.04 Codename: trusty xfce4-about 4.11.1 (Xfce 4.10)
我的解决方案
我完全承认这是一个丑陋,丑陋的黑客
- 清除会话目录:
find "$HOME/.cache/sessions" -type f -print0 | xargs -0 rm -f
- 通过在
"$HOME/.cache/sessions"
上设置八进制权限来删除写入权限
chmod 500 "$HOME/.cache/sessions"
因此, 无法保存会话。 但是,这种方法确实有一个优点:您是否希望以后在会话中设置某些内容:
- 重置文件夹的权限
chmod 700 "$HOME/.cache/sessions"
- 启动XFCE会话管理器:
xfce4-session &
- 设置/保存/配置什么……
- 保存会话
- 通过在
"$HOME/.cache/sessions"
上设置八进制权限来删除写入权限
chmod 500 "$HOME/.cache/sessions"
来自misterich的hack也没有为我做这个技巧,不知何故它仍然可以写入sessions文件夹
我的解决方案
-
rm -rf“$ HOME / .cache / sessions”
-
触摸“$ HOME / .cache / sessions”
现在有一个名为sessions而不是sessions文件夹的文件,因此它不能再写入文件了。