aboutsummaryrefslogtreecommitdiffstats
path: root/bootscripts/contrib/lsb-v3/init.d/mountfs
blob: eb9a728eb31a27830f1680eb7b4f5b3615de85e1 (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
#!/bin/sh
# Begin /etc/init.d/mountfs

### BEGIN INIT INFO
# Provides:            $local_fs
# Required-Start:      udev checkfs
# Should-Start:        lvm
# Required-Stop:       sendsignals
# Should-Stop:
# Default-Start:       sysinit 0 6
# Default-Stop:
# Short-Description:   Mounts and unmounts all local filesystems.
# Description:         Remounts root filesystem read/write and mounts all
#                      remaining local filesystems defined in /etc/fstab on
#                      start.  Rmounts root filesystem read-only and unmounts
#                      remaining filesystems on stop.
# X-LFS-Default-Start: S40
# X-LFS-Default-Stop:  S70
# X-LFS-Provided-By:   LFS
### END INIT INFO

. /lib/lsb/init-functions

case "${1}" in
    start)
        message="Remounting root file system in read-write mode..."
        mount -n -o remount,rw / >/dev/null
        evaluate_retval standard

        # Remove fsck-related file system watermarks.
        rm -f /fastboot /forcefsck

        message="Recording existing mounts in /etc/mtab..."
        > /etc/mtab
        mount -f / || failed=1
        mount -f /proc || failed=1
        mount -f /sys || failed=1
        (exit ${failed})
        evaluate_retval standard

        # This will mount all filesystems that do not have _netdev in
        # their option list.  _netdev denotes a network filesystem.
        message="Mounting remaining file systems..."
        mount -a -O no_netdev >/dev/null
        evaluate_retval standard
        ;;

    stop)
        message="Unmounting all other currently mounted file systems..."
        umount -a -d -r >/dev/null
        evaluate_retval standard
        ;;

    *)
        echo "Usage: ${0} {start|stop}"
        exit 1
        ;;
esac

# End /etc/init.d/mountfs