본문으로 바로가기

- 리눅스 커널 변수 (Linux Kernel Parameter)

리눅스 시스템의 커널 변수의 값을 제어하여 시스템을 최적화 할 수 있는 방식이다. 

/proc/sys 디렉터리에 존재한다. 


(예) net.ipv4.icmp_echo_ignore_all <---> /proc/sys/net/ipv4/icmp_echo_ignore_all



- 커널 패러미터 설정 방법

(임시적) # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 

(영구적) # sysctl -w net.ipv4.icmp_echo_ignore_all=1 ; vi /etc/sysctl.conf 

         or

         # vi /etc/sysctl.conf

net.ipv4.icmp_echo_ignore_all=1

# sysctl -p


- sysctl CMD

전 게시물에서 firewall의 ip_forward 설정을 할 때 사용했던 명령어 이다. 


# sysctl -a    (# sysctl -a | grep icmp)        /*  전체 출력 */

# sysctl -p    (# sysctl -p /etc/sysctl.conf)    /* 저장 */

# sysctl -n net.ipv4.icmp_echo_ignore_all   (# sysctl -a | grep icmp_echo_ignore_all) /* 확인 */

# sysctl -w net.ipv4.icmp_echo_ignore_all=0 (# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all)    /* 변경 */


/etc/sysctl.conf 파일에는 많이 사용하는 커널 변수 몇가지가 설정하기 편하게 모여져 있다. 


- 정보

# yum -y install kernel-doc


# rpm -ql kernel-doc | grep sysctl

 

/usr/share/doc/kernel-doc-2.6.18/Documentation/networking/ip-sysctl.txt

/usr/share/doc/kernel-doc-2.6.18/Documentation/networking/ipvs-sysctl.txt

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl/README

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl/abi.txt

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl/fs.txt

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl/kernel.txt

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl/sunrpc.txt

/usr/share/doc/kernel-doc-2.6.18/Documentation/sysctl/vm.txt

 



- 커널 패러미터를 변경하는 대표적인 경우

성능: Network 성능 튜닝

      파일시스템 성능 튜닝

서비스: WAS 설치시 커널 패러미터 설정

                DB(EX: Oracle) 설치시 커널 패러미터 설정



(참고) 리눅스의 네트워크 성능 관련 커널 파리미터

 리눅스 서버의 TCP 네트워크 성능을 결정짓는 커널 파라미터 이야기 - 1편http://meetup.toast.com/posts/53

 리눅스 서버의 TCP 네트워크 성능을 결정짓는 커널 파라미터 이야기 - 2편http://meetup.toast.com/posts/54

 리눅스 서버의 TCP 네트워크 성능을 결정짓는 커널 파라미터 이야기 - 3편http://meetup.toast.com/posts/55


(참고) S/W(EX: Oracle) 설치시 커널 파리미터 설정

http://dbrang.tistory.com/892