Upgrades without reboot - what kinds of problems happen in practice? [closed]

泪湿孤枕 提交于 2019-12-24 19:00:27

问题


If you update, what kinds of problems can happen before you reboot? This happens especially frequently if you use unattended-upgrade to apply security patches.

Shared objects get replaced and so it is possible for programs to get out of sync with each other.

How long can you go safely before rebooting?

Clarification:

What I meant by "can programs get out of sync with one another" is that one binary has the earlier version of the shared object and a newly launched instance has the newer version of the shared object. It seems to me that if those versions are incompatible that the two binaries may not interoperate properly.

And does this happen in practice very often?

More clarification:

What I'm getting at is more along the lines that installers typically start/stop services that depend on a shared library so that they will get the new version of an API. If they get all the dependencies, then you are probably ok. But do people see installers missing dependencies often?

If a service is written to support all previous API versions compatibly, then this will not be an issue. But I suspect that often it is not done.

If there are kernel updates, especially if there are incompatible ABI changes, I don't see how you can get all the dependencies. I was looking for experience with whether and how things "tip over" and whether people have observed this in practice, either for kernel updates or for library/package updates.

Yes, this probably should have been put into ServerFault...


回答1:


There are two versions of an executable file at any moment in time; the one in memory and the one in disk.

When you update, the one on disk gets replaced; the one in memory is the old one. If it's a shared object, it stays there until every application that uses it quits; if it's the kernel, it stays there until you reboot.

Bluntly put, if it's a security vulnerability you're updating for, the vulnerability stays until you load the (hopefully) patched version. So if it's a kernel, you aren't safe until you reboot. If it's a shared object, a reboot guarantees safety.

Basically, I'd say it depends on the category of the vulnerability. If it's security, restart whatever is affected. Otherwise, well, unless the bug is adversely affecting you, I wouldn't worry. If it's the kernel, I always reboot.



来源:https://stackoverflow.com/questions/4434302/upgrades-without-reboot-what-kinds-of-problems-happen-in-practice

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!