1system(4)                        File Formats                        system(4)
2
3
4

NAME

6       system - system configuration information file
7

DESCRIPTION

9       The  system file is used for customizing the operation of the operating
10       system kernel. The recommended procedure is to  preserve  the  original
11       system file before modifying it.
12
13
14       The  system  file contains commands which are read by the kernel during
15       initialization and used to customize  the  operation  of  your  system.
16       These  commands  are useful for modifying the system's treatment of its
17       loadable kernel modules.
18
19
20       The syntax of the system file consists of a list of keyword/value pairs
21       which  are  recognized  by  the system as valid commands. Comment lines
22       must begin with an asterisk (*) or a hash mark (#) and end with a  new‐
23       line character. All commands are case-insensitive except where noted.
24
25
26       Commands  that  modify  the system's operation with respect to loadable
27       kernel modules require you to specify the module type  by  listing  the
28       module's namespace. The following namespaces are currently supported on
29       all platforms:
30
31       drv       Modules in this namespace are device drivers.
32
33
34       exec      Modules in this namespace are execution format  modules.  The
35                 following exec modules are currently provided:
36
37                 Only on SPARC system:
38                                               aoutexec
39
40
41
42
43                 Only on x86 system:
44                                               coffexec
45
46
47
48
49                 On SPARC and IA systems:
50                                               elfexec
51                                               intpexec
52                                               javaexec
53
54
55
56
57
58       fs        These modules are filesystems.
59
60
61       sched     These modules implement a process scheduling algorithm.
62
63
64       strmod    These modules are STREAMS modules.
65
66
67       sys       These modules implement loadable system-call modules.
68
69
70       misc      These modules do not fit into any of the above categories, so
71                 are considered "miscellaneous" modules.
72
73
74
75       SPARC only:
76
77       dacf    These modules provide rules and actions for device auto-config‐
78               uration.
79
80
81       tod     These modules provide support for the time of day hardware.
82
83
84       cpu     These modules provide CPU-specific kernel routines.
85
86
87
88       A description of each of the supported commands follows:
89
90       exclude: <namespace>/<modulename>
91
92           Do  not  allow  the  listed  loadable  kernel  module to be loaded.
93           exclude commands are cumulative; the list of modules to exclude  is
94           created by combining every exclude entry in the system file.
95
96
97       include: <namespace>/<modulename>
98
99           Include  the  listed  loadable  kernel module. This is the system's
100           default, so using include does not modify the  system's  operation.
101           include commands are cumulative.
102
103
104       forceload: <namespace>/<modulename>
105
106           Force this kernel module to be loaded during kernel initialization.
107           The default action is to automatically load the kernel module  when
108           its services are first accessed. forceload commands are cumulative.
109
110
111       rootdev: <device name>
112
113           Set  the  root  device  to  the  listed  value instead of using the
114           default root device as supplied by the boot program.
115
116
117       rootfs: <root filesystem type>
118
119           Set the root filesystem type to the listed value.
120
121
122       moddir: <first module path>[[{:, }<second ...>]...]
123
124           Set the search path for loadable kernel modules. This command oper‐
125           ates  very  much like the PATH shell variable. Multiple directories
126           to search can be listed together, delimited either by blank  spaces
127           or colons.
128
129
130       set [<module>:]<symbol> {=, |, &} [~][-]<value>
131
132           Set  an  integer  or  character  pointer  in  the  kernel or in the
133           selected kernel module to a new value.  This  command  is  used  to
134           change  kernel  and module parameters and thus modify the operation
135           of your system. Assignment operations are not  cumulative,  whereas
136           bitwise AND and OR operations are cumulative.
137
138           Operations  that are supported for modifying integer variables are:
139           simple assignment, inclusive bitwise OR, bitwise AND, one's comple‐
140           ment,  and negation. Variables in a specific loadable module can be
141           targeted for modification by specifying the variable name  prefixed
142           with  the  kernel module name and a colon (:) separator. Values can
143           be specified as hexadecimal (0x10), Octal (046), or Decimal (5).
144
145           The only operation supported for modifying  character  pointers  is
146           simple assignment. Static string data such as character arrays can‐
147           not be modified using the set command. Use care and ensure that the
148           variable  you are modifying is in fact a character pointer. The set
149           command is very powerful, and will likely cause  problems  if  used
150           carelessly. The following escape sequences are supported within the
151           quoted string:
152
153             \n   (newline)
154             \t   (tab)
155             \b   (backspace)
156
157
158
159

EXAMPLES

161       Example 1 A sample system file.
162
163
164       The following is a sample system file.
165
166
167         * Force the ELF exec kernel module to be loaded during kernel
168         * initialization. Execution type modules are in the exec namespace.
169         forceload: exec/elfexec
170         * Change the root device to /sbus@1,f8000000/esp@0,800000/sd@3,0:a.
171         * You can derive root device names from /devices.
172         * Root device names must be the fully expanded Open Boot Prom
173         * device name. This command is platform and configuration specific.
174         * This example uses the first partition (a) of the SCSI disk at
175         * SCSI target 3 on the esp host adapter in slot 0 (on board)
176         * of the SBus of the machine.
177         * Adapter unit-address 3,0 at sbus unit-address 0,800000.
178         rootdev: /sbus@1,f8000000/esp@0,800000/sd@3,0:a
179         * Set the filesystem type of the root to ufs. Note that
180         * the equal sign can be used instead of the colon.
181         rootfs:ufs
182         * Set the search path for kernel modules to look first in
183         * /usr/phil/mod_test for modules, then in /kernel/modules (the
184         * default) if not found. Useful for testing new modules.
185         * Note that you can delimit your module pathnames using
186         * colons instead of spaces: moddir:/newmodules:/kernel/modules
187         moddir:/usr/phil/mod_test /kernel/modules.
188         * Set the configuration option {_POSIX_CHOWN_RESTRICTED} :
189         * This configuration option is enabled by default.
190         set rstchown = 1
191         * Disable the configuration option {_POSIX_CHOWN_RESTRICTED} :
192         set rstchown = 0
193         * Turn on debugging messages in the modules mydriver. This is useful
194         * during driver development.
195         set mydriver:debug = 1
196         * Bitwise AND the kernel variable "moddebug" with the
197         * one's complement of the hex value 0x880, and set
198         * "moddebug" to this new value.
199         set moddebug & ~0x880
200         * Demonstrate the cumulative effect of the SET
201         * bitwise AND/OR operations by further modifying "moddebug"
202         * by ORing it with 0x40.
203         set moddebug | 0x40
204
205
206

SEE ALSO

208       boot(1M), init(1M), kernel(1M)
209

WARNINGS

211       Use care when modifying the system file; it modifies the  operation  of
212       the  kernel.  If  you  preserved the original system file, you can boot
213       using boot -a, which will ask you to specify  the  path  to  the  saved
214       file.  This  should  allow  the system to boot correctly. If you cannot
215       locate a system file that will work, you may  specify  /dev/null.  This
216       acts as an empty system file, and the system will attempt to boot using
217       its default settings.
218

NOTES

220       The /etc/system file is read only once, at boot time.
221
222
223
224SunOS 5.11                        3 Nov 2004                         system(4)
Impressum