[oe] [PATCH 2/3] initramfs-module-udev: New module

Kelvie Wong kwong at wurldtech.com
Sat Sep 25 17:07:05 UTC 2010


This launches (and kills) udev during the initramfs procedure to populate
the /dev tree as udev would.

With this, we can boot off block devices by label or uuid, by using the
/dev/disk/by-{uuid,label,path}/sdX syntax.
---
 recipes/initrdscripts/files/15-initudev.sh         |    5 +++++
 recipes/initrdscripts/files/90-killudev.sh         |    4 ++++
 recipes/initrdscripts/initramfs-module-udev_1.0.bb |   13 +++++++++++++
 3 files changed, 22 insertions(+), 0 deletions(-)
 create mode 100644 recipes/initrdscripts/files/15-initudev.sh
 create mode 100644 recipes/initrdscripts/files/90-killudev.sh
 create mode 100644 recipes/initrdscripts/initramfs-module-udev_1.0.bb

diff --git a/recipes/initrdscripts/files/15-initudev.sh b/recipes/initrdscripts/files/15-initudev.sh
new file mode 100644
index 0000000..5505a83
--- /dev/null
+++ b/recipes/initrdscripts/files/15-initudev.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+# Starts udev to populate /dev
+
+# 'start' isn't actually needed, but keeps it consistent
+/etc/init.d/udev start
diff --git a/recipes/initrdscripts/files/90-killudev.sh b/recipes/initrdscripts/files/90-killudev.sh
new file mode 100644
index 0000000..464eb30
--- /dev/null
+++ b/recipes/initrdscripts/files/90-killudev.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+# Kills udevd before booting into the real root.
+
+kill `pidof udevd`
diff --git a/recipes/initrdscripts/initramfs-module-udev_1.0.bb b/recipes/initrdscripts/initramfs-module-udev_1.0.bb
new file mode 100644
index 0000000..0ae9a33
--- /dev/null
+++ b/recipes/initrdscripts/initramfs-module-udev_1.0.bb
@@ -0,0 +1,13 @@
+SRC_URI = "file://15-initudev.sh file://90-killudev.sh"
+RDEPENDS = "initramfs-uniboot udev"
+DESCRIPTION = "initramfs module for populating /dev with udev"
+
+do_install() {
+    install -d ${D}/initrd.d
+    install -m 0755 ${WORKDIR}/15-initudev.sh ${D}/initrd.d/
+    install -m 0755 ${WORKDIR}/90-killudev.sh ${D}/initrd.d/
+}
+
+PACKAGE_ARCH = "all"
+FILES_${PN} += " /initrd.d/* "
+
-- 
1.7.0.4





More information about the Openembedded-devel mailing list