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

Thomas Bächler thomas at archlinux.org
Thu Oct 14 06:09:38 EDT 2010

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.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://mailman.archlinux.org/pipermail/arch-general/attachments/20101014/669bec33/attachment.bin>

More information about the arch-general mailing list