# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
-# Latest change: Fre Nov 03 23:42:36 CET 2006 [mika]
+# Latest change: Mon Nov 06 11:52:24 CET 2006 [mika]
################################################################################
set -e # exit on any error
echo "Activating shadow passwords."
shadowconfig on
echo "Setting password for user root:"
+# TODO: typing the wrong password will exit chroot script
passwd
echo ""
# generate initrd
if [ -n "$INITRD" ] ; then
if [ "$RELEASE" = 'sarge' ] ; then
- einfo "Release sarge detected, will not create an initrd."
- return 0
- fi
- echo "Generating initrd."
- update-initramfs -c -t -k $KERNELVER
- if [ -f "/boot/initrd.img-$KERNELVER" ] ; then
- GRUBINITRD="initrd /boot/initrd.img-$KERNELVER"
- LILOINITRD=" initrd=/boot/initrd.img-$KERNELVER"
+ echo "Release sarge detected, will not create an initrd."
+ else
+ echo "Generating initrd."
+ update-initramfs -c -t -k $KERNELVER
+ if [ -f "/boot/initrd.img-$KERNELVER" ] ; then
+ GRUBINITRD="initrd /boot/initrd.img-$KERNELVER"
+ LILOINITRD=" initrd=/boot/initrd.img-$KERNELVER"
+ fi
fi
fi
# copy stage-files to /boot/grub/
[ -d /boot/grub/ ] || mkdir /boot/grub
- cp /usr/lib/grub/i386-pc/* /boot/grub/
+ if [ -d /usr/lib/grub/i386-pc/ ] ; then
+ cp /usr/lib/grub/i386-pc/* /boot/grub/
+ else
+ # sarge ships grub files in another directory
+ cp /lib/grub/i386-pc/* /boot/grub/
+ fi
# finally install grub
update-grub -y
- sed -i "s/groot=.*/groot=(${GROOT})/g" /boot/grub/menu.lst
+ sed -i "s/^# groot=.*/# groot=(${GROOT})/g" /boot/grub/menu.lst
# not sure why savedefault does not work for me; any ideas?
sed -i "s/^savedefault.*/# &/g" /boot/grub/menu.lst
update-grub -y
fi
# make sure we don't have any running processes left
-[ -x /etc/init.d/ssh ] && /etc/init.d/ssh stop
+for service in ssh mdadm mdadm-raid ; do
+ [ -x "/etc/init.d/$service" ] && "/etc/init.d/$service" stop
+done
# unmount all filesystems in chroot, make sure nothing is left...
umount -a 1>/dev/null 2>/dev/null || true