tail head cat sleep
QR code linking to this page

Man page  — SYSCTL

명칭

sysctl – 커널 상태의 취득이나 설정

내용

서식


sysctl [-bdeNnox] name[=value] ...
sysctl [-beNnox] -a

해설

sysctl (은)는 커널 상태를 꺼내, 적절한 권한이 있으면 프로세스가 커널 상태를 설정하는 것을 허락합니다. 꺼내지고 충분해 설정 되거나 한 상태는, (Management Information Base) ("MIB") 형식을 사용해 기술됩니다. 이 형식에서는, 요소는 닷 ``. ''로 접속됩니다.

이하의 옵션을 사용 가능합니다:
-A
  -o -a (와)과 등가입니다 (호환성용).
-a
  현재 이용 가능한, 데이터 형식을 모르는 걸(이하, 형식 불명의 변수라고 칭한다) (이)가 아닌 값을 열거합니다. 1 개 이상의 변수명이 명령행으로 지정되었을 경우, 본옵션은 무시됩니다.
-b
  변수의 값을 가공하지 않고 , 바이너리 형식에서 표시합니다. 변수명이나, 마지막 개행 캐릭터는 출력되지 않습니다. 이것은, 단일의 변수에 대해서 조작할 때에 편리하겠지요.
-d
  변수의 값대신에 해설을 표시합니다.
-e
  변수의 이름과 값을, ‘=’ 그리고 단락짓습니다. sysctl 유틸리티에 피드백 가능한 출력을 생성하기 위해서 유용합니다. -N 또는 -n 하지만 지정되는 경우, 또는 변수가 설정되는 경우, 본옵션은 무시됩니다.
-N
  값의 출력은 억제되어, 변수명만을 표시합니다. 프로그램 가능한 보완 기능을 가지는 쉘로, 유용합니다. zsh 그리고 변수명을 보완하려면 , 다음의 코드를 사용합니다:
listsysctls () { set -A reply $(sysctl -AN ${1%. *}) }
compctl -K listsysctls sysctl
-n
  변수명의 출력은 억제되어, 값만이 표시됩니다. 이것은 셸 변수를 설정하는데 도움이 됩니다. 예를 들어, 페이지 사이즈를 변수 psize 에 보존하려면 , 이하와 같이 합니다:

    set psize=`sysctl -n hw.pagesize`

-o
  형식 불명한 값을 표시합니다 (통상은 억제됩니다). 서식과 길이가 표시되어 값의 최초의 16 바이트가 16 진수로 덤프 됩니다.
-X
  -x -a (와)과 등가입니다 (호환성용).
-x
  -o (와)과 같습니다만, 형식 불명의 변수의 최초의 수바이트대신에 모든 내용이 16 진수로 덤프 됩니다.

sysctl 그리고 얻을 수 있는 정보는, 정수, 캐릭터 라인, 디바이스 (dev_t) , 형식 불명의 변수입니다. sysctl 유틸리티는 몇개의 형식 불명의 변수의 형식을 알고 있는 것만으로, 그 이외의 것에 대해 16 진덤프에 의지합니다. 형식 불명의 변수의 정보는, ps, systat, netstat 등이 특별한 목적의 프로그램에 의해 취득되었을 경우에, 보다 효과적입니다.

캐릭터 라인과 정수의 정보를 간단하게 정리해 이하에 나타냅니다. 이러한 변수의 상세한 설명은, sysctl(3) (을)를 참조해 주세요.

변경 가능의 열은, 적절한 권한을 가지는 프로세스가 그 값을 변경 할 수 있는지 어떤지를 나타내고 있습니다. 캐릭터 라인, 정수, 디바이스치를 sysctl 그리고 설정 가능합니다. 디바이스치 value (은)는, 캐릭터 디바이스 스페셜 파일명으로 지정 가능합니다. 특수한 값 off (와)과 none 하 "디바이스 없음" (을)를 의미합니다.
"명칭형 변경 가능

"kern.ostype
캐릭터 라인 no

"kern.osrelease
캐릭터 라인 no

"kern.osrevision
정수 no

"kern.version
캐릭터 라인 no

"kern.maxvnodes
정수 yes

"kern.maxproc
정수 no

"kern.maxprocperuid
정수 yes

"kern.maxfiles
정수 yes

"kern.maxfilesperproc
정수 yes

"kern.argmax
정수 no

"kern.securelevel
정수 늘릴 뿐

"kern.hostname
캐릭터 라인 yes

"kern.hostid
정수 yes

"kern.clockrate
struct no

"kern.posix1version
정수 no

"kern.ngroups
정수 no

"kern.job_control
정수 no

"kern.saved_ids
정수 no

"kern.boottime
struct no

