aboutsummaryrefslogtreecommitdiffstats
path: root/bootscripts
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2012-01-16 18:34:31 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2012-01-16 18:34:31 +0000
commite9ba8aa85f6fe42e7fe1c8815431702c07fe9172 (patch)
treed8ff9914bcd492b9debadbaf82dbbe3365e1a5af /bootscripts
parent6c3ab2e4b6018dbafe493e56609d6478a79bfbe4 (diff)
Change bootscripts to use devtmpfs for /dev.
Move mounting of /dev to mountvirtfs and ensure /dev gets placed in /etc/mtab. Change fstab and kernel configuration sections to reflect these changes. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9710 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'bootscripts')
-rw-r--r--bootscripts/lfs/init.d/mountfs1
-rw-r--r--bootscripts/lfs/init.d/mountvirtfs15
-rw-r--r--bootscripts/lfs/init.d/udev26
3 files changed, 14 insertions, 28 deletions
diff --git a/bootscripts/lfs/init.d/mountfs b/bootscripts/lfs/init.d/mountfs
index 4503836e1..d51b013e5 100644
--- a/bootscripts/lfs/init.d/mountfs
+++ b/bootscripts/lfs/init.d/mountfs
@@ -46,6 +46,7 @@ case "${1}" in
mount -f /proc || failed=1
mount -f /sys || failed=1
mount -f /run || failed=1
+ mount -f /dev || failed=1
(exit ${failed})
evaluate_retval
diff --git a/bootscripts/lfs/init.d/mountvirtfs b/bootscripts/lfs/init.d/mountvirtfs
index f7f9505a4..6f9df8d14 100644
--- a/bootscripts/lfs/init.d/mountvirtfs
+++ b/bootscripts/lfs/init.d/mountvirtfs
@@ -41,14 +41,25 @@ case "${1}" in
if ! mountpoint /proc >/dev/null; then
log_info_msg2 " ${INFO}/proc"
- mount -n /proc || failed=1
+ mount -n -o nosuid,noexec,nodev /proc || failed=1
fi
if ! mountpoint /sys >/dev/null; then
log_info_msg2 " ${INFO}/sys"
- mount -n /sys || failed=1
+ mount -n -o nosuid,noexec,nodev /sys || failed=1
fi
+ if ! mountpoint /dev >/dev/null; then
+ log_info_msg2 " ${INFO}/dev"
+ mount -n -o mode=0755,nosuid /dev || failed=1
+ fi
+
+ ln -s /run/shm /dev/shm
+
+ # Copy the only static device node that Udev >= 155 doesn't
+ # handle to /dev
+ cp -a /lib/udev/devices/null /dev
+
(exit ${failed})
evaluate_retval
exit $failed
diff --git a/bootscripts/lfs/init.d/udev b/bootscripts/lfs/init.d/udev
index 6b7a79bc6..643ed80dc 100644
--- a/bootscripts/lfs/init.d/udev
+++ b/bootscripts/lfs/init.d/udev
@@ -43,36 +43,10 @@ case "${1}" in
/etc/rc.d/init.d/halt stop
fi
- # Mount a temporary file system over /dev, so that any devices
- # made or removed during this boot don't affect the next one.
- # The reason we don't write to mtab is because we don't ever
- # want /dev to be unavailable (such as by `umount -a').
- if ! mountpoint /dev > /dev/null; then
- mount -n -t tmpfs tmpfs /dev -o mode=755
- fi
-
- if [ ${?} != 0 ]; then
- log_failure_msg2
- msg="FAILURE:\n\nCannot mount a tmpfs "
- msg="${msg}onto /dev, this system will be halted.\n\n"
- msg="${msg}After you press Enter, this system "
- msg="${msg}will be halted and powered off.\n\n"
- log_failure_msg "$msg"
- log_info_msg "Press Enter to continue..."
- wait_for_user
- /etc/rc.d/init.d/halt stop
- fi
-
- ln -s /run/shm /dev/shm
-
# Udev handles uevents itself, so we don't need to have
# the kernel call out to any binary in response to them
echo > /proc/sys/kernel/hotplug
- # Copy the only static device node that Udev >= 155 doesn't
- # handle to /dev
- cp -a /lib/udev/devices/null /dev
-
# Start the udev daemon to continually watch for, and act on,
# uevents
/sbin/udevd --daemon