When I moved to London in June, I didn't bring my desktop with me. I only brought my laptop instead. Both systems run Arch Linux. I moved to Zurich last month and got my desktop back last week. As it turn out, updating an Arch Linux system after three months is not without danger.
I had already backed up my data from the desktop before I left because I had a feeling that something like this would happen.
When I got my desktop back, the first thing I did was let
pacman update the system.
Everything seemed fine until segfaults started to show up.
They showed up in my
R scripts, in
Segmentation fault (core dumped)
I didn't find anything in the archlinux.org news but apparently segfaults on random programs are known as the early symptoms of failing RAM. I figured failing RAM would not segfault on the same programs every time but I had no other leads.
strace on some of the programs that were giving me segfaults and they all seemed to be looking for a file named
open("/usr/lib/tls/x86_64/libnvidia-egl-wayland.so.", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib/tls/x86_64", 0x7ffe039bc1c0) = -1 ENOENT (No such file or directory) open("/usr/lib/tls/libnvidia-egl-wayland.so.", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib/tls", 0x7ffe039bc1c0) = -1 ENOENT (No such file or directory) open("/usr/lib/x86_64/libnvidia-egl-wayland.so.", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) stat("/usr/lib/x86_64", 0x7ffe039bc1c0) = -1 ENOENT (No such file or directory) open("/usr/lib/libnvidia-egl-wayland.so.", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
After some googling, I found out that this may be caused by the fact that Intel microcode is no longer loaded automatically. I'm still not sure why. Apparently the only thing I had to do was rebuild my grub config to make sure that the Intel microcode would be loaded during boot.
$ sudo grub-mkconfig -o /boot/grub/grub.cfg Generating grub configuration file ... Found Intel Microcode image [...]
Now I could finally clean up all the core dumps.
$ du -sh /var/lib/systemd/coredump 2.5G /var/lib/systemd/coredump