@@ -12,7 +12,7 @@ section should never conflict with the base standard.</para>
12
12
<section id =' rootDirectory' ><title >/ : Root directory</title >
13
13
14
14
<para >On Linux systems, if the kernel is located in
15
- <filename >/</filename >, we recommend using the names
15
+ <filename class = " directory " >/</filename >, we recommend using the names
16
16
<filename >vmlinux</filename > or <filename >vmlinuz</filename >, which
17
17
have been used in recent Linux kernel source packages.</para >
18
18
@@ -23,7 +23,7 @@ have been used in recent Linux kernel source packages.</para>
23
23
<title >/bin : Essential user command binaries (for use by all users)</title >
24
24
25
25
<para >Linux systems which require them place these additional files into
26
- <filename >/bin</filename >:</para >
26
+ <filename class = " directory " >/bin</filename >:</para >
27
27
<itemizedlist >
28
28
29
29
<listitem ><para ><command >setserial</command ></para >
@@ -37,11 +37,12 @@ have been used in recent Linux kernel source packages.</para>
37
37
<title >/dev : Devices and special files</title >
38
38
39
39
40
- <para >The following devices must exist under /dev.
40
+ <para >The following devices must exist under
41
+ <filename class =" directory" >/dev</filename >.
41
42
42
43
<variablelist >
43
44
44
- <varlistentry ><term ><filename >/dev/null</filename ></term >
45
+ <varlistentry ><term ><filename class = " devicefile " >/dev/null</filename ></term >
45
46
<listitem >
46
47
<para >
47
48
All data written to this device is discarded. A read from this device
@@ -50,7 +51,7 @@ will return an EOF condition.
50
51
</listitem >
51
52
</varlistentry >
52
53
53
- <varlistentry ><term ><filename >/dev/zero</filename ></term >
54
+ <varlistentry ><term ><filename class = " devicefile " >/dev/zero</filename ></term >
54
55
<listitem >
55
56
<para >
56
57
This device is a source of zeroed out data. All data written to this
@@ -60,7 +61,7 @@ containing the value zero as was requested.
60
61
</listitem >
61
62
</varlistentry >
62
63
63
- <varlistentry ><term ><filename >/dev/tty</filename ></term >
64
+ <varlistentry ><term ><filename class = " devicefile " >/dev/tty</filename ></term >
64
65
<listitem >
65
66
<para >
66
67
This device is a synonym for the controlling terminal of a
@@ -74,9 +75,12 @@ as if the actual controlling terminal device had been opened.
74
75
<tip ><title >Rationale</title >
75
76
76
77
<para >Previous versions of the FHS had stricter requirements for
77
- <filename >/dev</filename >. Other devices may also exist in
78
- /dev. Device names may exist as symbolic links to other device nodes
79
- located in /dev or subdirectories of /dev. There is no requirement
78
+ <filename class =" directory" >/dev</filename >.
79
+ Other devices may also exist in <filename class =" directory" >/dev</filename >.
80
+ Device names may exist as symbolic links to other device nodes
81
+ located in <filename class =" directory" >/dev</filename >
82
+ or subdirectories of <filename class =" directory" >/dev</filename >.
83
+ There is no requirement
80
84
concerning major/minor number values.</para >
81
85
</tip >
82
86
</para >
@@ -87,7 +91,7 @@ concerning major/minor number values.</para>
87
91
<title >/etc : Host-specific system configuration</title >
88
92
89
93
<para >Linux systems which require them place these additional files into
90
- <filename >/etc</filename >.</para >
94
+ <filename class = " directory " >/etc</filename >.</para >
91
95
92
96
<itemizedlist >
93
97
@@ -101,9 +105,11 @@ concerning major/minor number values.</para>
101
105
<section id =' procKernelAndProcessInformationVir' >
102
106
<title >/proc : Kernel and process information virtual filesystem</title >
103
107
104
- <para >The <filename >proc</filename > filesystem is the de-facto
108
+ <para >The <systemitem class =" filesystem" >proc</systemitem > filesystem
109
+ is the de-facto
105
110
standard Linux method for handling process and system information,
106
- rather than <filename >/dev/kmem</filename > and other similar methods.
111
+ rather than <filename class =" devicefile" >/dev/kmem</filename >
112
+ and other similar methods.
107
113
We strongly encourage this for the storage and retrieval of process
108
114
information as well as other kernel and memory information.</para >
109
115
@@ -113,9 +119,10 @@ information as well as other kernel and memory information.</para>
113
119
<title >/sbin : Essential system binaries</title >
114
120
115
121
<para >Linux systems place commands relating to filesystem maintenance and
116
- boot loader management into <filename >/sbin</filename >.</para >
122
+ boot loader management into <filename class =" directory" >/sbin</filename >.
123
+ </para >
117
124
118
- <para >Optional files for /sbin:</para >
125
+ <para >Optional files for < filename class = " directory " > /sbin</ filename > :</para >
119
126
<itemizedlist spacing =" normal" mark =" bullet" >
120
127
<listitem >
121
128
<para >Static binaries:</para >
@@ -139,15 +146,16 @@ useful when things go wrong. The primary use of
139
146
<command >sln</command > (to repair incorrect symlinks in
140
147
<filename >/lib</filename > after a poorly orchestrated upgrade) is no
141
148
longer a major concern now that the <command >ldconfig</command >
142
- program (usually located in <filename >/usr/sbin</filename >) exists and
149
+ program (usually located in <filename class =" directory" >/usr/sbin</filename >)
150
+ exists and
143
151
can act as a guiding hand in upgrading the dynamic libraries. Static
144
152
<command >sync</command > is useful in some emergency situations.
145
153
Note that these need not be statically linked versions of the standard
146
154
<command >ln</command > and <command >sync</command >, but may
147
155
be.</para >
148
156
149
157
<para >The <command >ldconfig</command > binary is optional for
150
- <filename >/sbin</filename > since a site may choose to run
158
+ <filename class = " directory " >/sbin</filename > since a site may choose to run
151
159
<command >ldconfig</command > at boot time, rather than only when
152
160
upgrading the shared libraries. (It's not clear whether or not it is
153
161
advantageous to run <command >ldconfig</command > on each boot.) Even
@@ -185,15 +193,15 @@ replacement.</para>
185
193
<para >So as to cope with the fact that some keyboards come up with
186
194
such a high repeat rate as to be unusable,
187
195
<command >kbdrate</command > may be installed in
188
- <filename >/sbin</filename > on some systems.</para >
196
+ <filename class = " directory " >/sbin</filename > on some systems.</para >
189
197
190
198
<para >Since the default action in the kernel for the Ctrl-Alt-Del key
191
199
combination is an instant hard reboot, it is generally advisable to
192
200
disable the behavior before mounting the root filesystem in read-write
193
201
mode. Some <command >init</command > suites are able to disable
194
202
Ctrl-Alt-Del, but others may require the
195
203
<command >ctrlaltdel</command > program, which may be installed in
196
- <filename >/sbin</filename > on those systems.</para >
204
+ <filename class = " directory " >/sbin</filename > on those systems.</para >
197
205
198
206
</listitem >
199
207
</itemizedlist >
@@ -203,7 +211,8 @@ Ctrl-Alt-Del, but others may require the
203
211
<section id =' sysKernelAndSystemInformation' >
204
212
<title >/sys : Kernel and system information virtual filesystem</title >
205
213
206
- <para >The <filename >sys</filename > filesystem is the location where
214
+ <para >The <systemitem class =" filesystem" >sys</systemitem > filesystem
215
+ is the location where
207
216
information about devices, drivers, and some kernel features is
208
217
exposed. Its underlying structure is determined by the particular
209
218
Linux kernel being used at the moment, and is otherwise
@@ -229,13 +238,17 @@ installed and only for systems not based on glibc.</para>
229
238
230
239
<title >/usr/src : Source code</title >
231
240
232
- <para >For systems based on glibc, there are no specific guidelines for
233
- this directory. For systems based on Linux libc revisions prior to
234
- glibc, the following guidelines and rationale apply:</para >
241
+ <para >For systems based on
242
+ <systemitem class =" library" >glibc</systemitem >,
243
+ there are no specific guidelines for
244
+ this directory. For systems based on Linux
245
+ <systemitem class =" library" >libc</systemitem > revisions prior to
246
+ <systemitem class =" library" >glibc</systemitem >,
247
+ the following guidelines and rationale apply:</para >
235
248
236
249
<para >The only source code that should be placed in a specific
237
250
location is the Linux kernel source code. It is located in
238
- <filename >/usr/src/linux</filename >.</para >
251
+ <filename class = " directory " >/usr/src/linux</filename >.</para >
239
252
240
253
<para >If a C or C++ compiler is installed, but the complete Linux
241
254
kernel source code is not installed, then the include files from the
@@ -249,15 +262,17 @@ kernel source code must be located in these directories:</para>
249
262
<para ><filename >< arch> </filename > is the name of the system
250
263
architecture.</para >
251
264
252
- <note ><title >Note</title ><para > <filename >/usr/src/linux</filename >
265
+ <note ><title >Note</title >
266
+ <para ><filename class =" directory" >/usr/src/linux</filename >
253
267
may be a symbolic link to a kernel source code tree.</para ></note >
254
268
255
269
<tip ><title >Rationale</title >
256
270
257
271
258
272
<para >It is important that the kernel include files be located in
259
- <filename >/usr/src/linux</filename > and not in
260
- <filename >/usr/include</filename > so there are no problems when system
273
+ <filename class =" directory" >/usr/src/linux</filename > and not in
274
+ <filename class =" directory" >/usr/include</filename >
275
+ so there are no problems when system
261
276
administrators upgrade their kernel version for the first time.</para >
262
277
263
278
</tip >
0 commit comments