Annotation of /trunk/magellan-initscripts/rc/mountfs
Parent Directory | Revision Log
Revision 513 -
(hide annotations)
(download)
Fri Aug 17 22:06:35 2007 UTC (17 years, 1 month ago) by niro
Original Path: trunk/magellan-initscripts/etc/rc.d/init.d/mountfs
File size: 2970 byte(s)
Fri Aug 17 22:06:35 2007 UTC (17 years, 1 month ago) by niro
Original Path: trunk/magellan-initscripts/etc/rc.d/init.d/mountfs
File size: 2970 byte(s)
-record usbfs
1 | niro | 2 | #!/bin/bash |
2 | niro | 513 | # $Header: /home/cvsd/magellan-cvs/magellan-src/magellan-initscripts/etc/rc.d/init.d/mountfs,v 1.8 2007-08-17 22:06:35 niro Exp $ |
3 | niro | 2 | |
4 | #%rlevels: 7:s 0:k 6:k | ||
5 | #%start: 40 | ||
6 | #%stop: 60 | ||
7 | |||
8 | #deps | ||
9 | #%needs: | ||
10 | #%before: | ||
11 | #%after: | ||
12 | |||
13 | source /etc/sysconfig/rc | ||
14 | source $rc_functions | ||
15 | |||
16 | case "$1" in | ||
17 | start) | ||
18 | niro | 342 | # fake mounts rootfs (taken from /.bootdev) |
19 | if [ -e /.bootdev ] | ||
20 | then | ||
21 | source /.bootdev | ||
22 | mount -f ${BOOTDEV} /mnt/cdrom -t ${FSTYPE} -o ro | ||
23 | # we don't delete this for the alx settings import | ||
24 | # wanna check if usbstorage or not | ||
25 | # rm /.bootdev | ||
26 | niro | 2 | |
27 | niro | 342 | # fake mounts cloop, loop or sqsh |
28 | if [ -f /mnt/cdrom/livecdrootfs.loop ] | ||
29 | then | ||
30 | mount -f /mnt/cdrom/livecdrootfs.loop /mnt/cloop -t ext2 -o ro | ||
31 | |||
32 | elif [ -f /mnt/cdrom/livecdrootfs.cloop ] | ||
33 | then | ||
34 | mount -f /mnt/cdrom/livecdrootfs.cloop /mnt/cloop -t ext2 -o ro | ||
35 | |||
36 | elif [ -f /mnt/cdrom/livecdrootfs.sqsh ] | ||
37 | then | ||
38 | mount -f /mnt/cdrom/livecdrootfs.sqsh /mnt/cloop -t ext2 -o ro | ||
39 | fi | ||
40 | else | ||
41 | echo -e ${COLOREDSTAR}"Remounting root file system in read-write mode ..." | ||
42 | mount -n -o remount,rw / | ||
43 | evaluate_retval | ||
44 | fi | ||
45 | |||
46 | niro | 2 | echo -e ${COLOREDSTAR}"Recording existing mounts in /etc/mtab ..." |
47 | > /etc/mtab | ||
48 | niro | 342 | |
49 | niro | 2 | mount -f / && mount -f /proc |
50 | niro | 71 | |
51 | niro | 149 | # records devfs as mounted |
52 | if is_fs_mounted devfs | ||
53 | niro | 2 | then |
54 | niro | 149 | mount -f -t devfs devfs /dev |
55 | niro | 2 | fi |
56 | niro | 71 | |
57 | niro | 149 | # records devpts as mounted |
58 | if is_fs_mounted devpts | ||
59 | niro | 2 | then |
60 | niro | 149 | mount -f -t devpts devpts /dev/pts |
61 | niro | 2 | fi |
62 | |||
63 | niro | 149 | # records sysfs as mounted |
64 | if is_fs_mounted sysfs | ||
65 | niro | 2 | then |
66 | niro | 149 | mount -f -t sysfs sysfs /sys |
67 | niro | 2 | fi |
68 | niro | 71 | |
69 | niro | 149 | # records udev as mounted |
70 | if is_fs_mounted udev | ||
71 | niro | 2 | then |
72 | niro | 512 | # get the fstype of udev - it may be ramfs or tmpfs |
73 | udev_fstype="$(cat /proc/filesystems | grep ${filesys} | cut -d $'\t' -f3)" | ||
74 | mount -f -t ${udev_fstype} udev /dev | ||
75 | niro | 2 | fi |
76 | |||
77 | niro | 513 | # records usbfs as mounted |
78 | if is_fs_mounted usbfs | ||
79 | then | ||
80 | mount -f -t usbfs usbfs /proc/bus/usb | ||
81 | fi | ||
82 | |||
83 | niro | 2 | evaluate_retval |
84 | |||
85 | # The following mount command will mount all file systems. If you | ||
86 | # have other (network based) file system that should not be or | ||
87 | # cannot be mounted at this time, add them to the NO_FS variable | ||
88 | # below. All file systems that are added to the variable in the | ||
89 | # form of no<filesystem> will be skipped. | ||
90 | |||
91 | NO_FS="nonfs,nosmbfs,noproc,nocoda,noncpfs,noshm" | ||
92 | echo -e ${COLOREDSTAR}"Mounting remaining file systems ..." | ||
93 | mount -a -t $NO_FS | ||
94 | evaluate_retval | ||
95 | |||
96 | update_svcstatus $1 | ||
97 | splash svc_started "$(basename $0)" 0 | ||
98 | ;; | ||
99 | |||
100 | stop) | ||
101 | echo -e ${COLOREDSTAR}"Unmounting all other currently mounted file systems ..." | ||
102 | if [ -e /dev/.udev ] | ||
103 | then | ||
104 | NO_FS="noramfs" | ||
105 | umount -a -r -d -t ${NO_FS} | ||
106 | else | ||
107 | # -d, umount loop devices as well | ||
108 | umount -a -r -d | ||
109 | fi | ||
110 | evaluate_retval | ||
111 | |||
112 | niro | 342 | if [ -e /.bootdev ] && [ -x /usr/bin/eject ] |
113 | then | ||
114 | niro | 354 | echo -e ${COLOREDSTAR}"Trying to eject the live-media ..." |
115 | niro | 342 | eject -m /mnt/cdrom &> /dev/null |
116 | evaluate_retval | ||
117 | fi | ||
118 | |||
119 | niro | 2 | update_svcstatus $1 |
120 | splash svc_stopped "$(basename $0)" 0 | ||
121 | ;; | ||
122 | |||
123 | *) | ||
124 | echo "Usage: $0 {start|stop}" | ||
125 | exit 1 | ||
126 | ;; | ||
127 | esac |
Properties
Name | Value |
---|---|
svn:executable | * |