`
wsql
  • 浏览: 11714020 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Linux系统控制文件 /etc/sysctl.conf

 
阅读更多
/etc/sysctl.conf这个目录主要是配置一些系统信息,而且它的内容全部是对应于/proc/sys/这个目录的子目录及文件。这样或许你不理解,先看看我的系统/etc/sysctl.conf这个文件里面有什么内容:cat /etc/sysctl.conf
fs.file-max = 3145728

fs.suid_dumpable = 1
kernel.core_uses_pid = 1

kernel.printk = 4 4 1 7
kernel.shmmax = 7516192768
kernel.shmall = 1835008

net.ipv4.ip_local_port_range = 8192 65535
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.netfilter.ip_conntrack_max = 1048576
net.ipv4.tcp_max_tw_buckets = 1048576
net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_rmem = 4096 87380 4120576
net.ipv4.tcp_wmem = 4096 16384 4120576

#vm.nr_hugepages = 0
其实每个'.'分割的就代表一个目录,例如,fs.file-max也就代表/proc/sys/fs/file-max。那么/proc/sys/是用来做什么的呢?大家都知道/proc是每次系统启动的时候都要重新挂载的,它反映了系统内存里面的一些状态。通过/proc/可以很好的了解到当前系统的一些信息。而/proc/sys/则是这些信息的一小部分而已。你可以通过ls /proc/查看,里面还是不是有很多其他的数字命名的目录?那就是单个进程的信息了,那个数字就是进程ID。例如之前写过一篇关于two many open files解决办法的文章,那么查看某个进程打开多少FD,则可以通过ls /proc/<pid>/fd | wc -l来统计。
常用的有哪些呢?刚入门,自己用到的选项也不多。
1. vm.nr_hugepages/vm.hugetlb_shm_group # 第一个表示设置系统有多少大页内存,第二个表示哪些用户组的进程可以使用大页内存
2. vm.swappiness # 如果设置为0表示禁用swap,否则值越大使用swap的可能性越高
3. vm.overcommit_memory/vm.overcommit_ratio # 这个设置是否可以超额分配内存,当然这是利用的virtual memory机制实现的。
前面那些参数都是在测试有什么方法防止mysqld使用swap,或者能否被避免Linux的OOM机制,详情请点击这里
还有在Linux上装oracle会要设置kernel.shmmax这个参数吧(>_<,我还没在linux下安装过~) 这个也可以在/etc/sysctl.conf里面设置。

前面说过/etc/sysctl.conf与目录/proc/sys/的关系,那么常见设置方法有三个:
1. echo value > /proc/sys/xx/yy
2. vi /etc/sysctl.conf #vi编辑,然后添加设置 ; sysctl -p #生效
3. sysctl -w kernel.domainname="example.com" #利用-w生效
另外需要注意,/etc/sysctl.conf 与 sysctl命令只有root用户才有权限执行

关于/etc/sysctl.conf的介绍就差不多了,理解了这个文件的作用,更关键的是要知道里面每项的含义,以及怎么设置来调优系统。不懂的太多了,只能靠慢慢积累了~
另外几个系统缓存参数设置参见这里(感觉这篇文章写得不错~)
分享到:
评论

相关推荐

    LINUX服务器实施

    第7章 修改/etc/sysctl.conf文件中的系统参数,加入如下: 38 第8章 路由配置信息 39 第9章 LVM基础信息查询 40 第10章 光纤口状态查询 41 第11章 更改主机相关IP 42 附:/etc/cluster/cluster.conf文件内容 43

    linux sysctl参数配置详细介绍

    sudo vi /etc/sysctl.conf 代码: # Kernel sysctl configuration file for Red Hat Linux # # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details. # ...

    linux安装oracle基本linux操作学习

    8. oracle需要的参数配置(/etc/profile、 .bash_profile、 /etc/sysctl.conf) 9. oracle安装需要的图形化支持(linux的xmanager配置,vnc配置) 10.对oracle rac配置ssh的互信 11.oracle优化的操作系统层(linux优化...

    linux Oracle安装文档

    修改用户的SHELL的限制;修改/etc/pam.d/login 文件;修改/etc/sysctl.conf文件;编辑 /etc/profile。内有安装时碰到问题解决方案。

    centos7使用docker-compose安装es(包括IK分词器扩展)+kibana

    vim /etc/sysctl.conf vm.max_map_count=262144 不重启, 直接生效当前的命令 sysctl -w vm.max_map_count=262144 3、docker和docker-compose安装要提前安装完成 4、将下载内容解压一个目录 5、运行 docker-...

    LINUX环境下oracle11gr2 grid + asm下dbca创建数据库生产环境安装注意事项

    c) 修改内核配置文件/etc/sysctl.conf 15 d) 修改/etc/sysctl.conf过程中报错处理: 15 8) 配置共享磁盘 (在一个节点执行即可) 16 a) 分区 16 b) 配置UDEV绑定磁盘分区 17 9) 安装GI、Oracle、等需要的包 17 四、 ...

    linux全志R16的linux系统编译的资料_20170502_1655.7z

    d/buildroot-config/conf.o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/buildroot-config/zconf.tab.o -o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/buildroot/build/...

    解决linux下大量TIME WAIT的方法详解

    问题描述:在Linux系统中高并发的Squid服务器,TCP TIME_WAIT套接字数量经常达到两、三万,服务器很容易被拖死。解决方法:通过修改Linux内核参数,可以减少linux服务器...vi /etc/sysctl.conf增加以下几行: 代码如下:...

    puppet-sysctl:人偶模块来管理sysctl参数

    人偶系统 概述 管理sysctl变量值。 所有更改都将立即应用,并配置为持久化。... 对于主/etc/sysctl.conf文件中的一些原始设置,该值也将被替换,以使运行sysctl -p不会还原puppet所做的任何更改。 例子

    linux环境下oracle10g安装

    linux环境下oracle10g安装 ...[root@oracle10g /]# vi /etc/sysctl.conf kernel.shmall = 2097152 kernel.shmmax = 4294967296 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 ...

    rac实施过程(linux)

    [root@rac01 ~]# vi /etc/sysctl.conf kernel.shmall=2097152 kernel.shmmax=536870912 kernel.shmmni=4096 kernel.sem=250 32000 100 128 fs.file-max=65536 net.ipv4.ip_local_port_range=1024 65000 ...

    LINUX调优总结

    大多数 Linux 发布版都...幸运的是,sysctl 可以读取 /etc/sysctl.conf 中的值并根据需要填充 /proc,这样就能够更轻松地管理这些参数。清单 2 展示在互联网服务器上应用于 Internet 服务器的一些比较激进的网络设置。

    Comandos-Linux-SX

    Ficheroconfiguracióninterficies de red: /etc/network/interfaces 红色维修服务: systemctl restart networking Fichero准主动转发: /etc/sysctl.conf Regla段NAT: iptables -t nat -A POSTROUTING !...

    redis配置详解.docx

    在/etc/sysctl.conf中添加:net.core.somaxconn = 2048,然后在终端中执行sysctl -p。 tcp-backlog 511 #指定 redis 只接收来自于该 IP 地址的请求,如果不进行设置,那么将处理所有请求 bind 127.0.0.1

    oracle11g设置内核参数和limit的增强

    从ORACLE 11gR2 for linux版本,已经不需要DBA们手动去编辑/etc/sysctl.conf文 件和/etc/security/limits.conf文件来修改操作系统的内核参数和限额,这些工作ORACL E会生成一个脚本,DBA只需要用root用户执行一下这...

    kernel:bbrbbrplus的linux内核

    echo "net.ipv4.tcp_congestion_control=bbrplus" &gt;&gt; /etc/sysctl.conf sysctl -p bbsplus算法原作者 https://blog.csdn.net/dog250/article/details/80629551 bbrplus首用名 ? https://github.com/cx9208

    树莓派系列教程5:linux常用命令以及vivim编辑器.docx-综合文档

    树莓派系列教程5:linux常用命令以及vivim编辑器.docx

    linux oracle 无图形化安装

    /etc/sysctl.conf4.3.2 修改系统限制参数编辑: /etc/security/limits.conf4.3.3 配置oracle用户的环境变量文件4.3.4 创建文件夹4.3.4 开始上传附件5 安装5.1 安装前准备5.1.1 临时关闭SELinux 执行命令5.1.2 关闭...

    ELK6.2.4搭建

    vi /etc/sysctl.conf #增加改行配置: vm.max_map_count=655360 #保存退出后,执行: sysctl -p 另外再配置ES的时候,threadpool.bulk.queue_size 已经变成了thread_pool.bulk.queue_size ,ES_HEAP_SIZE,ES_MAX_...

    CentOS优化配置

    CentOS优化配置 可以通过/etc/sysctl.conf控制和配置Linux内核及网络设置。 Sysctl是一个允许改变正在运行中的Linux系统的接口,它包含一些TCP/IP堆栈和虚拟内存系统的高级选项。

Global site tag (gtag.js) - Google Analytics