From 551eadaad5a012df62de3c6f6e7985439a759135 Mon Sep 17 00:00:00 2001 From: Dirk von Suchodoletz Date: Sat, 5 May 2007 16:52:40 +0000 Subject: Started to remove distro-specific udev from stage3 (was already done for mkdxsinitrd, so no need there :-)), please check for other distros too (see tickets #129, #130) ... git-svn-id: http://svn.openslx.org/svn/openslx/trunk@1002 95ad53e4-c205-0410-b2fa-d234c58c8868 --- initramfs/initrd-stuff/etc/functions | 5 +++-- initramfs/initrd-stuff/etc/messages | 2 ++ initramfs/initrd-stuff/etc/messages.de | 2 ++ initramfs/initrd-stuff/init | 14 +++++++------- 4 files changed, 14 insertions(+), 9 deletions(-) (limited to 'initramfs/initrd-stuff') diff --git a/initramfs/initrd-stuff/etc/functions b/initramfs/initrd-stuff/etc/functions index fa4f2ba4..fa10b8f9 100644 --- a/initramfs/initrd-stuff/etc/functions +++ b/initramfs/initrd-stuff/etc/functions @@ -35,7 +35,7 @@ udev_hotplug () { } ############################################################################# -# generate events with the sysfs trigger +# generate events with the sysfs trigger (most probably obsolete) trigger_device_events () { local list=$(echo /sys/bus/*/devices/*/uevent) list="$list $(echo /sys/class/*/*/uevent)" @@ -63,7 +63,8 @@ trigger_device_events () { } ############################################################################# -# mini udev of busybox or distro specific udev_hotplug +# mini udev of busybox (most probably obsolete: or distro specific +# udev_hotplug) runudev () { if [ -x /bin/mdev ] ; then mdev -s diff --git a/initramfs/initrd-stuff/etc/messages b/initramfs/initrd-stuff/etc/messages index b9df8dea..32791bd6 100644 --- a/initramfs/initrd-stuff/etc/messages +++ b/initramfs/initrd-stuff/etc/messages @@ -138,9 +138,11 @@ detection\nwill probably arise." df_errserv="seems not to be installed or start script is\n not available\ so requesting the start of service make no sense. Please\n disable service\ or install the files/packages needed." +# udev stuff will be handled via busybox mdev ... df_errudev=" udev daemon is not available. Some devices might not appear." df_errhotpl=" Hotplug subdirectory is missing! udev(d) might not work as \ expected." +### df_errcron=" The cron start script $df_errserv" df_errsysl=" The syslog start script $df_errserv" df_errsshd=" The sshd start script $df_errserv" diff --git a/initramfs/initrd-stuff/etc/messages.de b/initramfs/initrd-stuff/etc/messages.de index feb7957d..a26b97da 100644 --- a/initramfs/initrd-stuff/etc/messages.de +++ b/initramfs/initrd-stuff/etc/messages.de @@ -145,10 +145,12 @@ werden Probleme bei der Hardware-Erkennung auftreten." df_errserv="ist entweder nicht installiert oder das Start-Skript ist nicht \ verfuegbar.\n Deswegen macht der Start des Dienstes keinen Sinn. Bitte \ deaktivieren Sie den Start\n oder installieren Sie die benoetigten Dateien." +### unnoetig wg. mdev df_errudev=" Der udev Daemon ist nicht verfuegbar. Einige Geraetedateien \ koennten nicht angelegt worden sein." df_errhotpl=" Das Udev/Hotplug Unterverzeichnis fehlt! udev(d) koennte nicht \ wie erwartet ablaufen." +### df_errcron=" Das cron Start-Skript $df_errserv" df_errsysl=" Das syslog Start-Skript $df_errserv" df_errsshd=" Das sshd Start-Skript $df_errserv" diff --git a/initramfs/initrd-stuff/init b/initramfs/initrd-stuff/init index 463376b4..b90b60b9 100755 --- a/initramfs/initrd-stuff/init +++ b/initramfs/initrd-stuff/init @@ -514,7 +514,8 @@ if [ -n "${unionfs}" -o -n "${aufs}" ] ; then mkdir -p /mnt/uniontmp mount -n --move ${rwdir}/uniontmp /mnt/uniontmp chmod 0755 /mnt/uniontmp /mnt - # run ldconfig if not switched off via kernel command line + # run ldconfig if switched on via kernel command line (token ldsc) or + # triggered by unionized root filesystem ldcfg # runlevel directories should contain no links for i in ${D_RCDIRS} ${D_INITBOOTD} ; do @@ -557,14 +558,13 @@ elif [ -z "${cowloop}" ] ; then [ -n "${ldsc}" ] && echo -e "ld.so.cache*" >>/tmp/etc.exclude # for tar exclude lists might be used, more difficult for cp cd /mnt - tar -X /tmp/etc.exclude -cp etc/* | \ - tar -xp -C ${rwdir} 2>/dev/null ; + tar -X /tmp/etc.exclude -cp etc/*|tar -xp -C ${rwdir} 2>/dev/null cd / mount -n --bind ${rwdir}/etc /mnt/etc mount -n --bind ${rwdir}/var /mnt/var # get the "covered" mounts back into filesystem structure - for i in ${list}; do - mount -n --move /root/$i /mnt/$i #>>$LOGFILE 2>&1 + for path in ${list}; do + mount -n --move /root/$path /mnt/$path #>>$LOGFILE 2>&1 done #rm -rf /root/* >/dev/null 2>&1 # run some specific stuff !? @@ -655,7 +655,7 @@ if [ -n "$uniondirs" ]; then include_in_fsroot_union "$union_type" "$uniondirs" fi -# post init for some distro specific (fixme!! more elegant solution) +# post init for some distro specific postinit [ -s /initramfs/postinit.local ] && \ mv /initramfs/postinit.local /bin/postinit.local @@ -669,7 +669,7 @@ postinit # unmount the bind mounted modules directory export ticks -for ticks in 0 200 300 500 800 1000 1200 2000 5000 ; do +for ticks in 0 400 1000 2000 5000 10000 ; do usleep $ticks && umount -n /lib/modules/${KERNEL} 2>/dev/null && break error "$init_wait" nonfatal done -- cgit v1.2.3-55-g7522