2009年7月15日

[plamo:29932] Re: Plamo 4.6 最近のUpdate 適用後の問題


こじま@チェックご苦労さま,です (_ _)

From: KATOH Yasufumi <karma@xxxxx>
Subject: [plamo:29931] Re: Plamo 4.6 最近の Update 適用後の問題
Date: Wed, 15 Jul 2009 17:54:44 +0900

> ここからは当てずっぽうですが,pam でセッションを作ると,


> active = FALSE
> x11-display = ''
> x11-display-device = ''


> こんな感じです.一方,ck-launch-session で作ると,

> active = TRUE
> x11-display = ':0'
> x11-display-device = '/dev/tty7'

> active の所が FALSE と TRUE で違いますし,pam 方式だと
> x11-display-device に値が入りませんね.
>
> というわけで,適切に権限が割り当てられず,色々制御出来ないんじゃないで
> しょうか?

手もとでも調べてみたら,Debian 方面でも議論になっていました.

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=520720

斜め読みした感じでは,

・libpam_ck_connector.so は x11-display に値が入っていないと active=FALSE になる

・本来 ConsoleKit は,GUI 環境での fast-user-switch のために導入された
機能なので,GUIログインでない場合に active=FALSE になるのは仕様らしい.

・コンソールログイン後に xinit なり startx する場合は,
ck-launch-session 経由で起動すればシートは割りあてられるはずだが,
libpam_ck_connector.so を通すと,XDG_SESSION_COOKIE が割りあてられてしまって,
これがあると新しいシートは割りあてられない.

・/etc/X11/Xsession.d/90consolekit をイジれば何とかなるのでは?

# これは Debian 固有の処理かな?

・ck-connector にパッチあててパッケージ化したのでテストしてね

みたいな感じですね.

このパッチを試してみるのも面白そうですが,個人的にはそこまでして
ConsoleKit に付き合うのもイヤだなぁ,,という感じなので,とりあえず加藤
さんのご指摘のように libpam_ck_connector.so は使わないようにして,X の
起動時に ck-launch-session するように直してみます.

> 手元では runlevel 3/4 同居のため
>
> if [ -z `ck-list-sessions | head -n 1` ]; then
> echo "no session" > ~/login.log
> ck-launch-session startxfce4
> else
> echo "session exists" > ~/login.log
> startxfce4
> fi
>
> こんな感じで .xinitrc で実行してます.(.xsession は .xinitrc へリンク)
>

これも混ぜておいた方が便利そうですね.

-------
こじま

投稿者 xml-rpc : 2009年7月15日 21:03
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/86682
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。