大概情况是这样:
我的host是gnome-shell, 平时用journalctl -f 查看variety和lantern的实时的debug信息,同时可以查看gnome的一些warning或者错误信息,总之就是一直开着.
我的guest是cinnamon, journalctl -f 查看不到vairety和lantern的输出,但是在终端内启动lantern,该终端窗口内可以查看lantern的debug信息.
虚拟机用的是virtualbox 5.0.24-1, journald.conf 都是默认设置.
想知道为什么journalctl -f , 同一个命令在gnome里可以看到lantern的debug,在cinnamon里就无法看到.
最近编辑记录 amonra (2016-07-10 16:02:57)
火出木尽,灰飞烟灭
离线
权限的问题吧。看看 /var/log/journal 的权限,然后看看你自己的组。
PS: 我也一直开着 :-)
离线
权限的问题吧。看看 /var/log/journal 的权限,然后看看你自己的组。
PS: 我也一直开着 :-)
权限目前看起来好像没啥问题, journal的目录都是root:systemd-journal, 当前用户名在host和guest上都是属于wheel组和"用户名"组,唯一的区别是在host上的当前用户还属于vboxuser组(主要是为了解决vbox的USB设备passthourgh的问题自己加的),其他都一样,
如果我鼠标启动lantern, 在host上会在journalctl -f 里面直接蹦出一大堆debug信息,头两行如下:
lantern.desktop[25533]: Running installation script... #这个好象是lantern.sh里面的一个检查点.
lantern.desktop[25533]: /usr/lib/lantern/lantern-binary: OK #检查无误,然后下面就是一大堆DEBUG
[.....]
但是在guest里面啥反映都没有, 程序运行都没有问题, 实在搞不懂是哪里的问题,
(guest里面journalctl 可以读出系统的log比如dbus, systemd kernel .....)
PS: 除了journal以外,我还7*24开着htop.藏到guake里去.
最近编辑记录 amonra (2016-07-10 22:46:42)
火出木尽,灰飞烟灭
离线
你看看你的 guest 里 wheel 组能访问 /var/log/journal 吗?用 getfacl 命令。
PS: 我也有个一直开着的 htop 呢,在一个单独的 xfce4-terminal 窗口里,需要的时候就用 run_or_raise 函数叫 Awesome 把它叫过来。
离线
你看看你的 guest 里 wheel 组能访问 /var/log/journal 吗?用 getfacl 命令。
PS: 我也有个一直开着的 htop 呢,在一个单独的 xfce4-terminal 窗口里,需要的时候就用 run_or_raise 函数叫 Awesome 把它叫过来。
输出结果如下:
# file: var/log/journal
# owner: root
# group: systemd-journal
# flags: -s-
user::rwx
group::r-x
group:adm:r-x
group:wheel:r-x
mask::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:adm:r-x
default:group:wheel:r-x
default:mask::r-x
default:other::r-x
PS:
火出木尽,灰飞烟灭
离线
这有读权限啊。难道是对日志文件没权限?
离线
我又下载了一个mint放到vbox里面试了一下, 发现是同样的情况, 在host里面,我启动variety,每当这软件从wallpaper.cc上下来了某个图片,或者每次这软件自动设置我的桌面图片的时候, journal里面都有记录, 但是切换到cinnamon里面不管是arch还是mint,都读不到,似乎cinnamon环境影响了journal的某些设置,但是我查了一下,设置都是一样一样的,另外,我也查看了journal目录里面的文件权限,wheel都是可以读到的. ........ still confusing
话说,我刚刚在vbox里的arch上面干脆装了xfce4,cinnamon,mate和gnome, 只有gnome可以在journal里面读到那些variety和lantern的log (费解啊), 我登出,然后再登录到xfce4, mate 或者 cinnamon 都不行, 这是啥情况??
最近编辑记录 amonra (2016-07-11 14:11:45)
火出木尽,灰飞烟灭
离线
你直接指定读那些文件呢? journalctl --files=....
离线
我是这样做的
先进入到/var/log/journal/xxxxxxxxxxx/下面(除了remote的另外一个文件夹)
sudo journalctl --file=user-1000.journal -ef
结果如下:
在非gnome桌面环境下:user-1000.journal 没有lantern或者variety的log信息,这个文件里面压根就没这信息, 操作方法是鼠标启动lantern, 右键退出,然后再鼠标启动,重复操作几遍. journal里面录不到lantern的debug.
在gnome桌面环境下:user-1000.journal会显示出lantern或者variety的log信息.可以实时蹦出来,操作方法同上.
最近编辑记录 amonra (2016-07-11 16:46:01)
火出木尽,灰飞烟灭
离线
哦我想到了。你的不同桌面环境把程序的日志写到了不同的地方……之前我一直以为你的 lantern 是作为系统服务运行的……
你可以看看有没有 ~/.xsession-errors 文件。
另外建议使用 lantern.service 服务。
离线
哦我想到了。你的不同桌面环境把程序的日志写到了不同的地方……之前我一直以为你的 lantern 是作为系统服务运行的……
你可以看看有没有 ~/.xsession-errors 文件。
另外建议使用 lantern.service 服务。
哦 ~~~~~~:D 恍然大悟啊, 我竟然把xsession忘的一干二净了, 不久前我还在用xsession-error排错,唉~~~
我自己做了点点功课, 发现原来用gdm的话,不论是什么桌面环境,都可以把journal和xsession-error统一显示出来,原因在于gdm直接会log进systemd,而不是原来的xsession-error里面. 但是用比如我现在用的lightdm就不是这样了,jouranl和xsession是分开的.
感谢依云的帮助,非常感谢,顺便膜拜一下你和你的blog呵呵.
火出木尽,灰飞烟灭
离线