openafs-client install fails in upgrade to Gutsy - Ubuntu

This is a discussion on openafs-client install fails in upgrade to Gutsy - Ubuntu ; I have just upgraded from Fesity to Gutsy, running a dist-upgrade. Before doing so, I made sure that all previous package updates were installed. The installation of openafs-client failed during the upgrade. If I now try to manually install the ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: openafs-client install fails in upgrade to Gutsy

  1. openafs-client install fails in upgrade to Gutsy

    I have just upgraded from Fesity to Gutsy, running a dist-upgrade.
    Before doing so, I made sure that all previous package updates were
    installed.
    The installation of openafs-client failed during the upgrade. If I now
    try to manually install the package, I get the following output:

    $ sudo apt-get install openafs-client
    Indlæser pakkelisterne... Færdig
    Opbygger afhængighedstræ
    Reading state information... Færdig
    openafs-client er i forvejen den nyeste version.
    0 opgraderes, 0 nyinstalleres, 0 afinstalleres og 0 opgraderes ikke.
    1 ikke fuldstændigt installerede eller afinstallerede.
    0B skal hentes fra arkiverne.
    Efter udpakning vil 0B yderligere diskplads være brugt.
    Sætter openafs-client (1.4.4.dfsg1-7) op...
    dpkg: fejl under behandling af openafs-client (--configure):
    underproces post-installation script returnerede afslutningsstatus 1
    Der opstod fejl under behandlingen:
    openafs-client
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    Now, my Ubuntu is in Danish, but the skilled user will probably
    recognize apt-get's usual steps. The error message says something like:

    dpkg: error during processing of openafs-client (--configure):
    sub process post-installation script returned exit status 1
    There were errors during processing:
    openafs-client
    E: Sub-process /usr/bin/dpkg returned an error code (1)

    Apparently, openafs-client does actually work; if I boot on a 2.6.20
    kernel from my Feisty install, for which I already have working openafs
    kernel modules, it all works fine. The problem is that I need to compile
    new modules for the new Gutsy kernel. I cannot do so, because these
    depend on the openafs-client package.
    I have googled for bug reports on this matter but haven't been able to
    find anything useful.
    Does someone here have any suggestions?

    Thomas Arildsen

  2. Re: openafs-client install fails in upgrade to Gutsy

    On Sun, 21 Oct 2007 10:54:03 +0200, Thomas Arildsen wrote:

    > dpkg: error during processing of openafs-client (--configure):
    > sub process post-installation script returned exit status 1
    > There were errors during processing:
    > openafs-client
    > E: Sub-process /usr/bin/dpkg returned an error code (1)


    I had a similar problem with package pdns-recursor during the upgrade to
    gutsy.

    'error code (1)' usually means that dpkg was unable to stop the program.

    In my case, starting the program first allowed the installation to work.

    So, maybe something like this in a console session (untested):

    > sudo /etc/init.d/openafs-client start
    > sudo dpkg -i /var/cache/apt/openafs-client*.deb



    Anyway, something similar was required during my upgrade.



  3. Re: openafs-client install fails in upgrade to Gutsy

    Joe User skrev:
    > On Sun, 21 Oct 2007 10:54:03 +0200, Thomas Arildsen wrote:
    >
    >> dpkg: error during processing of openafs-client (--configure):
    >> sub process post-installation script returned exit status 1
    >> There were errors during processing:
    >> openafs-client
    >> E: Sub-process /usr/bin/dpkg returned an error code (1)

    >
    > I had a similar problem with package pdns-recursor during the upgrade to
    > gutsy.
    >
    > 'error code (1)' usually means that dpkg was unable to stop the program.
    >
    > In my case, starting the program first allowed the installation to work.
    >
    > So, maybe something like this in a console session (untested):
    >
    >> sudo /etc/init.d/openafs-client start
    >> sudo dpkg -i /var/cache/apt/openafs-client*.deb

    >
    >
    > Anyway, something similar was required during my upgrade.
    >


    I can start openafs-client, if I boot with an earlier kernel. If I do so
    and then try apt-get install again, it still refuses to install.
    I have tried to debug the post-install script a bit. The script
    (/var/lib/dpkg/info/openafs-client.postinst) looks as follows:

    #! /bin/sh
    #
    # Summary of how this script can be called:
    #
    # * `configure'
    # * `abort-upgrade'
    # * `abort-remove' `in-favour'
    #
    # * `abort-deconfigure' `in-favour'
    # `removing'
    #

    set -e

    case "$1" in
    configure)
    update-alternatives --install /usr/bin/pagsh pagsh \
    /usr/bin/pagsh.openafs 100 \
    --slave /usr/share/man/man1/pagsh.1.gz pagsh.1.gz \
    /usr/share/man/man1/pagsh.openafs.1.gz

    test -d /afs || mkdir /afs

    . /usr/share/debconf/confmodule
    db_version 2.0

    db_get openafs-client/thiscell
    echo $RET >/etc/openafs/ThisCell
    THISCELL=$RET

    if test -f /etc/openafs/CellServDB ; then
    :
    else
    cp /usr/share/openafs/CellServDB /etc/openafs
    fi

    # If ThisCell is not in CellServDB, we have to prompt the user for the
    # VLDB servers. Unfortunately, we can't do this in config because we
    # need the CellServDB file, which is part of the package. We have to
    # override a lintian warning for this since prompts at installation
    time
    # are frowned upon.
    if grep -q -F "$RET" /etc/openafs/CellServDB && [ "x$RET" != "x" ]
    ; then
    :
    else
    db_input critical openafs-client/cell-info || true
    db_input high openafs-client/run-client || true
    db_go
    db_get openafs-client/cell-info
    if [ "x$RET" != "x" ] ; then
    echo \>$THISCELL > /etc/openafs/CellServDB.new
    perl -MSocket -e 'foreach (@ARGV) {' \
    -e '@a=gethostbyname($_) and ' \
    -e 'printf("%s\t\t# %s\n",inet_ntoa($a[4]),$a[0]) }' $RET \
    >>/etc/openafs/CellServDB.new

    if [ `wc -l echo None of the hostnames resolved to an address 2>&1
    db_reset openafs-client/cell-info || true
    exit 1
    fi
    cat /etc/openafs/CellServDB.new /etc/openafs/CellServDB \
    >/etc/openafs/CellServDB.tmp

    mv /etc/openafs/CellServDB.tmp /etc/openafs/CellServDB
    rm /etc/openafs/CellServDB.new
    fi
    fi

    db_get openafs-client/cachesize
    echo /afs:/var/cache/openafs:$RET >/etc/openafs/cacheinfo

    db_get openafs-client/run-client
    echo AFS_CLIENT=$RET >/etc/openafs/afs.conf.client
    db_get openafs-client/afsdb
    echo AFS_AFSDB=$RET >>/etc/openafs/afs.conf.client
    db_get openafs-client/crypt
    echo AFS_CRYPT=$RET >>/etc/openafs/afs.conf.client
    db_get openafs-client/dynroot
    echo AFS_DYNROOT=$RET >>/etc/openafs/afs.conf.client
    db_get openafs-client/fakestat
    echo AFS_FAKESTAT=$RET >>/etc/openafs/afs.conf.client
    ;;

    abort-upgrade|abort-remove|abort-deconfigure)
    ;;

    *)
    echo "postinst called with unknown argument '$1'" >&2
    exit 0
    ;;
    esac

    # dh_installdeb will replace this with shell code automatically
    # generated by other debhelper scripts.

    # Automatically added by dh_installinit
    if [ -x "/etc/init.d/openafs-client" ]; then
    update-rc.d openafs-client defaults 25 18 >/dev/null
    if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
    invoke-rc.d openafs-client start || exit $?
    else
    /etc/init.d/openafs-client start || exit $?
    fi
    fi
    # End automatically added section


    exit 0


    If I run the script as follows: sudo bash -x
    /var/lib/dpkg/info/openafs-client.postinst configure 2>afs-err, afs-err
    reads:

    + set -e
    + case "$1" in
    + update-alternatives --install /usr/bin/pagsh pagsh
    /usr/bin/pagsh.openafs 100 --slave /usr/share/man/man1/pagsh.1.gz
    pagsh.1.gz /usr/share/man/man1/pagsh.openafs.1.gz
    + test -d /afs
    + . /usr/share/debconf/confmodule
    ++ '[' '!' '' ']'
    ++ PERL_DL_NONLAZY=1
    ++ export PERL_DL_NONLAZY
    ++ '[' '' ']'
    ++ exec /usr/share/debconf/frontend
    /var/lib/dpkg/info/openafs-client.postinst configure

    I don't have any experience debugging this kind of scripts, so I can't
    really figure out what goes wrong, but it looks to me as if it never
    gets very far in the script...

    Examining the script, there are several things I cannot figure out in
    the lines:
    . /usr/share/debconf/confmodule
    db_version 2.0

    db_get openafs-client/thiscell
    echo $RET >/etc/openafs/ThisCell
    THISCELL=$RET

    Whatever /usr/share/debconf/confmodule is, it does not seem to exist on
    my system. Are db_version and db_get commands? If so, I cannot find them
    or run them. What is in $RET?

    Thomas Arildsen

  4. Re: openafs-client install fails in upgrade to Gutsy

    Thomas Arildsen skrev:
    > I have just upgraded from Fesity to Gutsy, running a dist-upgrade.
    > Before doing so, I made sure that all previous package updates were
    > installed.
    > The installation of openafs-client failed during the upgrade.

    [cut]
    >
    > Apparently, openafs-client does actually work; if I boot on a 2.6.20
    > kernel from my Feisty install, for which I already have working openafs
    > kernel modules, it all works fine. The problem is that I need to compile
    > new modules for the new Gutsy kernel. I cannot do so, because these
    > depend on the openafs-client package.
    > I have googled for bug reports on this matter but haven't been able to
    > find anything useful.
    > Does someone here have any suggestions?
    >


    I lost patience with this package. Since it apparently works as it is,
    probably because of the old install from Feisty, I decided to just hack
    the post-install script. I simply inserted an 'exit 0' after 'test -d
    /afs || mkdir /afs' in the configure section of the script. This forced
    the script to exit (prematurely) without errors and apt-get then thinks
    everything is OK. Now I can compile the kernel module and openafs starts
    afterwards.

    Thomas Arildsen

+ Reply to Thread