#!/bin/bash
set -x
set -e apt-
dpkg --assert-support-predepends
if [ "$1" = upgrade ]
then
if [ -f /var/lib/dpkg/info/timezone.postrm ]; then
rm -f /var/lib/dpkg/info/timezone.postrm
fi
if [ -f /var/lib/dpkg/info/timezones.postrm ]; then
rm -f /var/lib/dpkg/info/timezones.postrm
fi
if dpkg --compare-versions "$2" lt 2.1.3-8; then
if [ -s /etc/timezone ]; then
cp -a /etc/timezone /etc/timezone.save
fi
fi
if dpkg --compare-versions "$2" le 2.2.2-4 && test -e /lib/libdb.so.3; then
# Make upgrades to newer libdb.so.3 easier
cat /lib/libdb.so.3 > /lib/libdb.so.3.old
fi
if dpkg --compare-versions "$2" le 2.1.1-0.1; then
if [ -f /var/run/utmpd.pid ]; then
if kill -TERM `cat /var/run/utmpd.pid` > /dev/null 2>&1
then
if [ -f /var/run/utmp ]; then
cp /dev/null /var/run/utmp
if grep '^utmp:' /etc/group; then
chown root:utmp /var/run/utmp
chmod 664 /var/run/utmp
else
chown root:root /var/run/utmp
chmod 644 /var/run/utmp
fi
fi
if [ -f /var/log/wtmp ]; then
savelog /var/log/wtmp
touch /var/log/wtmp
if grep '^utmp:' /etc/group; then
chown root:utmp /var/log/wtmp
chmod 664 /var/log/wtmp
else
chown root:root /var/log/wtmp
chmod 644 /var/log/wtmp
fi
fi
rm -f /etc/init.d/utmpd
update-rc.d utmpd remove > /dev/null
fi
fi
if [ -f /var/run/utmpx ]; then rm -f /var/run/utmpx; fi
if [ -f /var/log/wtmpx ]; then rm -f /var/log/wtmpx*; fi
if [ -e /var/run/utmpd.ro ]; then rm -f /var/run/utmpd.ro; fi
if [ -e /var/run/utmpd.rw ]; then rm -f /var/run/utmpd.rw; fi
fi
# NSS authentication trouble guard
if dpkg --compare-versions $2 lt 2.2.94-1; then
check="xdm kdm gdm postgresql xscreensaver"
# Only get the ones that are installed, and configured
service=$(dpkg -s $check 2> /dev/null | awk 'BEGIN{RS="\n\n";FS="\n"}{if ( $2 ~ /Status: .* installed$/ ) { print $1 } }' | cut -f 2 -d ' ')
echo
echo "Name Service Switch has changed in the C Library: pre-installation question."
echo
echo "Running programs may not be able to do NSS lookups until they are restarted."
echo "Some services can not accept all authentication after extracting glibc"
echo "package into your system. This script automatically restarts some packages"
echo "for example ssh or telnetd, but other packages for example xdm"
echo "cannot restart because if it restarts automatically, then your X11 session"
echo "is disconnected. So you have to logout and stop xdm; you have to"
echo "restart all such services after upgrading libc6 with your hands."
echo "Known packages that are needed to stop before installing glibc 2.3:"
echo " $check"
echo
if [ -n "$service" ]; then
echo "This script detects services which need to stop: $service"
echo "If you are invoking these services, please stop before upgrading."
else
echo "This script does not detect services which need to stop."
fi
echo "If you want to stop upgrade for the present, please answer the below"
echo "question as No."
echo
frontend=`echo "$DEBIAN_FRONTEND" | tr '[:upper:]' '[:lower:]'`
if [ "$frontend" = noninteractive ]; then
echo "Non-interactive mode, upgrade glibc forcely"
answer=yes
else
echo -n "Do you want to upgrade glibc? [Y/n] "
read answer
case $answer in
Y*|y*) answer=yes ;;
N*|n*) answer=no ;;
*) answer=yes ;;
esac
fi
echo
if [ "$answer" = no ]; then
echo "Stopped glibc upgrade. Please retry upgrade after you check"
echo "or stop services with your hands."
exit 1
fi
fi
# This will keep us from using hwcap libs (optimized) during an
# upgrade.
touch /etc/ld.so.nohwcap
echo glibc >> /etc/ld.so.nohwcap
fi
if [ "$1" != abort-upgrade ] && [ "`uname -s`" = Linux ]
then
# SPARC sun4m requires a recent kernel
realarch=`uname -m`
if [ "$realarch" = sparc ]
then
cputype=`egrep '^type.*:.*sun4m' /proc/cpuinfo 2> /dev/null` || true
kernel_ver=`uname -r`
if [ "$cputype" != "" ]
then
kernel_ver=`uname -r`
if dpkg --compare-versions "$kernel_ver" lt 2.2.7
then
echo WARNING: You have a cpu which requires kernel 2.2.7
echo or greater in order to install this version of libc6.
echo Please upgrade the kernel before installing this package.
echo
echo You should be able to install the latest version of the
echo sparc kernel-image in order to satisfy this need. You
echo can also download and compile the latest kernel source
echo yourself from a kernel mirror \(see
http://www.kernel.org/\).
exit 1
fi
else
if dpkg --compare-versions "$kernel_ver" lt 2.2.0 #should be safe
then
echo WARNING: This version of libc6 suggests atleast a
echo 2.2.0 kernel in order to work properly. 2.0.x kernels
echo will not be able to support certain functions and
echo may cause problems. 2.2 kernels have proven to be much
echo more reliable than 2.0.x kernels on the sparc platform
echo anyway, so an upgrade is suggested. If you have a 2.1.x
echo kernel is is suggested you upgrade to the latest 2.2
echo release, since it is more stable and fixes many bugs.
exit 1
fi
fi
fi
# HPPA boxes require latest fixes in the kernel to function properly.
if [ "$realarch" = parisc ]
then
kernel_ver=`uname -r`
if dpkg --compare-versions "$kernel_ver" lt 2.4.17
then
echo WARNING: This version of libc6 requires that you be running
echo atleast a 2.4.17 kernel in order to work properly. Earlier
echo kernels did not provide the proper functionality in order
echo for the system to be stable.
exit 1
fi
fi
# parisc64 boxes require latest fixes in the kernel 2.4.19-pa17 or later
# (in 2.4.x), 2.5.53-pa3 or later (in 2.5.x), to function properly.
# Note that parisc64 kernel version scheme is "`uname -r`-64".
if [ "$realarch" = parisc64 ]
then
kernel_ver=`uname -r`
if [ $kernel_ver = ${kernel_ver/pa/} ]
then
if dpkg --compare-versions "$kernel_ver" lt 2.4.19-64
then
echo WARNING: This version of libc6 requires that you be
echo running at least a 2.4.19-64 to work properly.
echo Earlier kernels did not provide the proper functionality
echo in order for the system to be stable.
exit 1
fi
else
if dpkg --compare-versions "$kernel_ver" lt 2.4.19-pa17
then
echo WARNING: This version of libc6 requires that you be
echo running at least a 2.4.19-pa17 in \(2.4\) or 2.5.53-pa3
echo \(in 2.5\) to work properly.
echo Earlier kernels did not provide the proper functionality
echo in order for the system to be stable.
exit 1
fi
fi
fi
fi
exit 0
Ths is the output that I got when it tried to do apt-get install -f