initramfs-live-boot: handle multiple udev locations

udevd isn't on $PATH and is in different places depending on what version of
udev is being used.  Copy the code from initramfs-framework to search for the
right udevd at boot time instead of hard-coding a location.

(From OE-Core rev: a5de76317112fc065a78a745c2f23775dca15d75)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton 2013-01-17 16:29:39 +00:00 committed by Richard Purdie
parent 26bddbd41b
commit e7ebff0a98
1 changed files with 19 additions and 1 deletions

View File

@ -9,6 +9,23 @@ UMOUNT="/bin/umount"
ISOLINUX=""
UNIONFS="no"
# Copied from initramfs-framework. The core of this script probably should be
# turned into initramfs-framework modules to reduce duplication.
udev_daemon() {
OPTIONS="/sbin/udevd /lib/udev/udevd /lib/systemd/systemd-udevd"
for o in $OPTIONS; do
if [ -x "$o" ]; then
echo $o
return 0
fi
done
return 1
}
_UDEV_DAEMON=`udev_daemon`
early_setup() {
mkdir -p /proc
mkdir -p /sys
@ -21,7 +38,8 @@ early_setup() {
mkdir -p /run
mkdir -p /var/run
/lib/udev/udevd --daemon
$_UDEV_DAEMON --daemon
udevadm trigger --action=add
}