blob: 99df6c1811ce844d664fb5884de45db9c0f95454 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
<sect1 id="ch07-mountfs">
<title>Creating the mountfs script</title>
<?dbhtml filename="mountfs.html" dir="chapter07"?>
<para>Create the <filename>/etc/init.d/mountfs</filename> script by running
the following command:</para>
<para><screen><userinput>cat > /etc/init.d/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 which 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)
#
# Deactivate 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></screen></para>
</sect1>
|