Originally Posted by wroom
This is a development in linux i don't like; having different sets of controls for the same functions which sometimes is regarded and sometimes not. It is bad enough with the systemd vs BSD-style rc.d. Or the /proc vs the /sys. HAL vs...
That would be a development related to various distributions. It has nothing to do with the Linux kernel.
There's exactly one
setting that controls whether or not the IPv4 stack in the Linux kernel will forward packets. It's exposed through the virtual proc filesystem as /proc/sys/net/ipv4/ip_forward
All those other files, like /etc/sysctl.conf
and various init scripts and network configuration files, have to be read by some userspace program that ultimately writes a 1
or a 0
. If that userspace program (whatever it may be) isn't run, the setting means nothing.
With the single exception of reading and executing the file that starts the init system at bootup, the kernel doesn't read any
files on its own accord. It's all controlled by daemons and other userspace applications. (The /proc
directories don't count, as those contain kernel variables and data exposed as virtual files, not the other way around.)