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

[debian-users:30637] Re: adduser のバグ (112921) の回避



磯部です。

From: Fumitoshi UKAI <ukai@debian.or.jp>
Subject: [debian-users:30636] Re: adduser のバグ (112921) の回避
Date: Fri, 16 Nov 2001 17:18:03 +0900

> At Fri, 16 Nov 2001 16:50:35 +0900,
> ISOBE Norikazu wrote:
> 
> > woody を使っているのですが、BTS に登録されている 112921 の
> > adduser のバグですが、皆さんどうやって回避しているのでしょう
> > か。
> 
> 再現しないような…

あぁ、やっぱり。だから話題にならないんですね...

>  # debconf-show adduser
>  の出力はどうですか?

何も返ってきません。

>  # sh -vx /var/lib/dpkg/info/adduser.postinst configure
>  でどうなりますか?

こう表示されました。

----- ここから ----- ここから ----- ここから ----- ここから -----
% sudo sh -vx /var/lib/dpkg/info/adduser.postinst configure
#!/bin/sh -e

if [ "$1" = "configure" ]; then
        if [ -d /usr/doc -a ! -e /usr/doc/adduser -a -d /usr/share/doc/adduser ]; then
                ln -sf ../share/doc/adduser /usr/doc/adduser
        fi
fi
+ '[' configure = configure ']'
+ '[' -d /usr/doc -a '!' -e /usr/doc/adduser -a -d /usr/share/doc/adduser ']'

# create an initial adduser configfile if it does not exist yet
if [ ! -e "/etc/adduser.conf" ]; then
        cp /usr/share/doc/adduser/examples/adduser.conf /etc/adduser.conf
fi
+ '[' '!' -e /etc/adduser.conf ']'

# modify adduser.conf
if . /usr/share/debconf/confmodule
then    
        db_get adduser/homedir-changed || RET="false"
        if [ $RET != "true" ]
        then
                db_get adduser/homedir-permission
                if [ $RET = "false" ]
                then
                        NEW_PERMISSION="0751"
                else
                        NEW_PERMISSION="0755"
                fi

                if grep -q '^DIR_MODE=' /etc/adduser.conf
                then
                        OLD_PERMISSION=$(cat /etc/adduser.conf|sed -ne 's/^DIR_MODE=\([0-9]*\).*$/\1/p')
                        if [ "$OLD_PERMISSION" != "$NEW_PERMISSION" ]; then
                                mv /etc/adduser.conf /etc/adduser.conf.dpkg-save
                                cat /etc/adduser.conf.dpkg-save | \
                                sed -e "s/^DIR_MODE=.*$/DIR_MODE=$NEW_PERMISSION/" > \
                                /etc/adduser.conf
                        fi
                else
                        cp /etc/adduser.conf /etc/adduser.conf.dpkg-save
                        echo "DIR_MODE=$NEW_PERMISSION" >> /etc/adduser.conf
                fi
        fi
fi
+ . /usr/share/debconf/confmodule
#!/bin/sh
# This is a shell library to interface to the Debian configration management
# system.

###############################################################################
# Initialization.

# Check to see if a FrontEnd is running.
if [ ! "$DEBIAN_HAS_FRONTEND" ]; then
        # Ok, this is pretty crazy. Since there is no FrontEnd, this
        # program execs a FrontEnd. It will then run a new copy of $0 that
        # can talk to it.
        exec /usr/share/debconf/frontend $0 "$@"
fi
++ '[' '!' '' ']'
++ exec /usr/share/debconf/frontend /var/lib/dpkg/info/adduser.postinst configure
Exit 10
----- ここまで ----- ここまで ----- ここまで ----- ここまで -----

何か分かるでしょうか。

よろしくお願いします。
============================================================================
磯部則和 (^^ゞ isobe@xxxxxxxxxxxxx
============================================================================