[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][TOP]

XFree86-3.3.5 + gdm でのログイン不能


ほそのです。

To: kondara-users@xxxxxxxxxxx
From: Hidetomo Hosono <h@xxxxxxxxxxx>
Subject: [Kondara-users:00261] gdm ログイン不能
Date: Tue, 14 Dec 1999 19:09:48 +0900

 卑しくも Kondara Project GNOME 野郎 A ちーむを名乗っておりながらお恥ず
かしいのですが、ひとつ困ったことが起きています。

 Red Hat Linux 6.0 から少しづつ Kondara の RPM を入れていった状態である
現在のマシンに、RHL 6.0 の状態で残っていた XFree86 (3.3.3.1) をコのスナッ
プショットの XFree86-3.3.5-15k1 に上げてみたところ、gdm 自体は起動するも
のの、gdm からのログイン不能に陥りました。

 どうログイン不能かと申しますと、/var/log/messages の写しには
----------------------------------------------------------------------
Dec 16 01:22:57 localhost gdm[463]: gdm_main: Here we go...
Dec 16 01:22:57 localhost gdm[463]: gdm_local_servers_start: Starting :0
Dec 16 01:22:57 localhost gdm[463]: gdm_server_start: :0
Dec 16 01:22:57 localhost gdm[463]: gdm_auth_secure_display: Setting up access for :0
Dec 16 01:22:57 localhost gdm[463]: gdm_auth_secure_display: Setting up socket access
Dec 16 01:22:57 localhost gdm[463]: gdm_auth_secure_display: Setting up network access
Dec 16 01:22:57 localhost gdm[463]: gdm_auth_secure_display: Setting up access for :0 - 2 entries
Dec 16 01:22:57 localhost gdm[471]: gdm_server_start: '/usr/bin/X11/X -deferglyphs 16 -dpi 75 -auth /var/gdm/:0.Xauth :0'
Dec 16 01:22:58 localhost gdm[463]: gdm_server_usr1_handler: Starting display :0!
Dec 16 01:22:58 localhost gdm[463]: gdm_display_manage: Managing :0
Dec 16 01:22:58 localhost gdm[463]: gdm_display_manage: Forked slave: 472
Dec 16 01:22:58 localhost gdm[472]: gdm_slave_start: Starting slave process for :0
Dec 16 01:22:58 localhost gdm[472]: gdm_slave_start: Opening display :0
Dec 16 01:23:02 localhost gdm[472]: gdm_slave_greeter: Running greeter on :0
Dec 16 01:23:04 localhost gdm[472]: gdm_slave_greeter: Greeter on pid 479
Dec 16 01:23:06 localhost gdmlogin[479]: No default session link found. Using GNOME. 
Dec 16 01:23:39 localhost PAM_pwdb[472]: (gdm) session opened for user hidetomo by (uid=0)
Dec 16 01:23:40 localhost gdm[472]: gdm_slave_session_start: Authentication completed. Whacking greeter
Dec 16 01:23:40 localhost gdm[472]: gdm_slave_windows_kill: Killing windows on :0
Dec 16 01:23:40 localhost gdm[472]: gdm_auth_user_add: Adding cookie for 1000
Dec 16 01:23:40 localhost gdm[472]: gdm_auth_user_add: Using /home/hidetomo/.Xauthority for cookies
Dec 16 01:23:40 localhost gdm[472]: gdm_auth_purge: :0
Dec 16 01:23:40 localhost gdm[472]: gdm_auth_user_add: Done
Dec 16 01:23:40 localhost gdm[482]: Running /etc/X11/xinit/Xsession for hidetomo on :0
Dec 16 01:23:40 localhost gdm[472]: gdm_slave_session_stop: hidetomo on :0
                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dec 16 01:23:40 localhost gdm[472]: gdm_verify_cleanup: Closing session 134622928
Dec 16 01:23:40 localhost PAM_pwdb[472]: (gdm) session closed for user hidetomo
Dec 16 01:23:41 localhost gdm[472]: gdm_auth_user_remove: Removing cookie from /home/hidetomo/.Xauthority (0)
Dec 16 01:23:41 localhost gdm[472]: gdm_auth_user_remove: /home/hidetomo is not owned by uid 0.
Dec 16 01:23:41 localhost gdm[472]: gdm_auth_user_remove: Ignoring suspiciously looking cookie file /home/hidetomo/.Xauthority
Dec 16 01:23:41 localhost gdm[472]: gdm_slave_session_cleanup: root on :0
Dec 16 01:23:41 localhost gdm[472]: gdm_slave_session_cleanup: Running post session script
Dec 16 01:23:41 localhost gdm[472]: gdm_slave_xsync_ping: Pinging :0
Dec 16 01:23:41 localhost gdm[472]: gdm_slave_xsync_ping: :0 returned 1
Dec 16 01:23:41 localhost gdm[472]: gdm_slave_session_cleanup: Killing windows
Dec 16 01:23:41 localhost gdm[472]: gdm_slave_windows_kill: Killing windows on :0
Dec 16 01:23:41 localhost gdm[463]: gdm_child_handler: child 472 returned 2
Dec 16 01:23:41 localhost gdm[463]: gdm_child_handler: :0
Dec 16 01:23:41 localhost gdm[463]: gdm_server_start: :0
Dec 16 01:23:41 localhost gdm[463]: gdm_server_start: Old server found (471). Killing.
Dec 16 01:23:41 localhost gdm[463]: gdm_server_stop: Server for :0 going down!
Dec 16 01:23:41 localhost gdm[463]: gdm_auth_secure_display: Setting up access for :0
Dec 16 01:23:41 localhost gdm[463]: gdm_auth_secure_display: Setting up socket access
Dec 16 01:23:41 localhost gdm[463]: gdm_auth_secure_display: Setting up network access
Dec 16 01:23:41 localhost gdm[463]: gdm_auth_secure_display: Setting up access for :0 - 2 entries
Dec 16 01:23:41 localhost gdm[499]: gdm_server_start: '/usr/bin/X11/X -deferglyphs 16 -dpi 75 -auth /var/gdm/:0.Xauth :0'
Dec 16 01:23:41 localhost gdm[463]: gdm_server_usr1_handler: Starting display :0!
Dec 16 01:23:41 localhost gdm[463]: gdm_display_manage: Managing :0
----------------------------------------------------------------------
と残っております。つまり、/etc/X11/xinit/Xsession を走らせている途中で
X サーバがコケているのです。/etc/X11/xinit/Xsession はどうなっているか
(コメントは削除) と申しますと、
----------------------------------------------------------------------
#!/bin/bash -login

