How often should you reboot a production webserver?
Specifically, a dedicated server running Debian 12.
After a monthly sudo apt upgrade? (Is a monthly upgrade even necessary?)
Never? (unless there is a security update?)
Edit: I may be missing kernel upgrades. Those are probably good... I can't remember if I installed a LTS kernel. I imagine it would be unsecure to post an exact kernel version, however.
I just go to the lil power strip and flick the the lil removed power button when I go to bed, then flick it back on when I wake up. It keeps the kids off the Wifis when we're supposed to be sleeping.
I was the "tech guy manager" for my regional office, for a major telecommunications company, for a non-trivial amount of time. Meritocracy in action, folks.
A lot of times I'll run apt-get update / apt-get upgrade on my server and there will be no updates to install. I only reboot if there is a new kernel or something. Otherwise, I can just restart whichever services are directly impacted by the updates.
Debian Stable is a rock. Nothing ever changes. I do recommend subscribing to the debian-announce and debian-security-announce mailing lists though.
If there's a serious security bug, like Heartbleed, you should totally update and reboot the service. That is basically the only "must" for staying atop things. The rest is mostly personal preference.
In my job I maintain publically exposed Linux servers, and many of them don't get rebooted for years. I think our record is about five years.
Yes, if you want your server to be theoretically the rootinest tootinest securest setup ever, you should update about every 6 hours, but even then you're just more vulnerable to repo attacks (which have happened a few times lately). Apt upgrade every month or three is probably good practice to keep on top of bugs.
So really, how frequently do you need to reboot? Eh. So long as it works, there are no critical kernel vulnerabilities, and updates are available, I really would argue you should never "have" to.
Servers are horses for courses, if you're being heavily targeted by hackers, obviously stay on top of updates, but if your server is pootling along without harassment and doesn't contain life-altering stuff if it got leaked, then don't worry too much. A standard, barely-changing, 'stable' build is usually a very secure one.
If this is a big site that experiences a lot of traffic, You should already have more than a single Web server anyway. If this is a website for a school or an organization, You really should have a load balancer and a couple web notes. In that situation upgrading and rebooting, draining traffic and bringing it back in, is fairly trivial.
If this is a home server, where you're the only real user, just reboot it.
Some distros like Ubuntu are better about fixing the security issues without requiring rebooting, but if it's a home web server the uptime is really not important.
Not necessarily load balanced I suppose but say spinning up a new server and switching over using dns or something could work too. Then you keep both running while the first one drains. If thats not possible idk probably put up a notice on your site and do it at like 2am on a weekday
I only really restart if there's a kernel update because I'm too lazy to do all the setup for live patching. If there's an update for something like Nginx, I restart the service after updating it. I try to stay on top of updates, especially security ones for obvious reasons.
server: nginx/1.22.1
I also personally disable this, it's not really too important, but it's a little security by obscurity thing. Makes people scanning the internet for a specific (possibly vulnerable) version of Nginx a little bit harder.
bring back old forums that had a weekly scheduled reboot that was always the same but you would always forget about and panic for 10 seconds and be about to email the webmaster before remembering
It really depends. I've seen servers that reboot every 24 hours as well as servers that are constantly up. I would say to reboot every kernel or systemd upgrade
Some packages managers, including Debian APT, create a /var/run/reboot-requiredfile when an upgrade requires a reboot (like a kernel upgrade). If you have other reasons to reboot, it's up to you to find the best interval between reboots.
Some packages managers, including Debian APT, create a /var/run/reboot-requiredfile when an upgrade requires a reboot (like a kernel upgrade). If you have other reasons to reboot, it's up to you to find the best interval between reboots.
Some packages managers, including Debian APT, create a /var/run/reboot-required file when an upgrade requires a reboot (like a kernel upgrade). If you have other reasons to reboot, it's up to you to find the best interval between reboots.
If this is a big site that experiences a lot of traffic, You should already have more than a single Web server anyway. If this is a website for a school or an organization, You really should have a load balancer and a couple web notes. In that situation upgrading and rebooting, draining traffic and bringing it back in, is fairly trivial.
If this is a home server, where you're the only real user, just reboot it.
Some distros like Ubuntu are better about fixing the security issues without requiring rebooting, but if it's a home web server the uptime is really not important.
Some packages managers, including Debian APT, create a /var/run/reboot-requiredfile when an upgrade requires a reboot (like a kernel upgrade). If you have other reasons to reboot, it's up to you to find the best interval between reboots.