我的系统:Ubuntu 11.10 最新更新,带有自定义 gtk3 主题
这是.xsession-errors 的输出:
WARN 2012-01-15 21:44:04 glib.glib-gobject:0 无效的不可实例化类型
(null)' in cast to
BamfView'WARN 2012-01-15 21:44:05 glib:0 无法获取子项:接口“org.ayatana.bamf.view”上带有签名“”的方法“Children”不存在
我现在该怎么做才能启用关机按钮?如果我按下关机,什么反应都没有。
答案1
好的 - 我不知道你是否喜欢它,但它是一个解决方案:
创建一个文本文件 PowerOff.sh(例如使用 gedit)并在其中写入(如果您的默认 shell 是 bash - 如果是其他的,您可能知道该怎么做):
#!/bin/bash
sudo shutdown -h now
用鼠标右键单击它,然后在属性中:允许作为程序执行。
将此文件复制到某个隐藏位置会很方便(我的意思是不要将其留在桌面上)。
之后你需要修改文件 /etc/sudoers:
sudo gedit /etc/sudoers
在此文件末尾添加:
user ALL = NOPASSWD: /sbin/shutdown
其中 user 是你的用户名,例如 thonixx(如果你通过该用户名登录 Ubuntu)
好的,现在在您的面板上创建一个激活器,用鼠标右键单击它,然后选择:添加到面板->添加激活器->您自己的激活器->在终端中输入:程序并选择您创建的文件PowerOff.sh
现在应该可以通过单击面板上的激活器来关闭你的电脑。如果你愿意,你甚至可以给它一个你选择的图标
通过这种方式,您可以执行其他命令。或者甚至编写一个简单的 Python 包装器来显示一个表单,让您选择是否要重新启动、关闭、注销等。我为您提供了解决方案,但没有弹出关闭对话框,因为您并没有真正提到哪个关闭按钮会导致此错误。您可以使用以下命令做出相同的解决方案:
gnome-session-save --shutdown-dialog
在 bash 文件中而不是关机。在这种情况下,您可能不需要编辑 /etc/sudoers
问候
PS:目前看来,这像是 Unity 中的一个错误。尝试谷歌搜索:org.ayatana.bamf.view
一些链接: