Browse Source

Add new /run mount point to top level directories. Mount a tmpfs on /run in
bootscripts. Add symlinks to use new /run tmpfs.



git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@9510 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

Bruce Dubbs 14 years ago
parent
commit
9f318ba306

+ 4 - 4
appendices/scripts.xml

@@ -11,7 +11,7 @@
   <!ENTITY localnet           SYSTEM "localnet.script"> 
   <!ENTITY modules            SYSTEM "modules.script"> 
   <!ENTITY mountfs            SYSTEM "mountfs.script"> 
-  <!ENTITY mountkernfs        SYSTEM "mountkernfs.script"> 
+  <!ENTITY mountvirtfs        SYSTEM "mountvirtfs.script"> 
   <!ENTITY network            SYSTEM "network.script"> 
   <!ENTITY reboot             SYSTEM "reboot.script"> 
   <!ENTITY rc                 SYSTEM "rc.script"> 
@@ -62,9 +62,9 @@
     <screen>&functions;</screen> 
   </sect1>
 
-  <sect1 id="mountkernfs" role="wrap">
-    <title>/etc/rc.d/init.d/mountkernfs</title>
-    <screen>&mountkernfs;</screen> 
+  <sect1 id="mountvirtfs" role="wrap">
+    <title>/etc/rc.d/init.d/mountvirtfs</title>
+    <screen>&mountvirtfs;</screen> 
   </sect1>
 
   <sect1 id="consolelog" role="wrap">

+ 4 - 0
bootscripts/ChangeLog

@@ -1,3 +1,7 @@
+2010-05-29	Bruce Dubbs <bdubbs@linuxfromscratch.org>
+   * lfs/init.d/mountvirtfs: Change name from mountkernfs to mountvirtfs.
+     Add mounting of /run filesystem.
+
 2010-05-29	Matt Burgess <matthew@linuxfromscratch.org>
    * lfs/init.d/udev: Only copy /lib/udev/devices/null, as Udev >= 155 copies
      devices from /lib/udev/devices to /dev itself.  Udevd still needs /dev/null

+ 4 - 4
bootscripts/Makefile

@@ -31,7 +31,7 @@ install: create-dirs create-service-dir
 	install -m ${MODE} lfs/init.d/localnet      ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/modules       ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/mountfs       ${EXTDIR}/rc.d/init.d/
-	install -m ${MODE} lfs/init.d/mountkernfs   ${EXTDIR}/rc.d/init.d/
+	install -m ${MODE} lfs/init.d/mountvirtfs   ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/network       ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/rc            ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/reboot        ${EXTDIR}/rc.d/init.d/
@@ -67,7 +67,7 @@ install: create-dirs create-service-dir
 	ln -sf ../init.d/swap        ${EXTDIR}/rc.d/rc6.d/S80swap
 	ln -sf ../init.d/localnet    ${EXTDIR}/rc.d/rc6.d/S90localnet
 	ln -sf ../init.d/reboot      ${EXTDIR}/rc.d/rc6.d/S99reboot
-	ln -sf ../init.d/mountkernfs ${EXTDIR}/rc.d/rcsysinit.d/S00mountkernfs
+	ln -sf ../init.d/mountvirtfs ${EXTDIR}/rc.d/rcsysinit.d/S00mountvirtfs
 	ln -sf ../init.d/consolelog  ${EXTDIR}/rc.d/rcsysinit.d/S02consolelog
 	ln -sf ../init.d/modules     ${EXTDIR}/rc.d/rcsysinit.d/S05modules
 	ln -sf ../init.d/udev        ${EXTDIR}/rc.d/rcsysinit.d/S10udev
@@ -104,7 +104,7 @@ minimal: create-dirs create-service-dir
 	install -m ${MODE} lfs/init.d/halt          ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/localnet      ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/mountfs       ${EXTDIR}/rc.d/init.d/
-	install -m ${MODE} lfs/init.d/mountkernfs   ${EXTDIR}/rc.d/init.d/
+	install -m ${MODE} lfs/init.d/mountvirtfs   ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/rc            ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/reboot        ${EXTDIR}/rc.d/init.d/
 	install -m ${MODE} lfs/init.d/sendsignals   ${EXTDIR}/rc.d/init.d/
@@ -119,7 +119,7 @@ minimal: create-dirs create-service-dir
 	ln -sf ../init.d/mountfs     ${EXTDIR}/rc.d/rc6.d/S70mountfs
 	ln -sf ../init.d/swap        ${EXTDIR}/rc.d/rc6.d/S80swap
 	ln -sf ../init.d/reboot      ${EXTDIR}/rc.d/rc6.d/S99reboot
