4337 eliminate /etc/TIMEZONE
[illumos-gate.git] / usr / src / man / man4 / system.4
blob6430dcc83957ab74a77e046c632577e4a81f541f
1 '\" te
2 .\" Copyright (c) 2003 Sun Microsystems, Inc.  All Rights Reserved.
3 .\" Copyright 1989 AT&T
4 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
5 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
6 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
7 .TH SYSTEM 4 "Nov 3, 2004"
8 .SH NAME
9 system \- system configuration information file
10 .SH DESCRIPTION
11 .sp
12 .LP
13 The \fBsystem\fR file is used for customizing the operation of the operating
14 system kernel. The recommended procedure is to preserve the original
15 \fBsystem\fR file before modifying it.
16 .sp
17 .LP
18 The \fBsystem\fR file contains commands which are read by the kernel during
19 initialization and used to customize the operation of your system. These
20 commands are useful for modifying the system's treatment of its loadable kernel
21 modules.
22 .sp
23 .LP
24 The syntax of the \fBsystem\fR file consists of a list of keyword/value pairs
25 which are recognized by the system as valid commands. Comment lines must begin
26 with an asterisk (\fB*\fR) or a hash mark (\fB#\fR) and end with a newline
27 character. All commands are case-insensitive except where noted.
28 .sp
29 .LP
30 Commands that modify the system's operation with respect to loadable kernel
31 modules require you to specify the module type by listing the module's
32 namespace. The following namespaces are currently supported on all platforms:
33 .sp
34 .ne 2
35 .na
36 \fB\fBdrv\fR\fR
37 .ad
38 .RS 10n
39 Modules in this namespace are device drivers.
40 .RE
42 .sp
43 .ne 2
44 .na
45 \fB\fBexec\fR\fR
46 .ad
47 .RS 10n
48 Modules in this namespace are execution format modules. The following
49 \fBexec\fR modules are currently provided:
50 .sp
51 .ne 2
52 .na
53 \fBOnly on SPARC system:\fR
54 .ad
55 .RS 28n
56 .sp
57 .in +2
58 .nf
59 aoutexec
60 .fi
61 .in -2
62 .sp
64 .RE
66 .sp
67 .ne 2
68 .na
69 \fBOnly on x86 system:\fR
70 .ad
71 .RS 28n
72 .sp
73 .in +2
74 .nf
75 coffexec
76 .fi
77 .in -2
78 .sp
80 .RE
82 .sp
83 .ne 2
84 .na
85 \fBOn SPARC and IA systems:\fR
86 .ad
87 .RS 28n
88 .sp
89 .in +2
90 .nf
91 elfexec
92 intpexec
93 javaexec
94 .fi
95 .in -2
96 .sp
98 .RE
103 .ne 2
105 \fB\fBfs\fR\fR
107 .RS 10n
108 These modules are filesystems.
112 .ne 2
114 \fB\fBsched\fR\fR
116 .RS 10n
117 These modules implement a process scheduling algorithm.
121 .ne 2
123 \fB\fBstrmod\fR\fR
125 .RS 10n
126 These modules are \fBSTREAMS\fR modules.
130 .ne 2
132 \fB\fBsys\fR\fR
134 .RS 10n
135 These modules implement loadable system-call modules.
139 .ne 2
141 \fB\fBmisc\fR\fR
143 .RS 10n
144 These modules do not fit into any of the above categories, so are considered
145 "miscellaneous" modules.
150 SPARC only:
152 .ne 2
154 \fB\fBdacf\fR\fR
156 .RS 8n
157 These modules provide rules and actions for device auto-configuration.
161 .ne 2
163 \fB\fBtod\fR\fR
165 .RS 8n
166 These modules provide support for the time of day hardware.
170 .ne 2
172 \fB\fBcpu\fR\fR
174 .RS 8n
175 These modules provide \fBCPU\fR-specific kernel routines.
180 A description of each of the supported commands follows:
182 .ne 2
184 \fB\fBexclude:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
186 .sp .6
187 .RS 4n
188 Do not allow the listed loadable kernel module to be loaded. \fBexclude\fR
189 commands are cumulative; the list of modules to \fBexclude\fR is created by
190 combining every \fBexclude\fR entry in the \fBsystem\fR file.
194 .ne 2
196 \fB\fBinclude:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
198 .sp .6
199 .RS 4n
200 Include the listed loadable kernel module. This is the system's default, so
201 using \fBinclude\fR does not modify the system's operation. \fBinclude\fR
202 commands are cumulative.
206 .ne 2
208 \fB\fBforceload:\fR <\fInamespace\fR>/<\fImodulename\fR>\fR
210 .sp .6
211 .RS 4n
212 Force this kernel module to be loaded during kernel initialization. The default
213 action is to automatically load the kernel module when its services are first
214 accessed. \fBforceload\fR commands are cumulative.
218 .ne 2
220 \fB\fBrootdev:\fR <\fIdevice name\fR>\fR
222 .sp .6
223 .RS 4n
224 Set the root device to the listed value instead of using the default root
225 device as supplied by the boot program.
229 .ne 2
231 \fB\fBrootfs:\fR <\fIroot filesystem type\fR>\fR
233 .sp .6
234 .RS 4n
235 Set the root filesystem type to the listed value.
239 .ne 2
241 \fB\fBmoddir:\fR <\fIfirst module path\fR>[[{:, }<\fIsecond ...\fR>]...]\fR
243 .sp .6
244 .RS 4n
245 Set the search path for loadable kernel modules. This command operates very
246 much like the \fBPATH\fR shell variable. Multiple directories to search can be
247 listed together, delimited either by blank spaces or colons.
251 .ne 2
253 \fB\fBset\fR [\fI<module>\fR:]\fI<symbol>\fR {=, |, &} [~][-]\fI<value>\fR\fR
255 .sp .6
256 .RS 4n
257 Set an integer or character pointer in the kernel or in the selected kernel
258 module to a new value. This command is used to change kernel and module
259 parameters and thus modify the operation of your system. Assignment operations
260 are not cumulative, whereas bitwise \fBAND\fR and \fBOR\fR operations are
261 cumulative.
263 Operations that are supported for modifying integer variables are: simple
264 assignment, inclusive bitwise \fBOR,\fR bitwise \fBAND,\fR one's complement,
265 and negation. Variables in a specific loadable module can be targeted for
266 modification by specifying the variable name prefixed with the kernel module
267 name and a colon (:) separator. Values can be specified as hexadecimal (0x10),
268 Octal (046), or Decimal (5).
270 The only operation supported for modifying character pointers is simple
271 assignment. Static string data such as character arrays cannot be modified
272 using the \fBset\fR command. Use care and ensure that the variable you are
273 modifying is in fact a character pointer. The \fBset\fR command is very
274 powerful, and will likely cause problems if used carelessly. The following
275 escape sequences are supported within the quoted string:
277 .in +2
279 \en     (newline)
280 \et     (tab)
281 \eb     (backspace)
283 .in -2
288 .SH EXAMPLES
290 \fBExample 1 \fRA sample \fBsystem\fR file.
293 The following is a sample \fBsystem\fR file.
296 .in +2
298 * Force the ELF exec kernel module to be loaded during kernel
299 * initialization. Execution type modules are in the exec namespace.
300 forceload: exec/elfexec
301 * Change the root device to /sbus@1,f8000000/esp@0,800000/sd@3,0:a.
302 * You can derive root device names from /devices.
303 * Root device names must be the fully expanded Open Boot Prom
304 * device name. This command is platform and configuration specific.
305 * This example uses the first partition (a) of the SCSI disk at
306 * SCSI target 3 on the esp host adapter in slot 0 (on board)
307 * of the SBus of the machine.
308 * Adapter unit-address 3,0 at sbus unit-address 0,800000.
309 rootdev: /sbus@1,f8000000/esp@0,800000/sd@3,0:a
310 * Set the filesystem type of the root to ufs. Note that
311 * the equal sign can be used instead of the colon.
312 rootfs:ufs
313 * Set the search path for kernel modules to look first in
314 * /usr/phil/mod_test for modules, then in /kernel/modules (the
315 * default) if not found. Useful for testing new modules.
316 * Note that you can delimit your module pathnames using
317 * colons instead of spaces: moddir:/newmodules:/kernel/modules
318 moddir:/usr/phil/mod_test /kernel/modules.
319 * Set the configuration option {_POSIX_CHOWN_RESTRICTED} :
320 * This configuration option is enabled by default.
321 set rstchown = 1
322 * Disable the configuration option {_POSIX_CHOWN_RESTRICTED} :
323 set rstchown = 0
324 * Turn on debugging messages in the modules mydriver. This is useful
325 * during driver development.
326 set mydriver:debug = 1
327 * Bitwise AND the kernel variable "moddebug" with the
328 * one's complement of the hex value 0x880, and set
329 * "moddebug" to this new value.
330 set moddebug & ~0x880
331 * Demonstrate the cumulative effect of the SET
332 * bitwise AND/OR operations by further modifying "moddebug"
333 * by ORing it with 0x40.
334 set moddebug | 0x40
336 .in -2
339 .SH SEE ALSO
342 \fBboot\fR(1M), \fBinit\fR(1M), \fBkernel\fR(1M)
343 .SH WARNINGS
346 Use care when modifying the \fBsystem\fR file; it modifies the operation of the
347 kernel. If you preserved the original \fBsystem\fR file, you can boot using
348 \fBboot -a\fR, which will ask you to specify the path to the saved file. This
349 should allow the system to boot correctly. If you cannot locate a \fBsystem\fR
350 file that will work, you may specify \fB/dev/null\fR. This acts as an empty
351 \fBsystem\fR file, and the system will attempt to boot using its default
352 settings.
353 .SH NOTES
356 The \fB/etc/system\fR file is read only once, at boot time.