diff --git a/lib/initcpio/hooks/arch_udev b/lib/initcpio/hooks/arch_udev index 163dd3305..a4a264772 100644 --- a/lib/initcpio/hooks/arch_udev +++ b/lib/initcpio/hooks/arch_udev @@ -3,7 +3,11 @@ run_hook () { # mount tmpfs, else autodetection will fail! - mount -n -t tmpfs udev /dev -o mode=0755,size=10M,nosuid + if grep -q devtmpfs /proc/filesystems 2>/dev/null; then + /bin/mount -n -t devtmpfs udev /dev -o mode=0755,size=10M,nosuid + else + /bin/mount -n -t tmpfs udev /dev -o mode=0755,size=10M,nosuid + fi #create missing nodes mknod -m 0666 /dev/null c 1 3 mknod -m 0660 /dev/zero c 1 5 diff --git a/lib/initcpio/hooks/arch_udevtrigger b/lib/initcpio/hooks/arch_udevtrigger index 582c57310..62b33bc8d 100644 --- a/lib/initcpio/hooks/arch_udevtrigger +++ b/lib/initcpio/hooks/arch_udevtrigger @@ -3,7 +3,7 @@ run_hook () { msg ":: Loading UDev uevents..." - /sbin/udevadm trigger + /sbin/udevadm trigger --action=add /sbin/udevadm settle msg "done." } diff --git a/lib/initcpio/install/arch_udev b/lib/initcpio/install/arch_udev index a82724989..a7b63c223 100644 --- a/lib/initcpio/install/arch_udev +++ b/lib/initcpio/install/arch_udev @@ -39,10 +39,10 @@ install () for i in 75-cd-aliases-generator.rules.optional 75-persistent-net-generator.rules.optional; do add_file /etc/udev/rules.d/$i done - for i in 40-infiniband 40-isdn 40-pilot-links 40-zaptel 50-firmware 50-udev-default \ + for i in 50-firmware 50-udev-default \ 60-cdrom_id 60-floppy 60-persistent-alsa 60-persistent-input 60-persistent-serial \ 60-persistent-storage-tape 60-persistent-storage 60-persistent-v4l \ - 61-mobile-action 61-option-modem-modeswitch 61-persistent-storage-edd \ + 61-mobile-action 61-persistent-storage-edd \ 70-acl 70-hid2hci 75-net-description 75-tty-description 78-sound-card \ 79-fstab_import 80-drivers 81-arch 95-keyboard-force-release 95-keymap 95-udev-late; do add_file /lib/udev/rules.d/$i.rules diff --git a/usr/share/archboot/base/init b/usr/share/archboot/base/init index e519bd7ea..91817630a 100755 --- a/usr/share/archboot/base/init +++ b/usr/share/archboot/base/init @@ -146,7 +146,8 @@ else done fi - umount /proc - umount /sys + mount --move /proc /new_root/proc + mount --move /sys /new_root/sys + mount --move /dev /new_root/dev exec /sbin/switch_root -c /dev/console /new_root ${init} "$@" fi \ No newline at end of file