"kern.domainname
캐릭터 라인 yes

"kern.filedelay
정수 yes

"kern.dirdelay
정수 yes

"kern.metadelay
정수 yes

"kern.osreldate
캐릭터 라인 no

"kern.bootfile
캐릭터 라인 yes

"kern.corefile
캐릭터 라인 yes

"kern.dumpdev
dev_t yes

"kern.logsigexit
정수 yes

"security.bsd.suser_enabled
정수 yes

"security.bsd.see_other_uids
정수 yes

"security.bsd.unprivileged_proc_debug
정수 yes

"security.bsd.unprivileged_read_msgbuf
정수 yes

"vm.loadavg
struct no

"hw.machine
캐릭터 라인 no

"hw.model
캐릭터 라인 no

"hw.ncpu
정수 no

"hw.byteorder
정수 no

"hw.physmem
정수 no

"hw.usermem
정수 no

"hw.pagesize
정수 no

"hw.floatingpoint
정수 no

"hw.machine_arch
캐릭터 라인 no

"machdep.console_device
dev_t no

"machdep.adjkerntz
정수 yes

"machdep.disable_rtc_set
정수 yes

"machdep.guessed_bootdev
캐릭터 라인 no

"user.cs_path
캐릭터 라인 no

"user.bc_base_max
정수 no

"user.bc_dim_max
정수 no

"user.bc_scale_max
정수 no

"user.bc_string_max
정수 no

"user.coll_weights_max
정수 no

"user.expr_nest_max
정수 no

"user.line_max
정수 no

"user.re_dup_max
정수 no

"user.posix2_version
정수 no

"user.posix2_c_bind
정수 no

"user.posix2_c_dev
정수 no

"user.posix2_char_term
정수 no

"user.posix2_fort_dev
정수 no

"user.posix2_fort_run
정수 no

"user.posix2_localedef
정수 no

"user.posix2_sw_dev
정수 no

"user.posix2_upe
정수 no

"user.stream_max
정수 no

"user.tzname_max
정수 no

사용예

예를 들어, 시스템중에서 용서되고 있는 최대의 프로세스수를 알고 싶다 때는, 이하와 같이 합니다:

    sysctl kern.maxproc

시스템중에서 용서되고 있는 최대의 프로세스수를 1000 으로 설정한다 에는, 이하와 같이 합니다:

    sysctl kern.maxprocperuid=1000

크래쉬 덤프에 사용하는 디바이스는 다음과 같이 지정 가능합니다:

    sysctl kern.dumpdev=/dev/somedev

이것은 다음과 등가입니다

    dumpon /dev/somedev

시스템의 클럭레이트에 관한 정보를 얻으려면 , 이하의 같게 합니다:

    sysctl kern.clockrate

시스템 부하 (로드·애버리지)의 히스토리에 관한 정보를 얻으려면 , 이하와 같이 합니다:

    sysctl vm.loadavg

여기에 올린 것 이외의 변수도 존재합니다. 그것들에 관한보다 깊은 의미를 안다 무엇보다 자주(잘), 한편, 아마 유일한 방법은, 그것들을 정의하고 있는 원시 코드를 보는 일인 것은 혐의가 없는 사실이지요.

관련 파일

< sys/sysctl.h> 톱 레벨의 식별자, 제 2 레벨의 커널/하드웨어 식별자, 그리고 유저 레벨 식별자의 정의
< sys/socket.h> 제 2 레벨의 네트워크 식별자의 정의
< sys/gmon.h> 제 3 레벨의 프로파일 식별자의 정의
< vm/vm_param.h>
  제 2 레벨의 가상 메모리 식별자의 정의
< netinet/in.h> 제 3 레벨의 인터넷 식별자와 제 4 레벨의 IP 식별자의 정의
< netinet/icmp_var.h>
  제 4 레벨의 ICMP 식별자의 정의
< netinet/udp_var.h>
  제 4 레벨의 UDP 식별자의 정의

호환성

-w 옵션은 추천 되지 않고, 입다물어 무시됩니다.

관련 항목

sysctl(3), sysctl.conf(5)

버그

현재 상태로서는 sysctl 유틸리티는, sysctl 트리의 추적, 및, 형식과 이름의 정보를 얻을 때에, 문서화되어 있지 않은 커널의 sysctl 기능에의 인터페이스를 사용하고 있습니다. 이 방법에 관한 올바른 인터페이스는, 현재 검토중입니다.

역사

sysctl 유틸리티는 BSD 4.4 그리고 처음 등장했습니다.

FreeBSD 2.2 의 sysctl (은)는 현저하게 개량되고 있습니다.


SYSCTL (8) March 10, 2002

tail head cat sleep
QR code linking to this page


Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.