set -u
set -e
-if ! [ $(ls $target/boot/config-* 2>/dev/null) ] ; then
+if ! ls $target/boot/config-* &>/dev/null ; then
echo "No kernel config files (/boot/config-*) found. No kernel-image package installed?" >&2
exit 1
fi
echo "Running localepurge"
$ROOTCMD localepurge
else
- echo "Warning: localepurg not installed"
+ echo "Warning: localepurge not installed"
+fi
+
+# revert dpkg-divert of hooks/instsoft.GRMLBASE, which is
+# used to work around /etc/kernel/postinst.d/zz-update-grub failing
+# inside openvz environment, see #597084
+if $ROOTCMD dpkg-divert --list | grep -q '/usr/sbin/update-grub' ; then
+ echo "Undoing dpkg-divert of update-grub executable"
+ $ROOTCMD rm -f /usr/sbin/update-grub
+ $ROOTCMD dpkg-divert --rename --remove /usr/sbin/update-grub
+fi
+
+# revert udev workaround of hooks/updatebase.GRMLBASE
+if grep -q 'updatebase.GRMLBASE' ${target}/etc/udev/kernel-upgrade 2>/dev/null ; then
+ echo "Removing /etc/udev/kernel-upgrade created by updatebase.GRMLBASE"
+ $ROOTCMD rm -f /etc/udev/kernel-upgrade
fi
echo "Removing /var/lib/apt/lists/*-stuff, dpkg-status-old and pkgcache.bin"
echo "Cleaning log and cache directories"
nuke ${target}/var/log ${target}/var/cache
-zero ${target}/var/local ${target}/var/log \
- ${target}/var/spool ${target}/var/lib/games \
- ${target}/var/cache/man ${target}/var/lib/nfs \
- ${target}/var/lib/xkb ${target}/var/mail/grml \
- ${target}/var/account/pacct
+zero ${target}/var/account/pacct \
+ ${target}/var/cache/man \
+ ${target}/var/lib/games \
+ ${target}/var/lib/nfs \
+ ${target}/var/lib/xkb \
+ ${target}/var/local \
+ ${target}/var/log \
+ ${target}/var/mail/grml
# on /run we don't have to create it
if [ -d ${target}/var/run ] ; then
$ROOTCMD ldconfig
fi
-if [ -x $target/usr/bin/update-menus ] ; then
+if ! [ -x $target/usr/bin/update-menus ] ; then
echo "Warning: update-menus not installed"
else
echo "Updating windowmanager menus"
echo "Warning: clamav[-freshclam] not installed"
else
echo "Cleaning /var/lib/clamav/"
- rm -f $target/var/lib/clamav/clamav-*
+ $ROOTCMD rm -rf /var/lib/clamav/clamav-*
echo "Setting up daily.cvd and main.cvd symlinks"
if [ -f $target/var/lib/clamav/daily.cvd ] ; then
EOF
fi
-if ! [ -x $target/usr/bin/updatedb ] ; then
+if ! $ROOTCMD test -x /usr/bin/updatedb ; then
echo "Warning: updatedb not installed"
else
echo "Updating locate-database"