-	ln -sf ../init.d/mountkernfs ${EXTDIR}/rc.d/rcsysinit.d/S00mountkernfs
+	ln -sf ../init.d/mountvirtfs ${EXTDIR}/rc.d/rcsysinit.d/S00mountvirtfs
 	ln -sf ../init.d/udev        ${EXTDIR}/rc.d/rcsysinit.d/S10udev
 	ln -sf ../init.d/swap        ${EXTDIR}/rc.d/rcsysinit.d/S20swap
 	ln -sf ../init.d/checkfs     ${EXTDIR}/rc.d/rcsysinit.d/S30checkfs

+ 4 - 4
bootscripts/contrib/lsb-v3/Makefile

@@ -35,7 +35,7 @@ install: create-dirs create-service-dir create-boottemp-dir
 	install -m ${MODE} init.d/localnet              ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/modules               ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/mountfs               ${EXTDIR}/init.d/
-	install -m ${MODE} init.d/mountkernfs           ${EXTDIR}/init.d/
+	install -m ${MODE} init.d/mountvirtfs           ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/network               ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/rc                    ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/reboot                ${EXTDIR}/init.d/
@@ -67,7 +67,7 @@ install: create-dirs create-service-dir create-boottemp-dir
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/localnet
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/modules
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/mountfs
-	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/mountkernfs
+	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/mountvirtfs
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/network
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/reboot
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/sendsignals
@@ -85,7 +85,7 @@ minimal: create-dirs create-service-dir create-boottemp-dir
 	install -m ${MODE} init.d/halt              ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/localnet          ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/mountfs           ${EXTDIR}/init.d/
-	install -m ${MODE} init.d/mountkernfs       ${EXTDIR}/init.d/
+	install -m ${MODE} init.d/mountvirtfs       ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/rc                ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/reboot            ${EXTDIR}/init.d/
 	install -m ${MODE} init.d/sendsignals       ${EXTDIR}/init.d/
@@ -103,7 +103,7 @@ minimal: create-dirs create-service-dir create-boottemp-dir
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/halt
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/localnet
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/mountfs
-	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/mountkernfs
+	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/mountvirtfs
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/reboot
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/sendsignals
 	/usr/lib/lsb/install_initd ${EXTDIR}/init.d/setclock

+ 1 - 1
bootscripts/contrib/lsb-v3/init.d/modules

@@ -3,7 +3,7 @@
 
 ### BEGIN INIT INFO
 # Provides:            modules
-# Required-Start:      mountkernfs sysctl
+# Required-Start:      mountvirts sysctl
 # Should-Start:
 # Required-Stop:
 # Should-Stop:

+ 2 - 0
bootscripts/contrib/lsb-v3/init.d/mountfs

@@ -33,6 +33,7 @@ case "${1}" in
         mount -f / || failed=1
         mount -f /proc || failed=1
         mount -f /sys || failed=1
+        mount -f /run || failed=1
         (exit ${failed})
         evaluate_retval standard
 
@@ -40,6 +41,7 @@ case "${1}" in
         # their option list.  _netdev denotes a network filesystem.
         message="Mounting remaining file systems..."
         mount -a -O no_netdev >/dev/null
+        ln -s /run/shm /dev/shm
         evaluate_retval standard
         ;;
 

+ 11 - 6
bootscripts/contrib/lsb-v3/init.d/mountkernfs → bootscripts/contrib/lsb-v3/init.d/mountvirtfs

@@ -1,16 +1,16 @@
 #!/bin/sh
-# Begin /etc/init.d/mountkernfs
+# Begin /etc/init.d/mountvirtfs
 
 ### BEGIN INIT INFO
-# Provides:            mountkernfs
+# Provides:            mountvirtfs
 # Required-Start:
 # Should-Start:
 # Required-Stop:
 # Should-Stop:
 # Default-Start:       S
 # Default-Stop:
-# Short-Description:   Mounts /sys and /proc virtual (kernel) filesystems.
-# Description:         Mounts /sys and /proc virtual (kernel) filesystems.
+# Short-Description:   Mounts /sys, /proc, and /run virtual (virtel) filesystems.
+# Description:         Mounts /sys, /proc, and run  virtual (virtel) filesystems.
 # X-LFS-Provided-By:   LFS
 ### END INIT INFO
 
@@ -18,7 +18,7 @@
 
 case "${1}" in
     start)
-        message="Mounting kernel-based file systems:"
+        message="Mounting virtel-based file systems:"
 
         if ! mountpoint /proc > /dev/null; then
             message="${message}${INFO} /proc${NORMAL}"
@@ -30,6 +30,11 @@ case "${1}" in
             mount -n /sys || failed=1
         fi
 
+        if ! mountpoint /run > /dev/null; then
+            message="${message}${INFO} /run${NORMAL}"
+            mount -n /run || failed=1
+        fi
+
         (exit ${failed})
         evaluate_retval standard
         ;;
@@ -40,4 +45,4 @@ case "${1}" in
         ;;
 esac
 
-# End /etc/init.d/mountkernfs
+# End /etc/init.d/mountvirtfs

+ 1 - 1
bootscripts/contrib/lsb-v3/init.d/sysctl

