How often do you update software on your servers?

https://discuss.tchncs.de/post/47841853

How often do you update software on your servers? - tchncs

Or asked the other way around: How long do you keep your servers running without installing any software updates? update means something like sudo dnf update or something … apt-get upgrade apt-get update

Well, one of the reasons I’m using debian on my server is so I can kinda forget about it…

I’ll update maybe once a month, or every couple months. I don’t always restart though, so my kernel is probably a bit behind :'D

lol. Same issue for me. I run it for months, and surprisingly (for me) nothing breaks at all.

But fucking ssh shows warnings regarding some “post quantum crypto” stuff, that was not there before lol.

That’s… Not how it works… Debian is “stable” not “secure”. You use Debian so that is easier to run updates frequently since they’ll be unlikely to break things.

If I wanted to run updates frequently I would run arch lmao. Even if I did apt update every day, debian stable doesn’t get that many updates.

I could just run auto-update but meh.

Are you talking about desktop use?
No, my home server. My desktop and laptop both have arch, because I do interact with them more often.

If I wanted to run updates frequently I would run arch lmao. Even if I did apt update every day, debian stable doesn’t get that many updates.

You’re not updating for features you’re updating for bug and security fixes. That’s why Debian stable doesn’t have many updates. But the ones they do are typically important.

Yeah, I know. Until I get ransomware’d and my nudes leaked, I won’t care 💅🏻✨
Clearly you don’t know.
I guess people smoke because they don’t know smoking causes cancer ;3
I use Debian stable and subscribe to the debian-security-announce mailing list, so I update each time I get an email from it.
Debian Mailing Lists -- Index for debian-security-announce

This is the way. (At least for a server)

Those apt commands are in a less-good order. It’s usually better to update apt, then upgrade the system.

I upgrade as soon as reasonably possible after the notification appears, if the system isn’t on auto-upgrade.

I do sudo apt update && sudo apt upgrade

Is there any reason to not combine the commands since the output always prompts prior to changes anyway?

I think their point was to make sure they are done in order, i.e. update before upgrade, not the other way around as in OPs example.
Once a week. I have a bash script that does an apt update upgrade and pulls new docker images.
@PlanterTree Systems facing public internet, security updates are applied daily automatically.
up to now I install all my updates manually, maybe I should look into this: how to auto-update.
Can I ask how you do that? I have some febian and fedora boxes I should configure for that
How to configure automated security updates on Debian automatically

Explains how to configure automated security downloads and install security updates/patches for the Debian Linux server to keep it secure.

nixCraft
My hero, thank you!

Every night at ~ 12-1am

unattended updates / transactional-update are awesome.

Stuff has been running for years, and it’s still up to date.

This guy scares me

Once per week for me. Works really great on openSUSE MicroOS. Had to roll back maybe a couple of times the last few years.

That said, I run basically everything in containers so the OS installed things are lean.

This is the way! At least install security upgrades nightly using unattended-upgrades and reboot from time to time to get the latest Kernel version.
Tell me you’re using nightly builds as well.

I wish I could use unattended-upgrade.

It literally restarts my server even when I disable the option, leaving it hung if the USB boot key isn’t in there.

I had to stop using it, so now I just manually upgrade because that doesn’t auto-restart without my permission…

unattended-upgrades doesn’t do that unless you explicitly specify //Unattended-Upgrade::Automatic-Reboot “true”; in the config. Check /usr/share/doc/unattended-upgrades/README.md.gz

The main configuration file is /etc/apt/apt.conf.d/50unattended-upgrades, maybe you put your config in the wrong place?

here is mine

Unattended-upgrade does security-only patching once every 4 hours (in rough sync with my local mirror)

Full upgrades are done weekly, accompanied by a reboot

I find that the split between security patching and feature/bug patching maintains a healthy balance knowing when something is likely to break but never being behind on the latest cve.

For me, unattended-upgrade does it’s thing. Updating other packages happens whenever I think about it. Very few things are not containerized and there’s very little added beyond the base Debian install, so when I do update its maybe a dozen packages.

I would previously reboot during thunderstorms if we lost power, but now that I’ve got a UPS I probably ought to come up with a different plan.

Mine is set to update all the stuff I use, and the OS, automatically whenever an update is available. 🤷‍♂️

Gentooer here. Emerge sync &; world daily at night.

Weekly a manual check for stuff that doesn’t autoupdate for reasons.

Monthly / biweekly podman compose pull for containers. Manual, because i don’t trust that kind of autoupdate.

Using nix :P

I update the flake every now and then via nix flake updated and then do a rebuild

