Linux系统中sysctl命令详解
Linux系统中sysctl命令详解
1、介绍
sysctl命令用于运行时配置内核参数,这些参数位于/proc/sys目录下。
sysctl配置与显示在/proc/sys目录中的内核参数。
可以用sysctl来设置或重新设置联网功能,如IP转发、IP碎片去除以及源路由检查等。
用户只需要编辑/etc/sysctl.conf文件,即可手工或自动执行由sysctl控制的功能。
2、命令格式:
sysctl [-n] [-e] -w variable=value
sysctl [-n] [-e] -p <filename> (default /etc/sysctl.conf)
sysctl [-n] [-e] -a
3、常用参数的意义:
-w 临时改变某个指定参数的值,如
sysctl -w net.ipv4.ip_forward=1
-a 显示所有的系统参数
-p 从指定的文件加载系统参数,如不指定即从/etc/sysctl.conf中加载
4、临时改变值
如果仅仅是想临时改变某个系统参数的值,可以用两种方法来实现,例如想启用IP路由转发功能:
1) #echo 1 > /proc/sys/net/ipv4/ip_forward
2) #sysctl -w net.ipv4.ip_forward=1
以上两种方法都可能立即开启路由功能,但如果系统重启,或执行了 service network restart命令,所设置的值即会丢失,
5、永久改变值
如果想永久保留配置,可以修改/etc/sysctl.conf文件
将 net.ipv4.ip_forward=0改为net.ipv4.ip_forward=1
6、重新加载系统参数
sysctl -p