AppArmor引起的无法启动Evince

Thu 15 November 2012

今天在Ubuntu上使用文档查看器(Evince),总是打开没有响应,在命令行下使用命令: evince 却提示:

No protocol specified
Cannot parse arguments: 无法打开显示:

google说是$XAUTHORITY权限的问题,于是查看:

ls -l $XAUTHORITY
-rw------- 1 vim vim 51 2012-11-15 12:12 /data/home/vim/.Xauthority

更改为如下:

chmod +rw $XAUTHORITY

还是不行,这时候猛然想起查看日志,日志有如下一行:

Nov 15 15:48:53 Vostro kernel: [13010.203241] type=1400 audit(1352965733.221:74): apparmor="DENIED" operation="open" parent=1 profile="/usr/bin/evince" name="/data/home/vim/.Xauthority" pid=7088 comm="evince" requested_mask="r" denied_mask="r" fsuid=1000 ouid=1000

好吧,问题是一个叫做AppArmor的内核模块引起的,它阻止了evince读取.Xauthority,找到配置文件,添加:

sudo vim /etc/apparmor.d/usr.bin.evince 
@{HOME}/.Xauthority rw,
sudo /etc/init.d/apparmor restart

做完这些还是刷同样的日志,无奈只有禁用它了:

sudo ln -sf /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/

重启apparmor就能打开Evince了,都不知道这玩意是怎么加上的,之前都没问题.

此次解决看来Linux问题解决之路是从日志开始的,长时间Linux桌面工作差点都给忘掉日志的重要性.

Category: Linux Tagged: Ubuntu evince apparmor

comments


使用Python进行web开发

Fri 13 April 2012

最近有一个小的web项目,想用喜爱都python,但是想到之前接触过都django我感觉一阵不寒而栗,为什么?Django的配置太过复杂,而且小项目不太适合MVC的开发模式,所以我将目光转向了web.py这个小型web框架,并且真正让我动心都是其官方网站上都一句话:"Django lets you write web apps in Django. TurboGears lets you write web apps in TurboGears. Web.py lets you write web apps in Python." — Adam Atlas

最近切换了Ubuntu替换了Win7系统,所以这里介绍下Ubuntu都安装web.py

安装easy_install

sudo apt-get install python-pip

使用easy_install安装web.py

sudo easy_install web.py …

Category: Python Tagged: 开发 web.py Ubuntu python Linux

comments

Read More
Page 1 of 1

Fork me on GitHub