From: Theodore Ts'o Date: Sun, 11 Apr 2004 20:25:56 +0000 (-0400) Subject: Fix the Debian initrd scripts so that they actually work correctly. X-Git-Tag: E2FSPROGS-1_36~189 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e2de6b9e694ca40a91039521fd9ff518a1cf5bfc;p=thirdparty%2Fe2fsprogs.git Fix the Debian initrd scripts so that they actually work correctly. (Addresses Debian Bug #241183) --- diff --git a/debian/e2fsprogs.initrd b/debian/e2fsprogs.initrd new file mode 100644 index 000000000..7f0f93dca --- /dev/null +++ b/debian/e2fsprogs.initrd @@ -0,0 +1,27 @@ +#!/bin/sh +cd / +mount -nt proc proc proc +rootdev=$(cat proc/sys/kernel/real-root-dev) +cmdline=$(cat /proc/cmdline) +umount -n proc +if [ $rootdev != 256 ]; then + mount -nt proc proc /proc + mount -nt tmpfs tmpfs /dev2 + mount -nt devfs devfs /devfs > /dev2/null 2>&1 + get_device + mount_device + ext3root=`awk '!/^ *#/ { if (($2 == "/") && ($3 == "ext3")) {print $1;}}' < /mnt/etc/fstab` + umount -n /devfs > /dev2/null 2>&1 + umount -n /mnt > /dev2/null 2>&1 + umount /mnt > /dev2/null 2>&1 + if test -n "$ext3root" ; then + mount -nt tmpfs tmpfs /etc + echo >> /etc/fstab + TUNE2FS_SKIP_MOUNT_CHECK=yes + export TUNE2FS_SKIP_MOUNT_CHECK + /sbin/tune2fs -O has_journal /dev2/root2 > /dev2/null 2>&1 + umount -n /etc + fi + umount -n /dev2 + umount -n /proc +fi diff --git a/debian/e2fsprogs.mkinitrd b/debian/e2fsprogs.mkinitrd index be0b89599..6686bf38e 100644 --- a/debian/e2fsprogs.mkinitrd +++ b/debian/e2fsprogs.mkinitrd @@ -1,5 +1,9 @@ #!/bin/sh -ext3root=`grep -v '^ *#' /etc/fstab | awk '{ if (($2 == "/") && ($3 == "ext3")) {print $1;}}'` -if test -n "$ext3root" ; then - /sbin/tune2fs -O has_journal $ext3root > /dev/null -fi +cp /usr/share/e2fsprogs/initrd.ext3-add-journal \ + $INITRDDIR/scripts/ext3-add-journal.sh +cp /sbin/tune2fs $INITRDDIR/sbin +cp /usr/bin/mawk $INITRDDIR/bin/awk +for i in `ldd /sbin/tune2fs /usr/bin/mawk | sort -u | awk '{print $3}'` +do + cp $i $INITRDDIR/$i +done diff --git a/debian/rules b/debian/rules index a1f33ea49..f3e2736f2 100644 --- a/debian/rules +++ b/debian/rules @@ -264,7 +264,13 @@ binary-arch: install install-udeb # mkinitrd script mkdir -p debian/e2fsprogs/usr/share/initrd-tools/scripts install -m755 debian/e2fsprogs.mkinitrd \ - debian/e2fsprogs/usr/share/initrd-tools/scripts + debian/e2fsprogs/usr/share/initrd-tools/scripts/e2fsprogs + + # initrd script + mkdir -p debian/e2fsprogs/usr/share/e2fsprogs + install -m755 debian/e2fsprogs.initrd \ + debian/e2fsprogs/usr/share/e2fsprogs/initrd.ext3-add-journal + # symlinks to prepare dh_installdocs run mkdir -p ${debdir}/e2fsck-static/usr/share/doc/