I have a package which installs a sysctl config file to /etc/sysctl.d in order to "tune" some default settings. For example, some are

net.ipv4.tcp_congestion_control = agilesd
net.ipv4.tcp_fin_timeout = 20
net.ipv4.tcp_sack = 0

The defaults for these are cubic, 60 and 1 (respectively).

I have a need where I must temporarily "disable" them. That's simply accomplished by setting them to the default. However, my experimentation lead me to moving the file /etc/sysctl.d/99-my_ip_changes.conf from that directory to /root and rebooting. On one of the CentOS 7.6 systems on which this package is installed, after a reboot, things do in fact revert to the default. However, on two others, they do not. After a reboot, the TCP Congestion Algorithm is still agilesd for example.

I have verified, to the best that I can, that there is no other sysctl conf file setting these things to the same values set in this config file. Can anyone help me in understanding why this is happening?

  • search for the word agilesd everywhere? :) – rogerdpack Oct 22 '19 at 22:54
  • @rogerdpack Thanks, I'll have to give that a go. :-) – Andrew Falanga Oct 28 '19 at 14:30
  • Post an answer back when/if you figure it out :) – rogerdpack Nov 4 '19 at 16:55

First of all, I think you have a mistake in the sysctl fields names as they should start with 'net' and not with 'sys', like so:

net.ipv4.tcp_congestion_control = agilesd
net.ipv4.tcp_fin_timeout = 20
net.ipv4.tcp_sack = 0

Besides that, from what I can tell the file '/etc/sysctl.d/99-sysctl.conf' is actually a symbolic link to '/etc/sysctl.conf':

$ll /etc/sysctl.d/99-sysctl.conf
lrwxrwxrwx. 1 root root 14 Dec 31 17:03 /etc/sysctl.d/99-sysctl.conf -> ../sysctl.conf

So my guess is that on the systems that didn't revert the change the original file was changed and even after moving your file ('/etc/sysctl.d/99-my_ip_changes.conf') to '/root' the original file '/etc/sysctl.conf' was still holding the "tuned" values.

If you still having trouble with this issue please check this out. If not, maybe this would help someone else in the future.

Hope this helps.

| improve this answer | |
  • You are correct about the sysctl names. I've corrected the error in my post. I think you're probably correct. I will be looking into this, this week. – Andrew Falanga Mar 30 at 16:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.