xref: /openbsd-src/sbin/sysctl/sysctl.8 (revision d13be5d47e4149db2549a9828e244d59dbc43f15)
1.\"	$OpenBSD: sysctl.8,v 1.162 2011/09/03 22:59:08 jmc Exp $
2.\"	$NetBSD: sysctl.8,v 1.4 1995/09/30 07:12:49 thorpej Exp $
3.\"
4.\" Copyright (c) 1993
5.\"	The Regents of the University of California.  All rights reserved.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\" 3. Neither the name of the University nor the names of its contributors
16.\"    may be used to endorse or promote products derived from this software
17.\"    without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.\"	@(#)sysctl.8	8.2 (Berkeley) 5/9/95
32.\"
33.Dd $Mdocdate: September 3 2011 $
34.Dt SYSCTL 8
35.Os
36.Sh NAME
37.Nm sysctl
38.Nd get or set kernel state
39.Sh SYNOPSIS
40.Nm sysctl
41.Op Fl Aan
42.Nm sysctl
43.Op Fl n
44.Ar name ...
45.Nm sysctl
46.Op Fl nq
47.Ar name Ns = Ns Ar value ...
48.Sh DESCRIPTION
49The
50.Nm
51utility retrieves kernel state and allows processes with
52appropriate privilege to set kernel state.
53The state to be retrieved or set is described using a
54.Dq Management Information Base
55.Pq MIB
56style name, described as a dotted set of components.
57.Pp
58When retrieving a variable,
59a subset of the MIB name may be specified to retrieve a list of
60variables in that subset.
61For example, to list all the machdep variables:
62.Pp
63.Dl $ sysctl machdep
64.Pp
65When setting a variable,
66the MIB name should be followed by an equal sign and the new value.
67.Pp
68The options are as follows:
69.Bl -tag -width xxx
70.It Fl A
71List all the known MIB names including tables.
72Those with string or integer values will be printed as with the
73.Fl a
74flag; for the table values, the name of the utility to retrieve them is given.
75.It Fl a
76List all the currently available string or integer values.
77This is the default, if no parameters are given to
78.Nm .
79.It Fl n
80Suppress printing of the field name, only output the field value.
81Useful for setting shell variables.
82For example, to set the psize shell variable to the pagesize of the hardware:
83.Pp
84.Dl # set psize=`sysctl -n hw.pagesize`
85.Pp
86.It Fl q
87Suppress all output when setting a variable.
88This option overrides the behaviour of
89.Fl n .
90.It Ar name Ns = Ns Ar value
91Attempt to set the specified variable
92.Ar name
93to
94.Ar value .
95.El
96.Pp
97The information available from
98.Nm
99consists of integers, strings, and tables.
100The tabular information can only be retrieved by special
101purpose programs such as
102.Xr ps 1 ,
103.Xr systat 1 ,
104and
105.Xr netstat 1 .
106The string and integer information is summarized below.
107For a detailed description of these variables, see
108.Xr sysctl 3 .
109The changeable column indicates whether a process with appropriate
110privilege can change the value.
111.Pp
112Note:
113not all of the variables are relevant to all architectures,
114and a few require a kernel compiled with non-standard
115.Xr options 4 .
116.Bl -column "kern.timecounter.timestepwarnings" "integer" "Changeable"
117.It Sy Name Ta Sy Type Ta Sy Changeable
118.It kern.ostype	string	no
119.It kern.osrelease Ta string Ta no
120.It kern.osrevision Ta integer Ta no
121.It kern.version Ta string Ta no
122.It kern.maxvnodes Ta integer Ta yes
123.It kern.maxproc Ta integer Ta yes
124.It kern.maxfiles Ta integer Ta yes
125.It kern.argmax Ta integer Ta no
126.It kern.securelevel Ta integer Ta raise only
127.It kern.hostname Ta string Ta yes
128.It kern.hostid Ta u_int Ta yes
129.It kern.clockrate Ta struct Ta no
130.It kern.posix1version Ta integer Ta no
131.It kern.ngroups Ta integer Ta no
132.It kern.job_control Ta integer Ta no
133.It kern.saved_ids Ta integer Ta no
134.It kern.boottime Ta struct Ta no
135.It kern.domainname Ta string Ta yes
136.It kern.maxpartitions Ta integer Ta no
137.It kern.rawpartition Ta integer Ta no
138.It kern.osversion Ta string Ta no
139.It kern.somaxconn Ta integer Ta yes
140.It kern.sominconn Ta integer Ta yes
141.It kern.usermount Ta integer Ta yes
142.It kern.random Ta struct Ta no
143.It kern.nosuidcoredump Ta integer Ta yes
144.It kern.fsync Ta integer Ta no
145.It kern.sysvmsg Ta integer Ta no
146.It kern.sysvsem Ta integer Ta no
147.It kern.sysvshm Ta integer Ta no
148.It kern.arandom Ta u_int Ta no
149.It kern.msgbufsize Ta integer Ta no
150.It kern.malloc.buckets Ta string Ta no
151.It kern.malloc.bucket.<sz> Ta string Ta no
152.It kern.malloc.kmemnames Ta string Ta no
153.It kern.malloc.kmemstat.<name> Ta string Ta no
154.It kern.cp_time Ta struct Ta no
155.It kern.nchstats Ta struct Ta no
156.It kern.forkstat Ta struct Ta no
157.It kern.nselcoll Ta integer Ta no
158.It kern.tty.tk_nin Ta int64_t Ta no
159.It kern.tty.tk_nout Ta int64_t Ta no
160.It kern.tty.tk_rawcc Ta int64_t Ta no
161.It kern.tty.tk_cancc Ta int64_t Ta no
162.It kern.tty.ttyinfo Ta struct Ta no
163.It kern.tty.maxptys Ta integer Ta yes
164.It kern.tty.nptys Ta integer Ta no
165.It kern.ccpu Ta u_int Ta no
166.It kern.fscale Ta integer Ta no
167.It kern.nprocs Ta integer Ta no
168.It kern.stackgap_random Ta integer Ta yes
169.It kern.usercrypto Ta integer Ta yes
170.It kern.cryptodevallowsoft Ta integer Ta yes
171.It kern.splassert Ta integer Ta yes
172.It kern.nfiles Ta integer Ta no
173.It kern.ttycount Ta integer Ta no
174.It kern.numvnodes Ta integer Ta no
175.It kern.userasymcrypto Ta integer Ta yes
176.It kern.seminfo.semmni Ta integer Ta yes
177.It kern.seminfo.semmns Ta integer Ta yes
178.It kern.seminfo.semmnu Ta integer Ta yes
179.It kern.seminfo.semmsl Ta integer Ta yes
180.It kern.seminfo.semopm Ta integer Ta yes
181.It kern.seminfo.semume Ta integer Ta no
182.It kern.seminfo.semusz Ta integer Ta no
183.It kern.seminfo.semvmx Ta integer Ta no
184.It kern.seminfo.semaem Ta integer Ta no
185.It kern.shminfo.shmmax Ta integer Ta yes
186.It kern.shminfo.shmmin Ta integer Ta yes
187.It kern.shminfo.shmmni Ta integer Ta yes
188.It kern.shminfo.shmseg Ta integer Ta yes
189.It kern.shminfo.shmall Ta integer Ta yes
190.It kern.watchdog.period Ta integer Ta yes
191.It kern.watchdog.auto Ta integer Ta yes
192.It kern.emul.nemuls Ta integer Ta no
193.It kern.emul.other Ta integer Ta yes
194.It kern.maxclusters Ta integer Ta yes
195.It kern.timecounter.tick Ta integer Ta no
196.It kern.timecounter.timestepwarnings Ta integer Ta yes
197.It kern.timecounter.hardware Ta string Ta yes
198.It kern.timecounter.choice Ta string Ta no
199.It kern.maxlocksperuid Ta integer Ta yes
200.It kern.bufcachepercent Ta integer Ta yes
201.It kern.rthreads Ta integer Ta yes
202.It kern.consdev Ta string Ta no
203.It vm.vmmeter Ta struct Ta no
204.It vm.loadavg Ta struct Ta no
205.It vm.psstrings Ta struct Ta no
206.It vm.uvmexp Ta struct Ta no
207.It vm.swapencrypt.enable Ta integer Ta yes
208.It vm.swapencrypt.keyscreated Ta integer Ta no
209.It vm.swapencrypt.keysdeleted Ta integer Ta no
210.It vm.nkmempages Ta integer Ta no
211.It vm.anonmin Ta integer Ta yes
212.It vm.vtextmin Ta integer Ta yes
213.It vm.vnodemin Ta integer Ta yes
214.It vm.maxslp Ta integer Ta no
215.It vm.uspace Ta integer Ta no
216.It fs.posix.setuid Ta integer Ta yes
217.It net.inet.divert.recvspace Ta integer Ta yes
218.It net.inet.divert.sendspace Ta integer Ta yes
219.It net.inet.ip.forwarding Ta integer Ta yes
220.It net.inet.ip.redirect Ta integer Ta yes
221.It net.inet.ip.ttl Ta integer Ta yes
222.\" .It net.inet.ip.mtu Ta integer Ta yes
223.It net.inet.ip.sourceroute Ta integer Ta yes
224.It net.inet.ip.directed-broadcast Ta integer Ta yes
225.It net.inet.ip.portfirst Ta integer Ta yes
226.It net.inet.ip.portlast Ta integer Ta yes
227.It net.inet.ip.porthifirst Ta integer Ta yes
228.It net.inet.ip.porthilast Ta integer Ta yes
229.It net.inet.ip.maxqueue Ta integer Ta yes
230.It net.inet.ip.encdebug Ta integer Ta yes
231.It net.inet.ip.ipsec-expire-acquire Ta integer Ta yes
232.It net.inet.ip.ipsec-invalid-life Ta integer Ta yes
233.It net.inet.ip.ipsec-pfs Ta integer Ta yes
234.It net.inet.ip.ipsec-soft-allocs Ta integer Ta yes
235.It net.inet.ip.ipsec-allocs Ta integer Ta yes
236.It net.inet.ip.ipsec-soft-bytes Ta integer Ta yes
237.It net.inet.ip.ipsec-bytes Ta integer Ta yes
238.It net.inet.ip.ipsec-timeout Ta integer Ta yes
239.It net.inet.ip.ipsec-soft-timeout Ta integer Ta yes
240.It net.inet.ip.ipsec-soft-firstuse Ta integer Ta yes
241.It net.inet.ip.ipsec-firstuse Ta integer Ta yes
242.It net.inet.ip.ipsec-enc-alg Ta string Ta yes
243.It net.inet.ip.ipsec-auth-alg Ta string Ta yes
244.It net.inet.ip.mtudisc Ta integer Ta yes
245.It net.inet.ip.mtudisctimeout Ta integer Ta yes
246.It net.inet.ip.ipsec-comp-alg Ta string Ta yes
247.It net.inet.ip.mforwarding Ta integer Ta yes
248.It net.inet.ip.multipath Ta integer Ta yes
249.It net.inet.icmp.maskrepl Ta integer Ta yes
250.It net.inet.icmp.bmcastecho Ta integer Ta yes
251.It net.inet.icmp.errppslimit Ta integer Ta yes
252.It net.inet.icmp.rediraccept Ta integer Ta yes
253.It net.inet.icmp.redirtimeout Ta integer Ta yes
254.It net.inet.icmp.tstamprepl Ta integer Ta yes
255.It net.inet.ipip.allow Ta integer Ta yes
256.It net.inet.tcp.rfc1323 Ta integer Ta yes
257.It net.inet.tcp.keepinittime Ta integer Ta yes
258.It net.inet.tcp.keepidle Ta integer Ta yes
259.It net.inet.tcp.keepintvl Ta integer Ta yes
260.It net.inet.tcp.always_keepalive Ta integer Ta yes
261.It net.inet.tcp.slowhz Ta integer Ta no
262.It net.inet.tcp.baddynamic Ta array Ta yes
263.It net.inet.tcp.sack Ta integer Ta yes
264.It net.inet.tcp.mssdflt Ta integer Ta yes
265.It net.inet.tcp.rstppslimit Ta integer Ta yes
266.It net.inet.tcp.ackonpush Ta integer Ta yes
267.It net.inet.tcp.ecn Ta integer Ta yes
268.It net.inet.tcp.syncachelimit Ta integer Ta yes
269.It net.inet.tcp.synbucketlimit Ta integer Ta yes
270.It net.inet.tcp.rfc3390 Ta integer Ta yes
271.It net.inet.tcp.reasslimit Ta integer Ta yes
272.It net.inet.udp.checksum Ta integer Ta yes
273.It net.inet.udp.baddynamic Ta array Ta yes
274.It net.inet.udp.recvspace Ta integer Ta yes
275.It net.inet.udp.sendspace Ta integer Ta yes
276.It net.inet.gre.allow Ta integer Ta yes
277.It net.inet.gre.wccp Ta integer Ta yes
278.It net.inet.esp.enable Ta integer Ta yes
279.It net.inet.esp.udpencap Ta integer Ta yes
280.It net.inet.esp.udpencap_port Ta integer Ta yes
281.It net.inet.ah.enable Ta integer Ta yes
282.It net.inet.mobileip.allow Ta integer Ta yes
283.It net.inet.etherip.allow Ta integer Ta yes
284.It net.inet.ipcomp.enable Ta integer Ta yes
285.It net.inet.carp.allow Ta integer Ta yes
286.It net.inet.carp.preempt Ta integer Ta yes
287.It net.inet.carp.log Ta integer Ta yes
288.It net.inet6.ip6.forwarding Ta integer Ta yes
289.It net.inet6.ip6.redirect Ta integer Ta yes
290.It net.inet6.ip6.hlim Ta integer Ta yes
291.It net.inet6.ip6.maxfragpackets Ta integer Ta yes
292.It net.inet6.ip6.accept_rtadv Ta integer Ta yes
293.It net.inet6.ip6.keepfaith Ta integer Ta yes
294.It net.inet6.ip6.log_interval Ta integer Ta yes
295.It net.inet6.ip6.hdrnestlimit Ta integer Ta yes
296.It net.inet6.ip6.dad_count Ta integer Ta yes
297.It net.inet6.ip6.auto_flowlabel Ta integer Ta yes
298.It net.inet6.ip6.defmcasthlim Ta integer Ta yes
299.It net.inet6.ip6.kame_version Ta string Ta no
300.It net.inet6.ip6.use_deprecated Ta integer Ta yes
301.It net.inet6.ip6.rr_prune Ta integer Ta yes
302.It net.inet6.ip6.v6only Ta integer Ta no
303.It net.inet6.ip6.maxfrags Ta integer Ta yes
304.It net.inet6.ip6.mforwarding Ta integer Ta yes
305.It net.inet6.ip6.multipath Ta integer Ta yes
306.It net.inet6.ip6.multicast_mtudisc Ta integer Ta yes
307.It net.inet6.icmp6.rediraccept Ta integer Ta yes
308.It net.inet6.icmp6.redirtimeout Ta integer Ta yes
309.It net.inet6.icmp6.nd6_prune Ta integer Ta yes
310.It net.inet6.icmp6.nd6_delay Ta integer Ta yes
311.It net.inet6.icmp6.nd6_umaxtries Ta integer Ta yes
312.It net.inet6.icmp6.nd6_mmaxtries Ta integer Ta yes
313.It net.inet6.icmp6.nd6_useloopback Ta integer Ta yes
314.It net.inet6.icmp6.nodeinfo Ta integer Ta yes
315.It net.inet6.icmp6.errppslimit Ta integer Ta yes
316.It net.inet6.icmp6.nd6_maxnudhint Ta integer Ta yes
317.It net.inet6.icmp6.mtudisc_hiwat Ta integer Ta yes
318.It net.inet6.icmp6.mtudisc_lowat Ta integer Ta yes
319.It net.inet6.icmp6.nd6_debug Ta integer Ta yes
320.It net.pipex.enable Ta integer Ta yes
321.It debug.syncprt Ta integer Ta yes
322.It debug.busyprt Ta integer Ta yes
323.It debug.doclusterread Ta integer Ta yes
324.It debug.doclusterwrite Ta integer Ta yes
325.It debug.doreallocblks Ta integer Ta yes
326.It debug.doasyncfree Ta integer Ta yes
327.It debug.prtrealloc Ta integer Ta yes
328.It hw.machine Ta string Ta no
329.It hw.model Ta string Ta no
330.It hw.ncpu Ta integer Ta no
331.It hw.byteorder Ta integer Ta no
332.It hw.physmem Ta int64_t Ta no
333.It hw.usermem Ta int64_t Ta no
334.It hw.pagesize Ta integer Ta no
335.It hw.diskstats Ta struct Ta no
336.It hw.disknames Ta string Ta no
337.It hw.diskcount Ta integer Ta no
338.It hw.sensors.<xname>.<type><numt> Ta struct Ta no
339.It hw.cpuspeed Ta integer Ta no
340.It hw.setperf Ta integer Ta yes
341.It hw.vendor Ta string Ta no
342.It hw.product Ta string Ta no
343.It hw.version Ta string Ta no
344.It hw.serialno Ta string Ta no
345.It hw.uuid Ta string Ta no
346.It hw.ncpufound Ta integer Ta no
347.It hw.allowpowerdown Ta integer Ta yes
348.It machdep.console_device Ta dev_t Ta no
349.It machdep.unaligned_print Ta integer Ta yes
350.It machdep.unaligned_fix Ta integer Ta yes
351.It machdep.unaligned_sigbus Ta integer Ta yes
352.It machdep.apmwarn Ta integer Ta yes
353.It machdep.apmhalt Ta integer Ta yes
354.It machdep.kbdreset Ta integer Ta yes
355.It machdep.userldt Ta integer Ta yes
356.It machdep.osxsfr Ta integer Ta no
357.It machdep.sse Ta integer Ta no
358.It machdep.sse2 Ta integer Ta no
359.It machdep.xcrypt Ta integer Ta no
360.It machdep.allowaperture Ta integer Ta yes
361.It machdep.led_blink Ta integer Ta yes
362.It machdep.ceccerrs Ta integer Ta no
363.It machdep.cecclast Ta quad Ta no
364.It user.cs_path Ta string Ta no
365.It user.bc_base_max Ta integer Ta no
366.It user.bc_dim_max Ta integer Ta no
367.It user.bc_scale_max Ta integer Ta no
368.It user.bc_string_max Ta integer Ta no
369.It user.coll_weights_max Ta integer Ta no
370.It user.expr_nest_max Ta integer Ta no
371.It user.line_max Ta integer Ta no
372.It user.re_dup_max Ta integer Ta no
373.It user.posix2_version Ta integer Ta no
374.It user.posix2_c_bind Ta integer Ta no
375.It user.posix2_c_dev Ta integer Ta no
376.It user.posix2_char_term Ta integer Ta no
377.It user.posix2_fort_dev Ta integer Ta no
378.It user.posix2_fort_run Ta integer Ta no
379.It user.posix2_localedef Ta integer Ta no
380.It user.posix2_sw_dev Ta integer Ta no
381.It user.posix2_upe Ta integer Ta no
382.It user.stream_max Ta integer Ta no
383.It user.tzname_max Ta integer Ta no
384.It ddb.radix Ta integer Ta yes
385.It ddb.max_width Ta integer Ta yes
386.It ddb.max_line Ta integer Ta yes
387.It ddb.tab_stop_width Ta integer Ta yes
388.It ddb.panic Ta integer Ta yes
389.It ddb.console Ta integer Ta yes
390.It ddb.log Ta integer Ta yes
391.It ddb.trigger Ta integer Ta yes
392.It vfs.mounts.* Ta struct Ta no
393.It vfs.ffs.doclusterread Ta integer Ta yes
394.It vfs.ffs.doclusterwrite Ta integer Ta yes
395.It vfs.ffs.doreallocblks Ta integer Ta yes
396.It vfs.ffs.doasyncfree Ta integer Ta yes
397.It vfs.ffs.max_softdeps Ta integer Ta yes
398.It vfs.ffs.sd_tickdelay Ta integer Ta yes
399.It vfs.ffs.sd_worklist_push Ta integer Ta no
400.It vfs.ffs.sd_blk_limit_push Ta integer Ta no
401.It vfs.ffs.sd_ino_limit_push Ta integer Ta no
402.It vfs.ffs.sd_blk_limit_hit Ta integer Ta no
403.It vfs.ffs.sd_ino_limit_hit Ta integer Ta no
404.It vfs.ffs.sd_sync_limit_hit Ta integer Ta no
405.It vfs.ffs.sd_indir_blk_ptrs Ta integer Ta no
406.It vfs.ffs.sd_inode_bitmap Ta integer Ta no
407.It vfs.ffs.sd_direct_blk_ptrs Ta integer Ta no
408.It vfs.ffs.sd_dir_entry Ta integer Ta no
409.It vfs.ffs.dirhash_dirsize Ta integer Ta yes
410.It vfs.ffs.dirhash_maxmem Ta integer Ta yes
411.It vfs.ffs.dirhash_mem Ta integer Ta no
412.It vfs.nfs.iothreads Ta integer Ta yes
413.El
414.Pp
415The
416.Nm
417program can extract information about the filesystems that have been compiled
418into the running system.
419This information can be obtained by using the command:
420.Pp
421.Dl $ sysctl vfs.mounts
422.Pp
423By default, only filesystems that are actively being used are listed.
424Use of the
425.Fl A
426flag lists all the filesystems compiled into the running kernel.
427.Sh FILES
428.Bl -tag -width <uvm/uvm_swap_encrypt.h> -compact
429.It Aq Pa sys/sysctl.h
430definitions for top level identifiers, second level kernel and hardware
431identifiers, and user level identifiers
432.It Aq Pa dev/rndvar.h
433definitions for
434.Xr random 4
435device's statistics structure
436.It Aq Pa sys/socket.h
437definitions for second level network identifiers
438.It Aq Pa sys/gmon.h
439definitions for third level profiling identifiers
440.It Aq Pa uvm/uvm_param.h
441definitions for second level virtual memory identifiers
442.It Aq Pa uvm/uvm_swap_encrypt.h
443definitions for third level virtual memory identifiers
444.It Aq Pa netinet/in.h
445definitions for third level IPv4/v6 identifiers and
446fourth level IPv4/v6 identifiers
447.It Aq Pa netinet/ip_divert.h
448definitions for fourth level divert identifiers
449.It Aq Pa netinet/icmp_var.h
450definitions for fourth level ICMP identifiers
451.It Aq Pa netinet6/icmp6.h
452definitions for fourth level ICMPv6 identifiers
453.It Aq Pa netinet/tcp_var.h
454definitions for fourth level TCP identifiers
455.It Aq Pa netinet/udp_var.h
456definitions for fourth level UDP identifiers
457.It Aq Pa ddb/db_var.h
458definitions for second level ddb identifiers
459.It Aq Pa sys/mount.h
460definitions for second level vfs identifiers
461.It Aq Pa nfs/nfs.h
462definitions for third level NFS identifiers
463.It Aq Pa ufs/ffs/ffs_extern.h
464definitions for third level FFS identifiers
465.It Aq Pa machine/cpu.h
466definitions for second level CPU identifiers
467.El
468.Sh EXAMPLES
469To retrieve the maximum number of processes allowed
470in the system:
471.Pp
472.Dl $ sysctl kern.maxproc
473.Pp
474To set the maximum number of processes allowed
475in the system to 1000:
476.Pp
477.Dl # sysctl kern.maxproc=1000
478.Pp
479To retrieve information about the system clock rate:
480.Pp
481.Dl $ sysctl kern.clockrate
482.Pp
483To retrieve information about the load average history:
484.Pp
485.Dl $ sysctl vm.loadavg
486.Pp
487To make the
488.Xr chown 2
489system call use traditional BSD semantics (don't clear setuid/setgid bits):
490.Pp
491.Dl # sysctl fs.posix.setuid=0
492.Pp
493To set the list of reserved TCP ports that should not be allocated
494by the kernel dynamically:
495.Pp
496.Dl # sysctl net.inet.tcp.baddynamic=749,750,751,760,761,871
497.Dl # sysctl net.inet.udp.baddynamic=749,750,751,760,761,871,1024-2048
498.Pp
499This can be used to keep daemons
500from stealing a specific port that another program needs to function.
501List elements may be separated by commas and/or whitespace;
502a hyphen may be used to specify a range of ports.
503.Pp
504It is also possible to add or remove ports from the current list:
505.Bd -literal -offset indent
506# sysctl net.inet.tcp.baddynamic=+748,6000-6999
507# sysctl net.inet.tcp.baddynamic=-871
508.Ed
509.Pp
510To adjust the number of kernel nfsio
511threads used to service asynchronous
512I/O requests on an NFS client machine:
513.Pp
514.Dl # sysctl vfs.nfs.iothreads=4
515.Pp
516The default is 4; 20 is the maximum.
517See
518.Xr nfssvc 2
519and
520.Xr nfsd 8
521for further discussion.
522.Pp
523To set the amount of shared memory available in the system and
524the maximum number of shared memory segments:
525.Bd -literal -offset indent
526# sysctl kern.shminfo.shmmax=33554432
527# sysctl kern.shminfo.shmseg=32
528.Ed
529.Sh SEE ALSO
530.Xr sysctl 3 ,
531.Xr options 4 ,
532.Xr sysctl.conf 5
533.Sh HISTORY
534.Nm
535first appeared in
536.Bx 4.4 .
537