I SSH in and run an update manually, once a week. I’m not knowledgable and comfortable enough to let updates happen automatically. Not yet, anyway.
Every day to once a week, depending on free time

All systems, daily via a single ansible script. That’s apt update, upgrade and reboot if needed (some systems set to only reboot with a separate script so I can handle them separately).

Rarely have any sort of problems.

Probably every 2 months. When I have a day off work with nothing to do. I have a few VMs that are more fragile than I want to admit and if something breaks I want to have time to tinker instead of just restoring a backup.
I do it every 3 to 5 days. I usually do it when I have time to fix things if it goes south.

On my ubuntu I use unattended updates but that doesn’t work reliably. I have to update it manually most of the time. Once every other month.

On my fedora server it auto updates every day at 4 reliably.

The next server is going to be atomic such that the server restart is even shorter (not that I would care about it at 4).

Automatic upgrades handle the security patches. Everything else maybe once a month. My big services like Nextcloud auto update as well.

All services are dockerized, updated nightly.

Server OS runs a kernel-patch service for real time exploit patching.

All other updates as soon as they appear.

Yeah, sometimes I'll need to go in a repair - but that's way better than having to clean up after having been exploited due to not keeping up on security patches.

Almost everything I have runs Debian or NixOS, so……… once a month? Except for VMs I’m playing around with, which usually get updated every time I log into them, or instal stuff.
When I remember. About once a month.
Same here. No auto updates, nothing without my manual intervention. 😅
Last thing I need in my life is a broken system at home when I don’t have time for it!

On Alpine Linux I update my two Pi servers at 2 in the morning daily. It’s simpler compared to Debian which needs unattended-updates. Just add apk update && apk upgrade to a cron job and you’re good to go.

I only have three docker services which is simple enough to update manually.

I like to keep things as simple as possible for my already chaotic brain.

Be careful with unattended upgrades, even on alpine. A recent breaking change in python3 broke my alpine 23 ansible instance. Thankfully I have backups, but if you’re going to automate the upgrade, you should automate tests as well.

My web facing server has just enough packages installed to (kinda securely) host a Caddy and Kiwix docker container to work with my domain name and make a comfortable work environment through SSH. My Pi for my HomeAssistant docker container has less because it’s locked down to just my local network.

I also wrote my own install scripts so reinstalling everything and getting it back to a running state would take about 15 minutes for each device.

And I also wrote my own backup/restore scripts that evolved over 3/4 of a year. I use them often so I have confidence in those scripts.

I personally don’t really care too much. I have multiple ways of dealing with issues for something that’s a hobby to me. Which is why I stick to simplicity.

I’m sure this is a thing for people to worry about when dealing with more complex setups. I just wanna vibe out in my tiny corner of the internet.

To make it even simpler, apk -U upgrade

apk seems to have some tricks in there that aren’t as well known.

I managed to catch in the IRC channel that apk add doc will automatically download any related man pages for packages with any future downloads through apk. That made life a bit more convenient instead of downloading all those packages separately.

Got apticron set up on my servers or similar solutions to get notified when updates are available. Then usually, from time of notification +1 or 2 days.
And for containers auto updates once every day.

Depends, on how critical something is…since we deal with servers / customers at work that often are purposely not adjusted for years…because introducing a different behaviour (even if better) would grind production to a halt, I take a not careful approach.

I was using OpenSUSE Leap, and with zypper you can review which patches are available, whether they are critical or run recommended or not needed. You can then apply which specific patch you want be CVE if necessary.

But with Leap’s path seaming messy at the moment, I moved to Tumbleweed, since you have snapshotying built in. If an update did mess something up you just rollback to the previous snapshot and in less than a minute it is fixed

everyday to once a month, depending how often I use the server

IME usually waiting longer to apply larger updates causes more issues than smaller and more frequent ones

Every couple of days. I don’t auto-update, but I’ve streamlined the process to the point that I can just open a single web page and see the number of pending updates for every system on my network, docker containers included, each one with a button. Clicking the button applies the update and reboots if necessary. So it takes about 15 seconds of effort to update everything, which is why I don’t mind doing it so often.
On Windows, almost never since it was a disruptive shitshow. Now that I’ve got everything running Linux it’s weekly. Often sooner if I happen to be remoting in and manually update.
First Friday of the month. Easy to remember.
maybe like once in 3 months. i usually update when i need to setup something new on the server that needs to install new packages.
Usely every 3/4 months roughly. I try to remeber to update. The base. Server. And docker based things! /webserices. I update. Sparingly. Every few new versions. As I am the only user of my server. I don’t have a high need to update. So I update only if a new future. Is added or a mayor bug /security patch.
Weekly. Cronjob.