[arch-general] Upgrading while using a package (WAS: Re: pacman -Syu -- then tons of kio and kbuildsycoca warnings. Bug or coincidence?)

diederick diederick at diederickdevries.net
Thu Oct 14 08:06:36 EDT 2010


On Thu, 14 Oct 2010 12:09:38 +0200, Thomas Bächler
<thomas at archlinux.org> wrote:
> Am 14.10.2010 11:37, schrieb diederick:
>>> Hello,
>>>
>>> in general you are right, but you never know. Programs are doing something.
>>> Some may reload data files even or program code at runtime.
>>
>> Right. In your earlier post, you specifically mention the kernel. Would
>> you say that it is safe to install a new kernel in multi user mode if I
>> reboot right after installation, while not using modprobe et al. between
>> the installation and the reboot? And if not, why is single user mode
>> safer?
>>
>> Thanks for your quick response,
>> Diederick
> 
> There's no "one case fits all" answer here. You always have to consider
> files that are in memory vs. files that will be loaded from the hard drive.
> 
> Any application binary and shared library that this binary uses are kept
> in memory - regardless if the files are deleted or overwritten while
> they are running (same holds for _open_ data files). However,
> applications can dynamically load and unload libraries (man dlopen) and
> data files. If you replace an existing library or data file with a new
> one that is incompatible with the currently running version of the
> application, you will have failures.
> Qt and KDE are known to fail if you perform a major upgrade while
> applications are still running, while minor upgrades usually work.
> 
> The same holds for the kernel: The kernel and the currently used modules
> are kept in memory. However, modules may be loaded at any time (for
> example if you plug in a new device that hasn't been used before). If
> you perform a minor kernel update, the modules are likely to still be
> compatible and you won't notice it. If you perform a major update, the
> modules will not even be in the right path, leading to failure (popular
> example: pacman -Syu and try to use a USB flash drive afterwards, then
> come to #archlinux and rant about why Arch does not support flash drives).
> 
> My recommendations:
> 1) If you are upgrading your desktop environment, exit your session,
> quit your login manager and upgrade from the text console. I advise to
> run pacman -Sywu from the desktop and when the download finishes, run
> pacman -Su from the text console.
> 2) Put all kernel-related packages on --ignore until you are planning to
> reboot. If you are not going to reboot, a kernel update will have no
> effect anyway.

Very clear. Thanks!

Diederick

-- 
http://www.diederickdevries.net/


More information about the arch-general mailing list