X-Git-Url: https://git.grml.org/?p=grml-debootstrap.git;a=blobdiff_plain;f=chroot-script;h=5ca8295500bbffc85d89d8d18b7e613a94a0aba2;hp=ac11325d0911324790a6faab3c50ba64171e8731;hb=444d8dfca8c5fe66bad93e8e74d7d2eb4777712e;hpb=fbf2dd19acaa441025d0beb33b8e17ad3c1d61f0 diff --git a/chroot-script b/chroot-script index ac11325..5ca8295 100755 --- a/chroot-script +++ b/chroot-script @@ -17,10 +17,10 @@ set -e # exit on any error # use aptitude only if it's available if [ -x /usr/bin/aptitude ] ; then - APTINSTALL='aptitude -y --without-recommends install ' + APTINSTALL="aptitude -y --without-recommends install $DPKG_OPTIONS" APTUPDATE='aptitude update' else - APTINSTALL='apt-get --force-yes -y install' + APTINSTALL="apt-get --force-yes -y install $DPKG_OPTIONS" APTUPDATE='apt-get update' fi @@ -196,7 +196,8 @@ kernel() { if [ "$RELEASE" = 'sarge' ] ; then KERNELPACKAGES="kernel-image-$KERNEL kernel-headers-$KERNEL" else - KERNELPACKAGES="linux-image-$KERNEL linux-headers-$KERNEL" + # note: install busybox to be able to debug initramfs + KERNELPACKAGES="linux-image-$KERNEL linux-headers-$KERNEL busybox" fi DEBIAN_FRONTEND=$DEBIAN_FRONTEND $APTINSTALL $KERNELPACKAGES fi @@ -221,8 +222,14 @@ passwords() echo "Activating shadow passwords." shadowconfig on + CHPASSWD_OPTION= + if chpasswd --help 2>&1 | grep -q -- '-m,' ; then + CHPASSWD_OPTION='-m' + fi + + if [ -n "$ROOTPASSWORD" ] ; then - echo root:"$ROOTPASSWORD" | chpasswd -m + echo root:"$ROOTPASSWORD" | chpasswd $CHPASSWD_OPTION export ROOTPASSWORD='' else a='1' @@ -240,7 +247,7 @@ passwords() a='1' b='2' else - echo root:"$a" | chpasswd -m + echo root:"$a" | chpasswd $CHPASSWD_OPTION unset a unset b fi @@ -363,7 +370,12 @@ hostname() { # generate initrd/initramfs {{{ initrd() { # assume the first available kernel as our main kernel - KERNELIMG=$(ls -1 /boot/vmlinuz-* | head -1) + KERNELIMG=$(ls -1 /boot/vmlinuz-* 2>/dev/null | head -1) + if [ -z "$KERNELIMG" ] ; then + echo 'No kernel image found, skipping initrd stuff.'>&2 + return + fi + KERNELVER=${KERNELIMG#/boot/vmlinuz-} # generate initrd @@ -464,7 +476,7 @@ finalize() { # execute the functions {{{ for i in chrootmirror grmlrepos kernelimg_conf makedev install_policy_rcd \ - packages extrapackages mkinitrd kernel reconfigure hosts interfaces \ + kernel packages extrapackages mkinitrd reconfigure hosts interfaces \ timezone fstab hostname initrd grub passwords custom_scripts services ; do if stage $i ; then $i && stage $i done || exit 1