PolicyKit日志输出的位置
我正在尝试调试一个看起来像这样的新PolicyKit规则:
polkit.addRule(function(action, subject) { polkit.log("action=" + action); polkit.log("subject=" + subject); if (action.id == "org.freedesktop.udisks2.filesystem-unmount-others"){ return polkit.Result.YES; } });
但是我无法在/var/log/
找到polkit.log()
调用的输出。 我甚至尝试在/etc/rsyslog.d/50-default.conf
添加一行
*.* /var/log/all
它产生大量输出,但不是polkit.log()
。 我在哪里可以找到这些电话的日志消息?
从policykit文档:
log()
方法将给定消息写入系统记录器,前缀为JavaScript文件名和行号。 使用LOG_AUTHPRIV
标志发出日志条目,这意味着日志条目通常以文件/var/log/secure
结尾。log()
方法通常仅在调试规则时使用。 Action和Subject类型具有适合于简单日志记录定义的toString()
方法,例如,polkit.addRule(function(action, subject) { if (action.id == "org.freedesktop.policykit.exec") { polkit.log("action=" + action); polkit.log("subject=" + subject); } });
当用户从shell运行
pkexec -u bateman bash -i
时,将生成以下内容:May 24 14:28:50 thinkpad polkitd[32217]: /etc/polkit-1/rules.d/10-test.rules:3: action=[Action id='org.freedesktop.policykit.exec' command_line='/usr/bin/bash -i' program='/usr/bin/bash' user='bateman' user.gecos='Patrick Bateman' user.display='Patrick Bateman (bateman)'] May 24 14:28:50 thinkpad polkitd[32217]: /etc/polkit-1/rules.d/10-test.rules:4: subject=[Subject pid=1352 user='davidz' groups=davidz,wheel, seat='seat0' session='1' local=true active=true]
这种类型的日志事件通常可以在Debian的/var/log/auth.log
及其衍生产品(包括Ubuntu)中找到。
来源: / var / log / secure在14.04不存在,还有其他选择吗?