]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
prepare for future udev rules.d location
authorHarald Hoyer <harald@redhat.com>
Thu, 10 Mar 2011 18:18:14 +0000 (19:18 +0100)
committerHarald Hoyer <harald@redhat.com>
Thu, 10 Mar 2011 18:19:09 +0000 (19:19 +0100)
future udev will have rules.d in /dev/.run/udev/rules.d

Also remove compat symlinks, because we want to get rid of these files
anyway.

modules.d/90dmsquash-live/dmsquash-live-genrules.sh
modules.d/95resume/resume-genrules.sh
modules.d/95rootfs-block/block-genrules.sh
modules.d/99base/init

index 5642d531c9b176525d6ab1bdbfad5bc33f63b84f..12e213bb15941c8ddc968b465928b94b2e6cc2eb 100755 (executable)
@@ -14,7 +14,7 @@ case "$root" in
             ${root#live:/dev/} 
         printf 'SYMLINK=="%s", RUN+="/sbin/initqueue --settled --onetime --unique /sbin/dmsquash-live-root $env{DEVNAME}"\n' \
             ${root#live:/dev/} 
-    } >> /etc/udev/rules.d/99-live-squash.rules
+    } >> $UDEVRULESD/99-live-squash.rules
     echo '[ -e /dev/root ]' > /initqueue-finished/dmsquash.sh
   ;;
   live:*)
index dc2c71aee51ce173928d6c731311ff971ad0375d..92ce2fb334cc2d5ce62c35417c4d2d5119813788 100755 (executable)
@@ -17,7 +17,7 @@ if [ -n "$resume" ]; then
             ${resume#/dev/};
         printf "SYMLINK==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
             ${resume#/dev/};
-    } >> /dev/.udev/rules.d/99-resume-link.rules
+    } >> $UDEVRULESD/99-resume-link.rules
 
     {
         if [ -x /usr/sbin/resume ]; then
index 0f4a4b3ffb78696af094059725d58b80c67d58d2..5cda7a496dd48841ce51954374695a62123c54b5 100755 (executable)
@@ -8,7 +8,7 @@ if [ "${root%%:*}" = "block" ]; then
             ${root#block:/dev/} 
         printf 'SYMLINK=="%s", SYMLINK+="root"\n' \
             ${root#block:/dev/} 
-    } >> /dev/.udev/rules.d/99-root.rules
+    } >> $UDEVRULESD/99-root.rules
     
     printf '[ -e "%s" ] && { ln -s "%s" /dev/root 2>/dev/null; rm "$job"; }\n' \
         "${root#block:}" "${root#block:}" >> /initqueue-settled/blocksymlink.sh
index f5851d9bf83de1821386f9968c6399f9c1796add..a3ac005652e4142ef060d292f2932dce5335ef0a 100755 (executable)
@@ -108,15 +108,23 @@ ln -s /proc/self/fd/2 /dev/stderr >/dev/null 2>&1
 mkdir -m 0755 /dev/shm /dev/pts /dev/.run 
 mount -t devpts -o gid=5,mode=620,noexec,nosuid devpts /dev/pts >/dev/null 2>&1
 mount -t tmpfs -o mode=1777,nosuid,nodev  tmpfs /dev/shm >/dev/null 2>&1
-
-# creat /dev/.run which will be /var/run
+# create /dev/.run which will be /var/run
 mount -t tmpfs -o mode=0755,nodev,noexec,nosuid tmpfs /dev/.run >/dev/null 2>&1
-mkdir -m 0755 /dev/.run/udev /dev/.run/udev/rules.d  /dev/.run/initramfs
 
-# create compat symlinks
-ln -s .run/initramfs /dev/.initramfs
-ln -s /dev/.run /var/run
-ln -s .run/udev /dev/.udev
+mkdir -m 0755 /dev/.run/initramfs
+
+UDEVVERSION=$(udevadm --version)
+if [ $UDEVVERSION -ge 999 ]; then
+    # newer versions of udev use /dev/.run/udev/rules.d
+    mkdir -m 0755 /dev/.run/udev /dev/.run/udev/rules.d  
+    export UDEVRULESD=/dev/.run/udev/rules.d
+else
+    mkdir -m 0755 /dev/.udev /dev/.udev/rules.d  
+    export UDEVRULESD=/dev/.udev/rules.d
+fi
+
+[ -e /var/run ] && rm -fr /var/run
+ln -fs /dev/.run /var/run
 
 if getargbool 0 rd.debug -y rdinitdebug -y rdnetdebug; then
     getarg quiet && DRACUT_QUIET="yes"
@@ -129,8 +137,6 @@ fi
 
 setdebug
 
-UDEVVERSION=$(udevadm --version)
-
 source_conf /etc/conf.d
 
 # run scriptlets to parse the command line