From 253f9ddfcb791f327822203fbceb87060b5f10be Mon Sep 17 00:00:00 2001 From: Peter Hjalmarsson Date: Mon, 7 Feb 2011 16:02:41 +0100 Subject: [PATCH] Use tmpfs if devtmpfs is not available This makes the ramdisk always mount some kind of /dev, and then try to move it to the new root. This unbreaks handling of nodes created pre-udev likefor example lvm does. --- defaults/initrd.scripts | 12 +++++++----- defaults/linuxrc | 4 ++-- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts index ee26918..1fda57d 100755 --- a/defaults/initrd.scripts +++ b/defaults/initrd.scripts @@ -308,13 +308,15 @@ run_shell() { runmdev() { # Use devtmpfs if enabled in kernel, - # else busybox udev replacement + # else tmpfs. Always run mdev just in case + devfs=tmpfs if grep -qs devtmpfs /proc/filesystems ; then - # Options copied from /etc/init.d/udev-mount, should probably be kept in sync - mount -t devtmpfs -o "exec,nosuid,mode=0755,size=10M" udev /dev - else - mdev -s + devfs=devtmpfs fi + + # Options copied from /etc/init.d/udev-mount, should probably be kept in sync + mount -t $devfs -o "exec,nosuid,mode=0755,size=10M" udev /dev + mdev -s } test_success() { diff --git a/defaults/linuxrc b/defaults/linuxrc index b42070c..f1e124b 100755 --- a/defaults/linuxrc +++ b/defaults/linuxrc @@ -727,11 +727,11 @@ echo -ne "${BOLD}.${NORMAL}" # If devtmpfs is mounted, try move it to the new root # If that fails, try to unmount all possible mounts of devtmpfs as stuff breaks otherwise -if grep -qs devtmpfs /proc/mounts +if grep -qs "/dev " /proc/mounts then if ! mount --move /dev "${CHROOT}"/dev then - umount -t devtmpfs || echo '*: Failed to move and unmount the devtmpfs /dev!' + umount /dev || echo '*: Failed to move and unmount the ramdisk /dev!' fi fi -- 1.7.4