X-Git-Url: https://git.grml.org/?p=grml-debootstrap.git;a=blobdiff_plain;f=grml-debootstrap;h=2fb938112539f8df672e6d4e7a0f3d6b8a717ac5;hp=dc4006d3e081aa7a4b1f5c29319764d99aa91843;hb=1c82a317ed3582161d4342de21ab0eb4e107d47d;hpb=c62dadf69387a747f3bb5f4e02ca1f62a9114382 diff --git a/grml-debootstrap b/grml-debootstrap index dc4006d..2fb9381 100755 --- a/grml-debootstrap +++ b/grml-debootstrap @@ -11,7 +11,7 @@ set -e # exit on any error # variables {{{ PN="$(basename $0)" -VERSION='0.38' +VERSION='0.40' MNTPOINT="/mnt/debootstrap.$$" # inside the chroot system locales might not be available, so use minimum: @@ -409,11 +409,17 @@ for i in $(cat $TMPFILE) ; do NUM_PARTITIONS=$((${NUM_PARTITIONS}+1)) done +# force metadata version 0.90 for lenny so old grub can boot from this array. +METADATA_VERSION="" +if [ $RELEASE = "lenny" ]; then + METADATA_VERSION="-e0" +fi + ERRORFILE=$(mktemp) set +e # TODO: better error handling? yes | mdadm --create "${TARGET}" --level="${RAIDLEVEL}" \ - --raid-devices="${NUM_PARTITIONS}" ${SELECTED_PARTITIONS} >/dev/null 2>$ERRORFILE + --raid-devices="${NUM_PARTITIONS}" ${METADATA_VERSION} ${SELECTED_PARTITIONS} >/dev/null 2>$ERRORFILE RC=$? set -e @@ -522,14 +528,14 @@ interactive_mode() { welcome_dialog + prompt_for_release + prompt_for_swraid prompt_for_target prompt_for_bootmanager - prompt_for_release - prompt_for_hostname prompt_for_password @@ -644,7 +650,7 @@ bailout(){ [ -x "$MNTPOINT"/etc/init.d/ssh ] && "$MNTPOINT"/etc/init.d/ssh stop [ -x "$MNTPOINT"/etc/init.d/mdadm ] && "$MNTPOINT"/etc/init.d/mdadm stop # ugly, but make sure we really don't leave anything (/proc /proc is intended) - for ARG in /sys -a /proc /proc ; do + for ARG in /sys /proc /proc ; do [ -x "$MNTPOINT"/bin/umount ] && chroot "$MNTPOINT" umount $ARG >/dev/null 2>&1 || true done umount "$MNTPOINT"/dev >/dev/null 2>&1 || true