Q. How do I make changes to /proc filesystem permanently? For example I want to se fs.file-max to 65536, I can use command echo "65536" > /proc/sys/fs/file-max. But, after rebooting my Linux server this value will be reset to the default. How do I make it permanent?
A. You are right. You are using sysctl. It is used to modify kernel parameters at runtime. The parameters available are those listed under /proc/sys/.
You need to use /etc/sysctl.conf file, which is a simple file containing sysctl values to be read in and set by sysctl. This is a configuration file for setting system variables.
So all you have to do is add variable = value in /etc/sysctl.conf file. So the changes remains the permanent.
For example, above command echo "65536" > /proc/sys/fs/file-max, should be added as follows:
# vi /etc/sysctl.confAppend following line:
/proc/sys/fs/file-max = 65536Save the file.
Here is my sample sysctl.conf file:
net.ipv4.ip_forward = 1
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
To Load in sysctl settings from the file specified or /etc/sysctl.conf immediately type following command:
# sysctl -p