想要提高 kern.ipc.somaxconn 的值
使用 sysctl 可以正常工作
$ sudo sysctl kern.ipc.somaxconn=2048
$ kern.ipc.somaxconn: 128 -> 2048
核实:
$ sysctl -a|grep somaxconn
kern.ipc.somaxconn: 2048
但是如果我在 /boot/loader.conf 或 /etc/sysctl.conf 中设置此值:
$ cat /etc/sysctl.conf
# $FreeBSD: src/etc/sysctl.conf,v 1.8 2003/03/13 18:43:50 mux Exp $
#
# This file is read when going to multi-user and its contents piped thru
# ``sysctl'' to adjust kernel values. ``man 5 sysctl.conf'' for details.
#
kern.ipc.somaxconn="2048"
重启后 kern.ipc.somaxconn 的值仍然为 128
$ sysctl -a|grep somaxconn
kern.ipc.somaxconn: 128
如何使其在重启后依然有效?
答案1
删除引号"
kern.ipc.somaxconn=2048
测试/etc/rc.d/sysctl start
答案2
如果您已将值写入 /etc/sysctl.conf,则该值应该在重新启动后保持不变 - 重新启动时从文件读取,而不是写入。
您可以尝试sysctl -w kern.ipc.somaxconn=2048
一下。另外,您如何测试更改?检查:
cat /proc/sys/net/core/somaxconn