@@ -3,7 +3,7 @@
 
 ### BEGIN INIT INFO
 # Provides:            sysctl
-# Required-Start:      mountkernfs
+# Required-Start:      mountvirtfs
 # Should-Start:
 # Required-Stop:
 # Should-Stop:

+ 6 - 0
bootscripts/lfs/init.d/mountfs

@@ -29,6 +29,7 @@ case "${1}" in
 		mount -f / || failed=1
 		mount -f /proc || failed=1
 		mount -f /sys || failed=1
+		mount -f /run || failed=1
 		(exit ${failed})
 		evaluate_retval
 
@@ -37,6 +38,11 @@ case "${1}" in
 		boot_mesg "Mounting remaining file systems..."
 		mount -a -O no_netdev >/dev/null
 		evaluate_retval
+
+		#Create a symlink for shared memory after /dev is mounted
+		boot_mesg "Redirect /dev/shm to /run/shm..."
+		ln -s /run/shm /dev/shm
+		evaluate_retval
 		;;
 
 	stop)

+ 11 - 4
bootscripts/lfs/init.d/mountkernfs → bootscripts/lfs/init.d/mountvirtfs

@@ -1,8 +1,8 @@
 #!/bin/sh
 ########################################################################
-# Begin $rc_base/init.d/mountkernfs
+# Begin $rc_base/init.d/mountvirtfs
 #
-# Description : Mount proc and sysfs
+# Description : Mount proc, sysfs, and run
 #
 # Authors     : Gerard Beekmans - gerard@linuxfromscratch.org
 #
@@ -17,7 +17,7 @@
 
 case "${1}" in
 	start)
-		boot_mesg -n "Mounting kernel-based file systems:" ${INFO}
+		boot_mesg -n "Mounting virtual file systems:" ${INFO}
 
 		if ! mountpoint /proc >/dev/null; then
 			boot_mesg -n " /proc" ${NORMAL}
@@ -29,6 +29,13 @@ case "${1}" in
 			mount -n /sys || failed=1
 		fi
 
+		if ! mountpoint /run >/dev/null; then
+			boot_mesg -n " /run" ${NORMAL}
+			mount -n /run || failed=1
+			mkdir /run/var
+			mkdir /run/shm
+		fi
+
 		boot_mesg "" ${NORMAL}
 
 		(exit ${failed})
@@ -41,4 +48,4 @@ case "${1}" in
 		;;
 esac
 
-# End $rc_base/init.d/mountkernfs
+# End $rc_base/init.d/mountvertfs

+ 5 - 0
chapter01/changelog.xml

@@ -39,6 +39,11 @@
     <listitem>
       <para>2011-04-18</para>
       <itemizedlist>
+        <listitem>
+          <para>[bdubbs] - Add new /run mount point to top
+          level directories.  Mount a tmpfs on /run in
+          bootscripts.</para>
+        </listitem>
         <listitem>
           <para>[bdubbs] - In Chapter 6, move File to before
           binutils to prevent some configure warnings.</para>

+ 4 - 2
chapter06/creatingdirs.xml

@@ -13,7 +13,7 @@
   <para>It is time to create some structure in the LFS file system. Create a
   standard directory tree by issuing the following commands:</para>
 
-<screen><userinput>mkdir -pv /{bin,boot,etc/opt,home,lib,mnt,opt}
+<screen><userinput>mkdir -pv /{bin,boot,etc/opt,home,lib,mnt,opt,run}
 mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
 install -dv -m 0750 /root
 install -dv -m 1777 /tmp /var/tmp
@@ -27,7 +27,9 @@ done
 case $(uname -m) in
  x86_64) ln -sv lib /lib64 &amp;&amp; ln -sv lib /usr/lib64 ;;
 esac
-mkdir -v /var/{lock,log,mail,run,spool}
+mkdir -v /var/{log,mail,spool}
+ln -sv /run /var/run
+ln -sv /run/lock /var/lock
 mkdir -pv /var/{opt,cache,lib/{misc,locate},local}</userinput></screen>
 
   <para>Directories are, by default, created with permission mode 755, but

+ 1 - 1
chapter08/fstab.xml

@@ -30,7 +30,7 @@
 proc           /proc        proc   defaults        0     0
 sysfs          /sys         sysfs  defaults        0     0
 devpts         /dev/pts     devpts gid=4,mode=620  0     0
-tmpfs          /dev/shm     tmpfs  defaults        0     0
+tmpfs          /run         tmpfs  defaults        0     0
 # End /etc/fstab</literal>
 EOF</userinput></screen>
 

+ 1 - 1
packages.ent

@@ -289,7 +289,7 @@
 <!ENTITY less-ch6-du "2.9 MB">
 <!ENTITY less-ch6-sbu "less than 0.1 SBU">
 
-<!ENTITY lfs-bootscripts-version "20100627">                 <!-- Scripts depend on this format -->
+<!ENTITY lfs-bootscripts-version "20110318">                 <!-- 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 -->