sysctl命令来自英文词组“system control”的缩写,其功能是用于配置系统内核参数。sysctl命令能够在Linux系统运行时动态地配置系统内核参数,包含TCP/IP堆栈和虚拟内存系统等选项,让有经验的系统管理员更好地优化整台服务器性能,但请注意:配置结果仅在当前生效,重启后参数将恢复到初始状态,要想永久生效需要将参数写入到/etc/sysctl.conf系统文件中。
语法格式:sysctl [参数] [对象]
常用参数:
-a | 显示所有可用的内核参数变量和值 |
-e | 忽略未知关键字错误 |
-h | 显示帮助信息 |
-n | 输出结果不带关键词 |
-p | 从系统文件中加载内核参数 |
-v | 显示版本信息 |
参考示例
查看系统中所有内核参数变量和值:
[root@linuxcool ~]# sysctl -a abi.vsyscall32 = 1 crypto.fips_enabled = 0 debug.exception-trace = 1 debug.kprobes-optimization = 1 dev.cdrom.autoclose = 1 dev.cdrom.autoeject = 0 dev.cdrom.check_media = 0 dev.cdrom.debug = 0 ………………省略部分输出信息………………
读取一个指定系统内核参数变量的值:
[root@linuxcool ~]# sysctl dev.cdrom.debug dev.cdrom.debug = 0
修改一个指定系统内核参数变量的值:
[root@linuxcool ~]# sysctl dev.cdrom.debug=1 dev.cdrom.debug = 1