[PATCH] Add yet more crud so we can run /sbin/start_udev instead of udev (#514501).

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



start_udev appears to properly build the udev database, which otherwise is
not fully populated for networking unless we run udev_settle multiple times.
---
 loader/init.c        |    2 +-
 scripts/mk-images    |    9 +++++++++
 scripts/upd-instroot |    5 ++++-
 3 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/loader/init.c b/loader/init.c
index ff0f62e..594ebf1 100644
--- a/loader/init.c
+++ b/loader/init.c
@@ -512,7 +512,7 @@ int main(int argc, char **argv) {
         printf("done\n");
 	printf("starting udev...");
 	if (fork() == 0) {
-	    execl("/sbin/udevd", "/sbin/udevd","--daemon",NULL);
+	    execl("/sbin/start_udev", "/sbin/start_udev", NULL);
 	    exit(1);
 	}
     }
diff --git a/scripts/mk-images b/scripts/mk-images
index 2a539a8..eed7daf 100755
--- a/scripts/mk-images
+++ b/scripts/mk-images
@@ -623,6 +623,7 @@ makeinitrd() {
         instbin $IMGPATH /usr/sbin/$cmd $MBD_DIR /sbin/$cmd
     done
 
+    instbin $IMGPATH /sbin/start_udev $MBD_DIR /sbin/start_udev
     instbin $IMGPATH /usr/sbin/udevd $MBD_DIR /sbin/udevd
     instbin $IMGPATH /usr/sbin/udevadm $MBD_DIR /sbin/udevadm
     instbin $IMGPATH /usr/bin/udevinfo $MBD_DIR /sbin/udevinfo
@@ -637,6 +638,10 @@ makeinitrd() {
       cp -a functions $MBD_DIR/etc/rc.d/init.d
     )
 
+    ( cd $IMGPATH/etc/sysconfig
+      cp -a udev $MBD_DIR/etc/sysconfig/udev
+    )
+
     ( cd $IMGPATH/etc/sysconfig/network-scripts
       cp -a network-functions $MBD_DIR/etc/sysconfig/network-scripts
       cp -a network-functions-ipv6 $MBD_DIR/etc/sysconfig/network-scripts
@@ -728,6 +733,8 @@ makeinitrd() {
 
     # Misc
     instbin $IMGPATH /usr/bin/awk $MBD_DIR /sbin/awk
+    instbin $IMGPATH /usr/bin/cat $MBD_DIR /sbin/cat
+    instbin $IMGPATH /usr/bin/chown $MBD_DIR /sbin/chown
     instbin $IMGPATH /usr/bin/egrep $MBD_DIR /sbin/egrep
     instbin $IMGPATH /usr/bin/fgrep $MBD_DIR /sbin/fgrep
     instbin $IMGPATH /usr/bin/gawk $MBD_DIR /sbin/gawk
@@ -735,6 +742,8 @@ makeinitrd() {
     instbin $IMGPATH /usr/bin/kill $MBD_DIR /sbin/kill
     instbin $IMGPATH /usr/bin/ln $MBD_DIR /sbin/ln
     instbin $IMGPATH /usr/bin/mkdir $MBD_DIR /sbin/mkdir
+    instbin $IMGPATH /usr/bin/mknod $MBD_DIR /sbin/mknod
+    instbin $IMGPATH /usr/sbin/pidof $MBD_DIR /sbin/pidof
     instbin $IMGPATH /usr/bin/readlink $MBD_DIR /sbin/readlink
     instbin $IMGPATH /usr/bin/rm $MBD_DIR /sbin/rm
     instbin $IMGPATH /usr/bin/rmdir $MBD_DIR /sbin/rmdir
diff --git a/scripts/upd-instroot b/scripts/upd-instroot
index 80b69f0..9db1fb5 100755
--- a/scripts/upd-instroot
+++ b/scripts/upd-instroot
@@ -364,6 +364,7 @@ etc/selinux/targeted
 etc/services
 etc/shells
 etc/sysconfig/network-scripts/network-functions*
+etc/sysconfig/udev
 etc/udev
 etc/wpa_supplicant/wpa_supplicant.conf
 etc/yum.repos.d/*
@@ -426,6 +427,7 @@ sbin/mount.ntfs*
 sbin/parted
 sbin/pcmcia-socket-startup
 sbin/pdisk
+sbin/pidof
 sbin/probe
 sbin/reiserfsck
 sbin/reiserfstune
@@ -434,6 +436,7 @@ sbin/route
 sbin/setfiles
 sbin/sfdisk
 sbin/silo
+sbin/start_udev
 sbin/swapoff
 sbin/swapon
 sbin/tune2fs
@@ -958,7 +961,7 @@ if [ -f $DEST/bin/bash ]; then
 fi
 
 if [ -f $DEST/bin/gawk ]; then
-    ln -sf awk $DEST/bin/gawk
+    ln -sf $DEST/bin/gawk awk
 fi
 
 [ -d $DEST/bin ] || die "ERROR: directory missing: $DEST/bin"
-- 
1.6.1.3

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux