X-Git-Url: https://git.grml.org/?p=grml-live.git;a=blobdiff_plain;f=etc%2Fgrml%2Ffai%2Fconfig%2Fscripts%2FGRMLBASE%2F98-clean-chroot;h=c053a9e457eb94ae0170e93ae1bbd0cdd973adeb;hp=e397aa2bcbc6c41e26e8f54b4a992bf3176cb321;hb=005cdc1ea39899e025f302f05e16fb93bb66fee9;hpb=866b47c0652d8ce6d1bea20442f8ab273b5ba99a diff --git a/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot b/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot index e397aa2..c053a9e 100755 --- a/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot +++ b/etc/grml/fai/config/scripts/GRMLBASE/98-clean-chroot @@ -9,7 +9,7 @@ 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 @@ -17,11 +17,13 @@ fi echo "Creating ~/.zshrc" touch $target/root/.zshrc +$ROOTCMD rm -f /etc/apt/apt.conf.d/90grml-apt-proxy.conf + if [ -x $target/usr/sbin/localepurge ] ; then 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 @@ -33,6 +35,12 @@ if $ROOTCMD dpkg-divert --list | grep -q '/usr/sbin/update-grub' ; then $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" rm -f $target/var/lib/apt/lists/*Packages \ $target/var/lib/apt/lists/*Release \ @@ -66,6 +74,9 @@ fi echo "Removing host ssh-keys" rm -f $target/etc/ssh/*key* +echo "Removing dbus machine-id" +rm -f $target/var/lib/dbus/machine-id + if [ -d $target/var/spool/squid/ ] ; then echo "Cleaning /var/spool/squid/0*" rm -rf $target/var/spool/squid/0* @@ -97,18 +108,21 @@ nuke(){ # set all files in the given directories to a length of zero zero(){ - for i in $(find "$@" -type f -size +0 -not -name \*.ini 2>/dev/null); do + for i in $(find "$@" -type f -size +0 -not -name \*.ini -not -path '*/fai/*' 2>/dev/null); do :> "$i" done } 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 @@ -192,7 +206,7 @@ else 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"