0
点赞
收藏
分享

微信扫一扫

使用sysctl管理内核参数

何以至千里 2024-10-08 阅读 29
Linux运维

sysctl 命令用来配置linux 系统内核参数,这些参数以文件的形式显示在 /proc/sys/ 目录中,配置项就是目录名加文件名,值就是该文件中的内容,但不是所有内核参数都是可以被修改的。

  • -a|-A|-x|--all #显示所有内核参数
  • -p|--load #重载
  • -N|--names #仅显示参数名称
  • -n|--values #仅显示参数值
  • -w|--write #设置内核参数

修改内核参数

sysctl -w net.ipv4.ip_forward=1
或者
echo 1 > /proc/sys/net/ipv4/ip_forward
或者
vim /etc/sysctl.conf
.....
net.ipv4.ip_forward=1

#重载生效
[root@ubuntu ~]# sysctl -p

系统在启动时,会按下列顺序加载配置文件,读取内核参数值

  • /run/sysctl.d/*.conf
  • /etc/sysctl.d/*.conf
  • /usr/local/lib/sysctl.d/*.conf
  • /usr/lib/sysctl.d/*.conf
  • /lib/sysctl.d/*.conf
  • /etc/sysctl.conf

常用内核参数

  • net.ipv4.ip_forward #是否开启ipv4地址转发
  • net.ipv4.icmp_echo_ignore_all #是否禁用ping功能
  • net.ipv4.ip_nonlocal_bind #允许应用程序可以监听本地不存在的IP
  • vm.drop_caches #缓存回收机制 3 回收所有 2 释放数据区和信息节点 3 释放页面缓存
  • fs.file-max = 1020000 #内核可以支持的全局打开文件的最大数
  • vm.overcommit_memory = 0 #超分 0表示进程申请内存时会判断,不够则返回错误,1表示内核允许分配所有的物理内存,而不管当前的内存状态如何,2表示内核允许分配超过所有物理内存和交换空间总和的内存
  • vm.swappiness = 10 #使用swap空间时物量内存还有多少可用,10 表示物理存只有10%时才使用swap
  • #禁用IPv6
  • net.ipv6.conf.all.disable_ipv6 = 1
  • net.ipv6.conf.default.disable_ipv6 = 1













举报

相关推荐

0 条评论