OSDN Git Service

2be44e2ef6a5cbe3f2eb65d63e1c6733c8fa7951
[linuxjf/JF.git] / docs / LFS-BOOK / scripts / apds12.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
4   <head>
5     <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
6     <title>
7       D.12. /etc/rc.d/init.d/cleanfs
8     </title>
9     <link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
10     <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
11     <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
12     "text/css" media="print" />
13   </head>
14   <body class="lfs" id="lfs-6.8">
15     <div class="navheader">
16       <h4>
17         Linux From Scratch - Version 6.8
18       </h4>
19       <h3>
20         付録 D. ブートスクリプトと sysconfig スクリプト version-20100627
21       </h3>
22       <ul>
23         <li class="prev">
24           <a accesskey="p" href="apds11.html" title=
25           "/etc/rc.d/init.d/udev_retry">前のページ</a>
26           <p>
27             /etc/rc.d/init.d/udev_retry
28           </p>
29         </li>
30         <li class="next">
31           <a accesskey="n" href="apds13.html" title=
32           "/etc/rc.d/init.d/console">次のページ</a>
33           <p>
34             /etc/rc.d/init.d/console
35           </p>
36         </li>
37         <li class="up">
38           <a accesskey="u" href="scripts.html" title=
39           "付録 D. ブートスクリプトと sysconfig スクリプト version-20100627">上に戻る</a>
40         </li>
41         <li class="home">
42           <a accesskey="h" href="../index.html" title=
43           "Linux From Scratch - Version 6.8">ホーム</a>
44         </li>
45       </ul>
46     </div>
47     <div class="wrap" lang="ja" xml:lang="ja">
48       <h1 class="sect1">
49         <a id="cleanfs" name="cleanfs"></a>D.12. /etc/rc.d/init.d/cleanfs
50       </h1>
51       <pre class="screen">
52 #!/bin/sh
53 ########################################################################
54 # Begin $rc_base/init.d/cleanfs
55 #
56 # Description : Clean file system
57 #
58 # Authors     : Gerard Beekmans - gerard@linuxfromscratch.org
59 #
60 # Version     : 00.00
61 #
62 # Notes       :
63 #
64 ########################################################################
65
66 . /etc/sysconfig/rc
67 . ${rc_functions}
68
69 # Function to create files/directory on boot.
70 create_files() {
71     # Read in the configuration file.
72     exec 9&gt;&amp;0 &lt; /etc/sysconfig/createfiles
73         while read name type perm usr grp dtype maj min junk
74         do
75
76             # Ignore comments and blank lines.
77                    case "${name}" in
78                 ""|\#*) continue ;;
79             esac
80
81             # Ignore existing files.
82             if [ ! -e "${name}" ]; then
83                 # Create stuff based on its type.
84                 case "${type}" in
85                     dir)
86                         mkdir "${name}"
87                         ;;
88                     file)
89                         :&gt; "${name}"
90                         ;;
91                     dev)
92                         case "${dtype}" in
93                             char)
94                                 mknod "${name}" c ${maj} ${min}
95                                 ;;
96                             block)
97                                 mknod "${name}" b ${maj} ${min}
98                                 ;;
99                             pipe)
100                                 mknod "${name}" p
101                                 ;;
102                             *) 
103                                 boot_mesg -n "\nUnknown device type: ${dtype}" ${WARNING}
104                                 boot_mesg "" ${NORMAL}
105                                 ;;
106                         esac
107                         ;;
108                     *)
109                         boot_mesg -n "\nUnknown type: ${type}" ${WARNING}
110                         boot_mesg "" ${NORMAL}
111                         continue
112                         ;;
113                 esac
114
115                 # Set up the permissions, too.
116                 chown ${usr}:${grp} "${name}"
117                 chmod ${perm} "${name}"
118             fi
119         done
120     exec 0&gt;&amp;9 9&gt;&amp;-
121 }
122
123 case "${1}" in
124     start)
125         boot_mesg -n "Cleaning file systems:" ${INFO}
126
127         boot_mesg -n " /tmp" ${NORMAL}
128         cd /tmp &amp;&amp;
129         find . -xdev -mindepth 1 ! -name lost+found \
130             -delete || failed=1
131
132         boot_mesg -n " /var/lock" ${NORMAL}
133         cd /var/lock &amp;&amp;
134         find . -type f -exec rm -f {} \; || failed=1
135
136         boot_mesg " /var/run" ${NORMAL}
137         cd /var/run &amp;&amp;
138         find . ! -type d ! -name utmp \
139             -exec rm -f {} \; || failed=1
140         &gt; /var/run/utmp
141         if grep -q '^utmp:' /etc/group ; then
142             chmod 664 /var/run/utmp
143             chgrp utmp /var/run/utmp
144         fi
145
146         (exit ${failed})
147         evaluate_retval
148
149         if egrep -qv '^(#|$)' /etc/sysconfig/createfiles 2&gt;/dev/null; then
150             boot_mesg "Creating files and directories..."
151             create_files
152             evaluate_retval
153         fi
154         ;;
155     *)
156         echo "Usage: ${0} {start}"
157         exit 1
158         ;;
159 esac
160
161 # End $rc_base/init.d/cleanfs
162 </pre>
163     </div>
164     <div class="navfooter">
165       <ul>
166         <li class="prev">
167           <a accesskey="p" href="apds11.html" title=
168           "/etc/rc.d/init.d/udev_retry">前のページ</a>
169           <p>
170             /etc/rc.d/init.d/udev_retry
171           </p>
172         </li>
173         <li class="next">
174           <a accesskey="n" href="apds13.html" title=
175           "/etc/rc.d/init.d/console">次のページ</a>
176           <p>
177             /etc/rc.d/init.d/console
178           </p>
179         </li>
180         <li class="up">
181           <a accesskey="u" href="scripts.html" title=
182           "付録 D. ブートスクリプトと sysconfig スクリプト version-20100627">上に戻る</a>
183         </li>
184         <li class="home">
185           <a accesskey="h" href="../index.html" title=
186           "Linux From Scratch - Version 6.8">ホーム</a>
187         </li>
188       </ul>
189     </div>
190   </body>
191 </html>