man/orig/sysctl

Материал из Xgu.ru

Перейти к: навигация, поиск

Не указан параметр (1)


SYSCTL(8) FreeBSD System Manager's Manual SYSCTL(8)

Содержание

[править] NAME

    sysctl -- get or set kernel state

[править] SYNOPSIS

    sysctl [-bdehiNnoqx] name[=value] ...
    sysctl [-bdehNnoqx] -a

[править] DESCRIPTION

    The sysctl utility retrieves kernel state and allows processes with
    appropriate privilege to set kernel state.  The state to be retrieved or
    set is described using a ``Management Information Base (``MIB) style
    name, described as a dotted set of components.
    The following options are available:
    -A      Equivalent to -o -a (for compatibility).
    -a      List all the currently available non-opaque values.  This option
            is ignored if one or more variable names are specified on the
            command line.
    -b      Force the value of the variable(s) to be output in raw, binary
            format.  No names are printed and no terminating newlines are
            output.  This is mostly useful with a single variable.
    -d      Print the description of the variable instead of its value.
    -e      Separate the name and the value of the variable(s) with `='.
            This is useful for producing output which can be fed back to the
            sysctl utility.  This option is ignored if either -N or -n is
            specified, or a variable is being set.
    -h      Format output for human, rather than machine, readability.
    -i      Ignore unknown OIDs.  The purpose is to make use of sysctl for
            collecting data from a variety of machines (not all of which are
            necessarily running exactly the same software) easier.
    -N      Show only variable names, not their values.  This is particularly
            useful with shells that offer programmable completion.  To enable
            completion of variable names in zsh(1) (ports/shells/zsh), use
            the following code:
                  listsysctls () { set -A reply $(sysctl -AN ${1%.*}) }
                  compctl -K listsysctls sysctl
            To enable completion of variable names in tcsh(1), use:
                  complete sysctl 'n/*/`sysctl -Na`/'
    -n      Show only variable values, not their names.  This option is use-
            ful for setting shell variables.  For instance, to save the page-
            size in variable psize, use:
                  set psize=`sysctl -n hw.pagesize`
    -o      Show opaque variables (which are normally suppressed).  The for-
            mat and length are printed, as well as a hex dump of the first
            sixteen bytes of the value.
    -q      Suppress some warnings generated by sysctl to standard error.
    -X      Equivalent to -x -a (for compatibility).
    -x      As -o, but prints a hex dump of the entire value instead of just
            the first few bytes.
    The information available from sysctl consists of integers, strings, and
    opaque types.  The sysctl utility only knows about a couple of opaque
    types, and will resort to hexdumps for the rest.  The opaque information
    is much more useful if retrieved by special purpose programs such as
    ps(1), systat(1), and netstat(1).
    Some of the variables which cannot be modified during normal system oper-
    ation can be initialized via loader(8) tunables.  This can for example be
    done by setting them in loader.conf(5).  Please refer to loader.conf(5)
    for more information on which tunables are available and how to set them.
    The string and integer information is summarized below.  For a detailed
    description of these variable see sysctl(3).
    The changeable column indicates whether a process with appropriate privi-
    lege can change the value.  String and integer values can be set using
    sysctl.
    Name                                     Type          Changeable
    kern.ostype                              string        no
    kern.osrelease                           string        no
    kern.osrevision                          integer       no
    kern.version                             string        no
    kern.maxvnodes                           integer       yes
    kern.maxproc                             integer       no
    kern.maxprocperuid                       integer       yes
    kern.maxfiles                            integer       yes
    kern.maxfilesperproc                     integer       yes
    kern.argmax                              integer       no
    kern.securelevel                         integer       raise only
    kern.hostname                            string        yes
    kern.hostid                              integer       yes
    kern.clockrate                           struct        no
    kern.posix1version                       integer       no
    kern.ngroups                             integer       no
    kern.job_control                         integer       no
    kern.saved_ids                           integer       no
    kern.boottime                            struct        no
    kern.domainname                          string        yes
    kern.filedelay                           integer       yes
    kern.dirdelay                            integer       yes
    kern.metadelay                           integer       yes
    kern.osreldate                           string        no
    kern.bootfile                            string        yes
    kern.corefile                            string        yes
    kern.logsigexit                          integer       yes
    security.bsd.suser_enabled               integer       yes
    security.bsd.see_other_uids              integer       yes
    security.bsd.unprivileged_proc_debug     integer       yes
    security.bsd.unprivileged_read_msgbuf    integer       yes
    vm.loadavg                               struct        no
    hw.machine                               string        no
    hw.model                                 string        no
    hw.ncpu                                  integer       no
    hw.byteorder                             integer       no
    hw.physmem                               integer       no
    hw.usermem                               integer       no
    hw.pagesize                              integer       no
    hw.floatingpoint                         integer       no
    hw.machine_arch                          string        no
    hw.realmem                               integer       no
    machdep.adjkerntz                        integer       yes
    machdep.disable_rtc_set                  integer       yes
    machdep.guessed_bootdev                  string        no
    user.cs_path                             string        no
    user.bc_base_max                         integer       no
    user.bc_dim_max                          integer       no
    user.bc_scale_max                        integer       no
    user.bc_string_max                       integer       no
    user.coll_weights_max                    integer       no
    user.expr_nest_max                       integer       no
    user.line_max                            integer       no
    user.re_dup_max                          integer       no
    user.posix2_version                      integer       no
    user.posix2_c_bind                       integer       no
    user.posix2_c_dev                        integer       no
    user.posix2_char_term                    integer       no
    user.posix2_fort_dev                     integer       no
    user.posix2_fort_run                     integer       no
    user.posix2_localedef                    integer       no
    user.posix2_sw_dev                       integer       no
    user.posix2_upe                          integer       no
    user.stream_max                          integer       no
    user.tzname_max                          integer       no

[править] FILES

    <sys/sysctl.h>        definitions for top level identifiers, second level
                          kernel and hardware identifiers, and user level
                          identifiers
    <sys/socket.h>        definitions for second level network identifiers
    <sys/gmon.h>          definitions for third level profiling identifiers
    <vm/vm_param.h>       definitions for second level virtual memory identi-
                          fiers
    <netinet/in.h>        definitions for third level Internet identifiers
                          and fourth level IP identifiers
    <netinet/icmp_var.h>  definitions for fourth level ICMP identifiers
    <netinet/udp_var.h>   definitions for fourth level UDP identifiers

[править] EXAMPLES

    For example, to retrieve the maximum number of processes allowed in the
    system, one would use the following request:
          sysctl kern.maxproc
    To set the maximum number of processes allowed per uid to 1000, one would
    use the following request:
          sysctl kern.maxprocperuid=1000
    Information about the system clock rate may be obtained with:
          sysctl kern.clockrate
    Information about the load average history may be obtained with:
          sysctl vm.loadavg
    More variables than these exist, and the best and likely only place to
    search for their deeper meaning is undoubtedly the source where they are
    defined.

[править] COMPATIBILITY

    The -w option has been deprecated and is silently ignored.

[править] SEE ALSO

    sysctl(3), loader.conf(5), sysctl.conf(5), loader(8)

[править] HISTORY

    A sysctl utility first appeared in 4.4BSD.
    In FreeBSD 2.2, sysctl was significantly remodeled.

[править] BUGS

    The sysctl utility presently exploits an undocumented interface to the
    kernel sysctl facility to traverse the sysctl tree and to retrieve format
    and name information.  This correct interface is being thought about for
    the time being.

FreeBSD 9.0 January 17, 2011 FreeBSD 9.0