postinst is in openafs-client 1.6.1-1.
This file is a maintainer script. It is executed when installing (*inst) or removing (*rm) the package.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | #! /bin/sh
set -e
if [ "$1" = configure ] || [ "$1" = reconfigure ] ; then
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
update-alternatives --install /usr/bin/klog klog \
/usr/bin/klog.afs 10 \
--slave /usr/share/man/man1/klog.1.gz klog.1.gz \
/usr/share/man/man1/klog.afs.1.gz
test -d /afs || mkdir /afs
. /usr/share/debconf/confmodule
db_version 2.0
db_get openafs-client/thiscell
THISCELL="$RET"
if [ -n "$THISCELL" ] ; then
echo "$THISCELL" > /etc/openafs/ThisCell
fi
if [ ! -f /etc/openafs/CellServDB ] ; then
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.
#
# If the user is using afsdb for cell location, don't worry about
# prompting them for cells for their local system.
db_get openafs-client/afsdb
afsdb="$RET"
if grep -q -F "$THISCELL" /etc/openafs/CellServDB \
&& [ "x$THISCELL" != "x" ] ; then
:
elif [ x"$afsdb" != xtrue ] ; then
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 </etc/openafs/CellServDB.new` -eq 1 ] ; then
echo None of the hostnames resolved to an address 2>&1
db_reset openafs-client/cell-info || true
rm /etc/openafs/CellServDB.new
else
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
fi
# Our config script will have already taken care of extracting the cache
# size from the cacheinfo file and using it as the default for the debconf
# prompt, but the mount point and cache directory have no debconf prompts.
# For those, we need to get the default from the file.
mountpoint=/afs
cachedir=/var/cache/openafs
if [ -r /etc/openafs/cacheinfo ] ; then
IFS=: read mountpoint cachedir cachesize < /etc/openafs/cacheinfo
fi
db_get openafs-client/cachesize
echo "${mountpoint}:${cachedir}:${RET}" > /etc/openafs/cacheinfo
echo <<'EOF' > /etc/openafs/afs.conf.client
# This file is managed by debconf. You may change the parameters set below,
# but any additional lines or comments will be lost when the package is
# upgraded or reconfigured. Local modifications other than setting the
# following parameters should be made in /etc/openafs/afs.conf instead.
EOF
db_get openafs-client/run-client
echo AFS_CLIENT="$RET" > /etc/openafs/afs.conf.client
echo AFS_AFSDB="$afsdb" >> /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
fi
# Automatically added by dh_installinit
if [ -x "/etc/init.d/openafs-client" ]; then
if [ ! -e "/etc/init/openafs-client.conf" ]; then
update-rc.d openafs-client defaults 25 20 >/dev/null
fi
invoke-rc.d openafs-client start || exit $?
fi
# End automatically added section
exit 0
|