diff options
-rw-r--r-- | bootscripts/lfs/init.d/mountfs | 1 | ||||
-rw-r--r-- | bootscripts/lfs/init.d/mountvirtfs | 15 | ||||
-rw-r--r-- | bootscripts/lfs/init.d/udev | 26 | ||||
-rw-r--r-- | chapter01/changelog.xml | 12 | ||||
-rw-r--r-- | chapter08/fstab.xml | 20 | ||||
-rw-r--r-- | chapter08/kernel.xml | 11 | ||||
-rw-r--r-- | general.ent | 4 | ||||
-rw-r--r-- | packages.ent | 2 |
8 files changed, 49 insertions, 42 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 diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml index 92fd57dc3..77d22fe16 100644 --- a/chapter01/changelog.xml +++ b/chapter01/changelog.xml @@ -38,6 +38,18 @@ --> <listitem> + <para>2012-01-16</para> + <itemizedlist> + <listitem> + <para>[bdubbs] - 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.</para> + </listitem> + </itemizedlist> + </listitem> + + <listitem> <para>2012-01-11</para> <itemizedlist> <listitem> diff --git a/chapter08/fstab.xml b/chapter08/fstab.xml index 7972886c0..e859851e9 100644 --- a/chapter08/fstab.xml +++ b/chapter08/fstab.xml @@ -22,15 +22,17 @@ <screen><userinput>cat > /etc/fstab << "EOF" <literal># Begin /etc/fstab -# file system mount-point type options dump fsck -# order - -/dev/<replaceable><xxx></replaceable> / <replaceable><fff></replaceable> defaults 1 1 -/dev/<replaceable><yyy></replaceable> swap swap pri=1 0 0 -proc /proc proc defaults 0 0 -sysfs /sys sysfs defaults 0 0 -devpts /dev/pts devpts gid=4,mode=620 0 0 -tmpfs /run tmpfs defaults 0 0 +# file system mount-point type options dump fsck +# order + +/dev/<replaceable><xxx></replaceable> / <replaceable><fff></replaceable> defaults 1 1 +/dev/<replaceable><yyy></replaceable> swap swap pri=1 0 0 +proc /proc proc nosuid,noexec,nodev 0 0 +sysfs /sys sysfs nosuid,noexec,nodev 0 0 +devpts /dev/pts devpts gid=4,mode=620 0 0 +tmpfs /run tmpfs defaults 0 0 +devtmpfs /dev devtmpfs mode=0755,nosuid 0 0 + # End /etc/fstab</literal> EOF</userinput></screen> diff --git a/chapter08/kernel.xml b/chapter08/kernel.xml index 7c31806c3..a448f88e6 100644 --- a/chapter08/kernel.xml +++ b/chapter08/kernel.xml @@ -58,10 +58,17 @@ <para>Configure the kernel via a menu-driven interface. For general information on kernel configuration see <ulink - url="&hints-root;kernel-configuration.txt"/>. BLFS has some information + url="&hints-root;kernel-configuration.txt"/>. BLFS has some information regarding particular kernel configuration requirements of packages outside of LFS at <ulink - url="&blfs-root;view/svn/longindex.html#kernel-config-index"/>:</para> + url="&blfs-root;view/svn/longindex.html#kernel-config-index"/>. </para> + + <note><para>Due to recent changes in <application>udev</application>, be sure to + select:</para> + + <screen role="nodump">Device Drivers ---> + Generic Driver Options ---> + Maintain a devtmpfs filesystem to mount at /dev</screen></note> <screen role="nodump"><userinput>make LANG=<replaceable><host_LANG_value></replaceable> LC_ALL= menuconfig</userinput></screen> diff --git a/general.ent b/general.ent index 31663409d..293ca4929 100644 --- a/general.ent +++ b/general.ent @@ -1,5 +1,5 @@ -<!ENTITY version "SVN-20120111"> -<!ENTITY releasedate "Jan 11, 2012"> +<!ENTITY version "SVN-20120116"> +<!ENTITY releasedate "Jan 16, 2012"> <!ENTITY copyrightdate "1999-2012"><!-- jhalfs needs a literal dash, not – --> <!ENTITY milestone "7.1"> <!ENTITY generic-version "development"> <!-- Use "development", "testing", or "x.y[-pre{x}]" --> diff --git a/packages.ent b/packages.ent index a55a6d71a..47e56722a 100644 --- a/packages.ent +++ b/packages.ent @@ -297,7 +297,7 @@ <!ENTITY less-ch6-du "3.5 MB"> <!ENTITY less-ch6-sbu "less than 0.1 SBU"> -<!ENTITY lfs-bootscripts-version "20111128"> <!-- Scripts depend on this format --> +<!ENTITY lfs-bootscripts-version "20120116"> <!-- Scripts depend on this format --> <!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB"> <!-- Updated in Makefile --> <!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.bz2"> <!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM"> <!-- Updated in Makefile --> |