mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-01-19 13:37:39 +00:00
b08f409653
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@174 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
111 lines
2.6 KiB
XML
111 lines
2.6 KiB
XML
<sect1 id="ch07-mountfs">
|
|
<title>Creating the mountfs script</title>
|
|
|
|
<para>
|
|
Create a new file <filename>/etc/init.d/mountfs</filename> containing
|
|
the following:
|
|
</para>
|
|
|
|
<literallayout>
|
|
|
|
<userinput>cat > mountfs << "EOF"</userinput>
|
|
#!/bin/sh
|
|
# Begin /etc/init.d/mountfs
|
|
|
|
#
|
|
# Include the functions declared in the /etc/init.d/functions file
|
|
#
|
|
|
|
source /etc/init.d/functions
|
|
|
|
case "$1" in
|
|
start)
|
|
|
|
#
|
|
# Remount the root partition in read-write mode. -n tells mount
|
|
# not to
|
|
# write to the /etc/mtab file (because it can't do this. The
|
|
# root
|
|
# partition is most likely still mounted in read-only mode
|
|
#
|
|
|
|
echo -n "Remounting root file system in read-write mode..."
|
|
/bin/mount -n -o remount,rw /
|
|
evaluate_retval
|
|
|
|
#
|
|
# First empty the /etc/mtab file. Then remount root partition
|
|
# in read-write
|
|
# mode again but pass -f to mount. This way mount does
|
|
# everything
|
|
# except the mount itself. This is needed for it to write to the
|
|
# mtab
|
|
# file which contains a list of currently mounted file systems.
|
|
#
|
|
|
|
echo > /etc/mtab
|
|
/bin/mount -f -o remount,rw /
|
|
|
|
#
|
|
# Remove the possible /fastboot and /forcefsck files. they are
|
|
# only
|
|
# supposed to be used during the next reboot's checkfs wich just
|
|
# happened. If you want to fastboot or forcefsck again you'll
|
|
# have to
|
|
# recreate the files
|
|
#
|
|
|
|
/bin/rm -f /fastboot /forcefsck
|
|
|
|
#
|
|
# Walk through /etc/fstab and mount all file systems that don't
|
|
# have the noauto option set in the fs_mntops field (the 4th
|
|
# field.
|
|
# See man fstab for more info)
|
|
#
|
|
|
|
echo -n "Mounting other file systems..."
|
|
/bin/mount -a
|
|
evaluate_retval
|
|
;;
|
|
|
|
stop)
|
|
|
|
#
|
|
# Deactive all the swap partitions
|
|
#
|
|
|
|
echo -n "Deactivating swap..."
|
|
/sbin/swapoff -a
|
|
evaluate_retval
|
|
|
|
#
|
|
# And unmount all the file systems, mounting the root file
|
|
# system
|
|
# read-only (all are unmounted but because root can't be
|
|
# unmounted
|
|
# at this point mount will automatically mount it read-only
|
|
# which
|
|
# is what supposed to happen. This way no data can be written
|
|
# anymore from disk)
|
|
#
|
|
|
|
echo -n "Unmounting file systems..."
|
|
/bin/umount -a -r
|
|
evaluate_retval
|
|
;;
|
|
|
|
*)
|
|
echo "Usage: $0 {start|stop}"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
# End /etc/init.d/mountfs
|
|
<userinput>EOF</userinput>
|
|
|
|
</literallayout>
|
|
|
|
</sect1>
|
|
|