命令行:vim /etc/sysctl.conf
查看如下兩行的設置值,這裡是:
kernel.shmall = 2097152
kernel.shmmax = 4294967295
如果系統默認的配置比這裡給出的值大,就不要修改原有配置。
同時在/etc/sysctl.conf文件最後,添加以下內容:
fs.file-max = 6553600
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
這裡的"fs.file-max = 6553600"其實是由"fs.file-max = 512 * PROCESSES"得到的,
我們指定PROCESSES的值為12800,即為"fs.file-max =512 *12800"。
sysctl.conf文件修改完畢後,接著執行"sysctl -p"使設置生效。
[root@localhost ~]# sysctl -p 常用的內核參數的含義如下。
kernel.shmmax:表示單個共享內存段的最大值,以字節為單位,此值一般為物理內存的一半,不過大一點也沒關系,這裡設定的為4GB,即"4294967295/1024/1024/1024=4G"。
kernel.shmmni:表示單個共享內存段的最小值,一般為4kB,即4096bit。
kernel.shmall:表示可用共享內存的總量,單位是頁,在32位系統上一頁等於4kB,也就是4096字節。
fs.file-max:表示文件句柄的最大數量。文件句柄表示在Linux系統中可以打開的文件數量。
ip_local_port_range:表示端口的范圍,為指定的內容。
kernel.sem:表示設置的信號量,這4個參數內容大小固定。
net.core.rmem_default:表示接收套接字緩沖區大小的缺省值(以字節為單位)。
net.core.rmem_max :表示接收套接字緩沖區大小的最大值(以字節為單位)
net.core.wmem_default:表示發送套接字緩沖區大小的缺省值(以字節為單位)。
net.core.wmem_max:表示發送套接字緩沖區大小的最大值(以字節為單位)。