site_session=/etc/sysconfig/xinit-session
user_session=$HOME/.xinit.d/session
site_xim=/etc/sysconfig/xinit-xim
user_xim=$HOME/.xinit.d/xim
site_lang=/etc/sysconfig/xinit-lang
user_lang=$HOME/.xinit.d/lang

session_dir=/etc/X11/xinit/session.d
xim_dir=/etc/X11/xinit/xim.d
lang_dir=/etc/X11/xinit/lang.d

/usr/X11R6/bin/xrdb -load /dev/null

if [ ! -d $HOME/.xinit.d ]; then
	rm -rf $HOME/.xinit.d
	mkdir $HOME/.xinit.d
fi

case $# in
3)
	# "Session" option
        case $1 in
        Failsafe)
                exec /usr/X11R6/bin/xterm -geometry 80x24-0-0
		exit 1
                ;;
	NoChange)
		;;
	*)
		echo $1 > $user_session
        esac

	# "Language" option
	case $2 in
	None)
		echo > $user_lang
		;;
	NoChange)
		;;
	*)
		echo $2 > $user_lang
	esac

	# "Input Method" option
	case $3 in
	None)
		echo > $user_xim
		;;
	NoChange)
		;;
	*)
		echo $3 > $user_xim
	esac
esac

for errfile in "$HOME/.xsession-errors" "/tmp/xses-$USER"
do
	if ( cp /dev/null "$errfile" 2> /dev/null )
	then
		chmod 600 "$errfile"
		exec > "$errfile" 2>&1
		break
	fi
done

if [ -x /usr/X11R6/bin/freetemp ]; then
	/usr/X11R6/bin/freetemp
fi

exec /etc/X11/xinit/xinitrc
echo "Failed to execute /etc/X11/xinit/xinitrc"
exit 1
----------------------------------------------------------------------
となっております。で、~/.xsession-errors のタイムスタンプを見ると、
XFree86-3.3.5 を入れる直前のタイムスタンプになっています。つまり、
----------------------------------------------------------------------
for errfile in "$HOME/.xsession-errors" "/tmp/xses-$USER"
do
	if ( cp /dev/null "$errfile" 2> /dev/null )
	then
		chmod 600 "$errfile"
		exec > "$errfile" 2>&1
		break
	fi
done
----------------------------------------------------------------------
実行以前で X サーバが死んでいるわけです。

 では、gdm から root でログインするとどうなるか、と申しますと、
/root/.xsession-errors に
----------------------------------------------------------------------
Xlib: connection to ":0.0" refused by server
Xlib: Client is not authorized to connect to Server
----------------------------------------------------------------------
というエラーが残ります。というわけで、xauth まわりかなぁ、と考えてみたり
していますが、何故今になって拒絶されるのかが分かりません。で、落ちる前に
実行する文といえば
----------------------------------------------------------------------
/usr/X11R6/bin/xrdb -load /dev/null
----------------------------------------------------------------------
の1行しか考えられないのですが、ここで xauth の認証にひっかかるのだとすれ
ば、その理由が全く理解出来ません。
 パーミッションがおかしいものがあるのかな? と思ったのですが、特におかし
いものも見つからず…。
----------------------------------------------------------------------
lrwxrwxrwx   1 root     root            8 Aug  2 04:10 /usr/X11R6/bin/X -> Xwrapper
-rws--x--x   1 root     root         6260 Dec 13 01:50 /usr/X11R6/bin/Xwrapper
-rwxr-xr-x   1 root     root        85188 Dec  6 08:23 /usr/bin/gdm
-rwxr-xr-x   1 root     root        20552 Dec  6 08:23 /usr/bin/gdmchooser
-rwxr-xr-x   1 root     root        39712 Dec  6 08:23 /usr/bin/gdmlogin
----------------------------------------------------------------------
仕方がないので、現在は gdm 経由ではなく startx 経由で GNOME を使っていま
す。

 たぶん何か見落としているところがあるのだろうと思います。というわけで、
お気付きの点がありましたら指摘して頂けると有難く思います。
kondara-users でも質問してみたのですが、芳しい反応がありませんでしたので
こちらでお知恵をお借り出来ればと考えています。

 では。

----
ほその "はこんだら" ひでとも @ Kondara Project GNOME 野郎 A ちーむ
http://www.kondara.org/~h/