Cairo-Dock 系统关机无效

时间:2022-08-31 18:42:59

正文

背景

Cairo-Dock 设置为开机自己主动启动后。系统菜单条里的关机选项就无效了,命令行里能够使用命令关机。

搜索过程

这次google找到的结果让我非常失望,于是仅仅好百度了。

在百度贴吧里找到一个方法(http://tieba.baidu.com/p/3034339092?

see_lz=1),可是我尝试后仍然失败了。

命令行里输入以下的命令

gnome-session-properties

找到Cairo-Dock。双击或者编辑,在命令里应该能够看到

 cairo-dock

改动为

 cairo-dock -w 5

然后我在 CSDN 上找到一个(http://blog.csdn.net/tecn14/article/details/27876089),
非常逗的是他的方法居然是使用 cairo-dock 上的关机button。这和使用命令行没差别了。

后来,我找到几个,说在 /usr/lib/cairo-dock/cairo-dock-launcher-API-daemon (64 位系统为 /usr/lib/x86_64-linux-gnu/cairo-dock/cairo-dock-launcher-API-daemon) 里面改动一些东西,可是我的系统里根本没有这个位置。

后来,在 ubuntu 的论坛上(http://forum.ubuntu.org.cn/viewtopic.php?t=460382)找到一个好的方法:

编辑  /usr/lib/i386-linux-gnu/cairo-dock/cairo-dock-launcher-API-daemon

sudo vi  /usr/lib/i386-linux-gnu/cairo-dock/cairo-dock-launcher-API-daemon

可是以下直接说在多少行加入什么内容,引用的两个图片不能正常显示。于是我又找了一个參考(http://blog.sina.com.cn/s/blog_82fc65ea0101k1m8.html)

在33行,也就是 import dbus, dbus.service 前一行加入一行:
from time import sleep
在241行。也就是 ULWatcher()): 前一行加入一行:
sleep(5) 重新启动下就ok了

总结

这应该算是 Cairo-Dock 的一个 bug 吧。

我们如今要解决问题的方法就是改动 Cairo-Dock 的配置,让它延迟一段时间。

至于为什么这样就能够了我还不知道。

使用启动它时的延迟还不行 (cairo-dock -w 5), 我想可能事因为在登陆的时候(输入password。进入桌面前),cairo-dock 已经启动了,所以失效了(原因不好说,仅仅是我的推測)。

那我们仅仅好改动cairo-dock 的配置了。

可是不同的系统版本号。cairo-dock 的位置貌似不一样。遇到的位置有

/usr/lib/cairo-dock/cairo-dock-launcher-API-daemon
/usr/lib/x86_64-linux-gnu/cairo-dock/cairo-dock-launcher-API-daemon
/usr/lib/i386-linux-gnu/cairo-dock/cairo-dock-launcher-API-daemon

总的来说都是在 /usr/lib 以下,所以我们能够在 这个位置以下搜索 cairo-dock 就可以。

搜索命令

tiankonguse@tiankonguse:/usr/lib$ find ./ -name cairo-dock
./i386-linux-gnu/cairo-dock
tiankonguse@tiankonguse:/usr/lib$

然后进入对应的位置,按上面说的加入一个sleep就可以。

參考

见文中的链接。

声明

笔者近期意外的发现 笔者的个人站点http://tiankonguse.com/ 的非常多文章被其他站点转载,可是转载时未声明文章来源或參考自 http://tiankonguse.com/ 站点,因此,笔者加入此条声明。

郑重声明:这篇记录《Cairo-Dock 系统关机无效》转载自 http://tiankonguse.com/ 的这条记录:http://tiankonguse.com/record/record.php?

id=681