Restart after Update? Yes or No?

I have Tumbleweed for last month.
15 updates and not a single message for restart.
Windows have message if after update restart needed.

So, yes/no after Tumbleweed update?

Usually only required if a kernel update has occurred. You can always determine which processes or applications need to be restarted following updates using

zypper ps

This thread may also be of interest to you

Linux is not Windows and Windows is not Linux.

In other words what you may have learned or experienced using Windows is never a reason to assume that Linux behaves the same or similar.

Good question, I would say.

I have some programming experience, but I’m not an expert with respect to what is kept in memory (RAM) after a process is terminated.

Assume there has been a security update of Firefox.

The thing to do at least do will then be to close Firefox after the updated, and relaunch it, in order to load the updated version into memory (hoping that not the old version isn’t loaded from some cache).

Firefox, on the other hand, will load other libraries into memory.
Will they be updated in memory as well?
Frankly, I don’t know.
I never had a look at the code of the Kernel.

I don’t believe in miracles, but I prefer to act according to Murphy’s law.
So if there had been a security update of software that I use, then I prefer to reboot the system, just in order to not have to care about eventualities … :wink:

Ah, and only 15 updates for Tumbleweed?
That looks really good!

I frequently had over 400 updates for Tumbleweed after every boot in the last weeks, especially before Leap 42.2 came out.

What is in memory, will of course happily run on. What is more important is that in Unix/Linux, when a file is deleted (and that happens when it is replaced on an “update” action), it’s entry into the directory where it lives is removed (thus a new file from the update with the same name can be created), but it’s inode, and thus it’s disk usage, is not removed when the usage count of that inode is not zero (0).

To take a simple example. As long as the program /usr/bin/nicetool is running as a process, the usage count of the inode will be >0. And thus when the nicetool process needs a new segment from the program to load in memory, it is still there. The program nicetool will run on and on. In the mean time the update is done and a the newly created directory entry of /usr/bin/nicetool will now point to a new inode with the new contents. When anybody thus starts /usr/bin/nicetool, a process wil be created that uses the new updated software. Both processes, one running the old version and the other the new version, will run both without any problem.

Now this example is not covering all possibilities. As mentioned in above post, nicetool may need a dynamic library (a static library would be in de file /usr/bin/nicetool) that may be updated in the same “update” action. Thus you could get running processes that combine them (four combinations possible depending on timing). In most cases that is not much of a problem because the interface between nicetool and the library routines will not be subject to change over the “update” (more or less a prerequisite for the existence of dynamic libraries).

That said, there are always combination possible of executables, libraries, configuration files, etc. that will not combine. Stopping such programs is of course enough (the inode use count will reach zero and the kernel will release the disk blocks and put the inode in the list of free inodes). Depending on the impact of the program, stopping may be just that, logging out by all users using a particular desktop, or reboot (in case of the kernel).

In daily life, I only do the reboot for a kernel (kernel modules might give surprises here), and leave the rest until I logout and shutdown the system at the end of the day. Never detected any problems (but keep the possibility in mind).

Hi Henk!

Something similar to that was the case that I was thinking about.
The problem is, if there had been a security update of Firefox, which usually has good reasons, than personally I would like to make sure that only the updated (safer) version is running, and that the old version that may still be running in memory is discarded.

Best wishes

There’s a big difference with windows.

With opensuse (or linux), when an update is finished, everything has been updated. Some running programs might still be using old versions, but all files have been properly updated.

With windows, much has not yet been updated. Instead, there’s a list of updates (or fine renamings) that needs to be done during shutdown and during the next startup. Until those are done, the updating is not complete. And I think that sometimes the updating is not complete until after the second reboot.

So, yes/no after Tumbleweed update?

I usually reboot after a Tumbleweed update.

It is necessary after a kernel update, and perhaps after updating core software (such as “systemd”). If the software for your desktop is updated, then you at least need to logout and login again.

I agree with you (and with nrickert).

I only wanted to explain to the OP (and others) that the update process in Unix/Linux has much less impact on running processes then in some other OSes…

The result of better understanding (as showed in several posts above) should IMHO be that, as with so many thing sin Unix/Linux, one should weight pros and cons against the situation the system is for.

Things one could think about loving them or finding them horrible or overkill (in no particular order):

  • do I allow “automatic” (read coming in the worst moment) updates?
  • do I plan a (weekly) period for updates, maintenance (backup, so your users know they can possibly not work with the system?
  • when you have only on end-user on a system (yourself), planning may be easy and using a safe precaution like restarting FF may be easy.
  • do I check zypper patch or YaST Online Update output first to assess the impact before starting patching or postponing?
  • do I mix patching (security from openSUSE) with updating from all sorts of application repos in one big zypper up, or do I split that in a zypper patch first and the zypper up --from Packman later?
  • more…?
  • do I have a plan to roll back?
  • do I run Tumbleweed that will have impact on this?

It is all about sound judgement. Of course based on knowledge and experience like above posted by several members…