sysctl重新定义的值在哪里?
我有:
> uname -a Linux note 3.1.0-1-amd64 #1 SMP Tue Jan 10 05:01:58 UTC 2012 x86_64 GNU/Linux > cat /etc/debian_version wheezy/sid > tail -n 2 /etc/sysctl.conf # net.ipv6.bindv6only=0
但每次重启后net.ipv6.bindv6仍然是1
用您的参数检查/etc/sysctl.d中是否有文件。 这些文件覆盖/etc/sysctl.conf文件…
https://bugs.launchpad.net/ubuntu/+source/procps/+bug/50093
/etc/init.d/procps.sh
在启动过程中来得太早,无法使用很多的sysctl。 由于它在加载networking模块和加载文件系统之前运行,有相当多的常用sysctl,它们在启动时被忽略,并向控制台产生错误。
网上所有关于修改/etc/sysctl.conf中的某些设置的文档,比如net.ipv4.netfilter.ip_conntrack_max
,对Ubuntu和Debian来说都是错误的。
最后,“在我看来,这是一个Debian Squeeze的bug,请参阅这里的例子和解决方法: http : //wiki.debian.org/BridgeNetworkConnections
在后一种情况下,procps初始化脚本应该在启动时加载它们。 然而,在挤压它不,你需要从/etc/rc.local(或类似)重新启动它:
# /etc/rc.local # Load kernel variables from /etc/sysctl.d /etc/init.d/procps restart exit 0
如果你使用ufw (简单的防火墙),你真的需要改变/etc/ufw/sysctl.conf
的值,因为这里的configuration会覆盖 /etc/sysctl.conf one
。
这是由procps初始化脚本设置的。 确保使用update-rc.d procps enable
启用了此脚本。 如果已启用,则应该将/etc/rcS.d中的文件链接到/etc/init.d/procps。 如果这个init脚本工作正常,手动运行/etc/init.d/procps restart
应该进行设置。