Improve detection and handling of udevd in mkinitramfs;

Put correct date in changelog.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@13215 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
Pierre Labastie 2014-06-09 14:57:13 +00:00
parent 6dc6bf47da
commit f350508b4a
3 changed files with 37 additions and 12 deletions

View File

@ -1,12 +1,12 @@
<!-- $LastChangedBy$ $Date$ -->
<!ENTITY day "08"> <!-- Always 2 digits -->
<!ENTITY day "09"> <!-- Always 2 digits -->
<!ENTITY month "06"> <!-- Always 2 digits -->
<!ENTITY year "2014">
<!ENTITY copyrightdate "2001-&year;">
<!ENTITY copyholder "The BLFS Development Team">
<!ENTITY version "&year;-&month;-&day;">
<!ENTITY releasedate "June 8th, &year;">
<!ENTITY releasedate "June 9th, &year;">
<!ENTITY pubdate "&year;-&month;-&day;"> <!-- metadata req. by TLDP -->
<!ENTITY blfs-version "svn"> <!-- svn|[release #] -->
<!ENTITY lfs-version "development"> <!-- x.y|development] -->

View File

@ -44,12 +44,22 @@
-->
<listitem>
<para>June 8th, 2014</para>
<para>June 9th, 2014</para>
<itemizedlist>
<listitem>
<para>[pierre] - Improve detection and handling of udevd in
mkinitramfs.</para>
</listitem>
<listitem>
<para>[pierre] - Eudev-1.7 (Udev-extras). Fixes
<ulink url="&blfs-ticket-root;5128">#5128</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 8th, 2014</para>
<itemizedlist>
<listitem>
<para>[fernando] - MariaDB-10.0.11: move switch
-DWITH_EMBEDDED_SERVER=ON to parameter.</para>

View File

@ -94,10 +94,13 @@ printf "Creating $INITRAMFS_FILE... "
binfiles="sh cat cp dd killall ls mkdir mknod mount "
binfiles="$binfiles umount sed sleep ln rm uname"
sbinfiles="udevadm modprobe blkid switch_root"
# Systemd installs udevadm in /bin. Other udev implementations have it in /sbin
if [ -x /bin/udevadm ] ; then binfiles="$binfiles udevadm"; fi
sbinfiles="modprobe blkid switch_root"
#Optional files and locations
for f in mdadm udevd; do
for f in mdadm udevd udevadm; do
if [ -x /sbin/$f ] ; then sbinfiles="$sbinfiles $f"; fi
done
@ -131,7 +134,7 @@ done
# Install any firmware present
cp -a /lib/firmware $WDIR/lib
# Copy the RAID configureation file if present
# Copy the RAID configuration file if present
if [ -f /etc/mdadm.conf ] ; then
cp /etc/mdadm.conf $WDIR/etc
fi
@ -164,7 +167,9 @@ done
# Add udevd libraries if not in /sbin
if [ -x /lib/udev/udevd ] ; then
ldd /lib/udev/udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted
ldd /lib/udev/udevd | sed "s/\t//" | cut -d " " -f1 &gt;&gt; $unsorted
elif [ -x /lib/systemd/systemd-udevd ] ; then
ldd /lib/systemd/systemd-udevd | sed "s/\t//" | cut -d " " -f1 &gt;&gt; $unsorted
fi
# Add module symlinks if appropriate
@ -208,7 +213,12 @@ sort $unsorted | uniq | while read library ; do
copy $library lib
done
cp -a /lib/udev $WDIR/lib
if [ -d /lib/udev ]; then
cp -a /lib/udev $WDIR/lib
fi
if [ -d /lib/systemd ]; then
cp -a /lib/systemd $WDIR/lib
fi
# Install the kernel modules if requested
if [ -n "$KERNEL_VERSION" ]; then
@ -321,12 +331,17 @@ done
# udevd location depends on version
if [ -x /sbin/udevd ]; then
UDEV_PATH=/sbin
UDEVD=/sbin/udevd
elif [ -x /lib/udev/udevd ]; then
UDEVD=/lib/udev/udevd
elif [ -x /lib/systemd/systemd-udevd ]; then
UDEVD=/lib/systemd/systemd-udevd
else
UDEV_PATH=/lib/udev
echo "Cannot find udevd nor systemd-udevd"
problem
fi
${UDEV_PATH}/udevd --daemon --resolve-names=never
${UDEVD} --daemon --resolve-names=never
udevadm trigger
udevadm settle
@ -336,7 +351,7 @@ if [ -n "$rootdelay" ] ; then sleep "$rootdelay" ; fi
do_mount_root
killall -w ${UDEV_PATH}/udevd
killall -w ${UDEVD##*/}
exec switch_root /.root "$init" "$@"