# ugly, but make sure we really don't leave anything (/proc /proc and
# /dev /dev are intended, trying to work around timing issues, see #657023)
- for ARG in /sys /proc /proc /dev/pts /dev/pts /dev /dev ; do
+ for ARG in /run/udev /sys /proc /proc /dev/pts /dev/pts /dev /dev ; do
[ -x "$MNTPOINT"/bin/umount ] && chroot "$MNTPOINT" umount $ARG >/dev/null 2>&1
umount "$MNTPOINT"/$ARG >/dev/null 2>&1
done
# }}}
# make sure we have what we need {{{
-check4progs debootstrap || bailout 1
+check4progs "${DEBOOTSTRAP}" || bailout 1
# }}}
# source main configuration file {{{
bailout 1
fi
+if [ -n "$ISO" ] && [[ "$DEBOOTSTRAP" =~ mmdebstrap$ ]] ; then
+ eerror "The ISO option is incompatible with usage of mmdebstrap for bootstrapping."
+ eerror "Either drop the --iso ... option or use plain debootstrap instead."
+ eend 1
+ bailout 1
+fi
if [ "$DEBUG" = "true" ] ; then
set -x
cp $VERBOSE -a -L "${CONFFILES}"/extrapackages/ "${MNTPOINT}"/etc/debootstrap/
- # make sure we can access network [relevant for cdebootstrap]
+ # make sure we can access network [relevant for cdebootstrap/mmdebstrap]
[ -f "${MNTPOINT}"/etc/resolv.conf ] || cp $VERBOSE /etc/resolv.conf "${MNTPOINT}"/etc/resolv.conf
# setup default locales
cp /etc/network/interfaces.examples "$MNTPOINT/etc/network/interfaces.examples"
fi
+ if [ -d /run/udev ] ; then
+ einfo "Setting up bind-mount /run/udev"
+ mkdir -p "${MNTPOINT}"/run/udev
+ mount --bind /run/udev "${MNTPOINT}"/run/udev
+ eend $?
+ fi
+
eend 0
}
# }}}
fi
if grep -q "$MNTPOINT" /proc/mounts ; then
+ if mountpoint "${MNTPOINT}"/run/udev &>/dev/null ; then
+ einfo "Unmounting bind-mount /run/udev"
+ umount "${MNTPOINT}"/run/udev
+ eend $?
+ fi
+
if [ -n "$PARTITION" ] ; then
einfo "Unmount $MNTPOINT"
umount "$MNTPOINT"