You are not logged in.
I upgraded all my packages today and got a bunch of errors
:: Running post-transaction hooks...
( 1/28) Creating system user accounts...
/usr/bin/systemd-sysusers: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
error: command failed to execute correctly
( 2/28) Reloading system manager configuration...
/usr/bin/systemctl: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
error: command failed to execute correctly
( 3/28) Applying kernel sysctl settings...
/usr/lib/systemd/systemd-sysctl: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
error: command failed to execute correctly
( 4/28) Creating temporary files...
/usr/bin/systemd-tmpfiles: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
error: command failed to execute correctly
( 5/28) Reloading device manager configuration...
/usr/bin/udevadm: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
error: command failed to execute correctly
( 6/28) Arming ConditionNeedsUpdate...
( 7/28) Updating module dependencies...
( 8/28) Updating linux initcpios...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 5.6.11-arch1-1
-> Running build hook: [base]
-> Running build hook: [udev]
==> ERROR: binary dependency `libjson-c.so.4' not found for `/usr/lib/systemd/systemd-udevd'
==> ERROR: binary dependency `libjson-c.so.4' not found for `/usr/bin/udevadm'
==> ERROR: binary dependency `libjson-c.so.4' not found for `/usr/bin/systemd-tmpfiles'
-> Running build hook: [autodetect]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [lvm2]
-> Running build hook: [resume]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux.img
==> WARNING: errors were encountered during the build. The image may not be complete.
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 5.6.11-arch1-1
-> Running build hook: [base]
-> Running build hook: [udev]
==> ERROR: binary dependency `libjson-c.so.4' not found for `/usr/lib/systemd/systemd-udevd'
==> ERROR: binary dependency `libjson-c.so.4' not found for `/usr/bin/udevadm'
==> ERROR: binary dependency `libjson-c.so.4' not found for `/usr/bin/systemd-tmpfiles'
-> Running build hook: [modconf]
-> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: aic94xx
-> Running build hook: [encrypt]
==> ERROR: binary dependency `libjson-c.so.4' not found for `cryptsetup'
-> Running build hook: [encrypt2]
==> ERROR: binary dependency `libjson-c.so.4' not found for `cryptsetup'
-> Running build hook: [lvm2]
-> Running build hook: [resume]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux-fallback.img
==> WARNING: errors were encountered during the build. The image may not be complete.
error: command failed to execute correctly
( 9/28) Reloading system bus configuration...
/usr/bin/systemctl: error while loading shared libraries: libjson-c.so.4: cannot open shared object file: No such file or directory
error: command failed to execute correctly
It looks like the upgrade from json-c 0.13.1 to 0.14-4 removed /usr/lib/libjson-c.so.4 (symlinks to libjson-c.so.4.0.0) and replaced it with /usr/lib/libjson-c.so.5, breaking systemd on my system.
I did a search and couldn't find anyone with the same issue. Now I could probably just symlink the new version in place, but is there any reason why this is only happening on my system? Both systemd (245.5-2) and json-c are up to date according to archlinux.org, so I'm not sure why I'm the only person experiencing this issue.
Last edited by ceri (2020-05-11 00:49:56)
Offline
What is the output of
lddtree /usr/bin/systemd-sysusers #lddtree is provided by pax-utils
pacman -Q cryptsetup
Edit:
Also what was the pacman command you used and its full output? This would show what packages were updated e.t.c..
Last edited by loqs (2020-05-11 00:38:23)
Offline
What is the output of
lddtree /usr/bin/systemd-sysusers #lddtree is provided by pax-utils pacman -Q cryptsetup
Edit:
Also what was the pacman command you used and its full output? This would show what packages were updated e.t.c..
It was a "full" upgrade (yay -Syu).
lddtree: warning: /usr/bin/systemd-sysuser: did not match any paths
It looks like I had cryptsetup in ignorepkgs. I updated to the latest version and that seemed to fix the issue. Thanks!
I was going to ask what made you think to check cryptsetup, but I just noticed "==> ERROR: binary dependency `libjson-c.so.4' not found for `cryptsetup'" .
Not sure why holding that back broke systemd though.
Offline
lddtree /usr/bin/systemd-sysusers not /usr/bin/systemd-sysuser you missed the s. When you see the output it will explain why I asked about cryptsetup.
Offline
lddtree /usr/bin/systemd-sysusers not /usr/bin/systemd-sysuser you missed the s. When you see the output it will explain why I asked about cryptsetup.
Ah I see. That's a handy command for debugging. Thanks again.
fixed:
/usr/bin/systemctl (interpreter => /lib64/ld-linux-x86-64.so.2)
libc.so.6 => /usr/lib/libc.so.6
libsystemd-shared-245.so => /usr/lib/systemd/libsystemd-shared-245.so
libacl.so.1 => /usr/lib/libacl.so.1
libattr.so.1 => /usr/lib/libattr.so.1
libblkid.so.1 => /usr/lib/libblkid.so.1
libcap.so.2 => /usr/lib/libcap.so.2
libcryptsetup.so.12 => /usr/lib/libcryptsetup.so.12
libuuid.so.1 => /usr/lib/libuuid.so.1
libdevmapper.so.1.02 => /usr/lib/libdevmapper.so.1.02
libudev.so.1 => /usr/lib/libudev.so.1
libm.so.6 => /usr/lib/libm.so.6
libssl.so.1.1 => /usr/lib/libssl.so.1.1
libargon2.so.1 => /usr/lib/libargon2.so.1
libdl.so.2 => /usr/lib/libdl.so.2
libjson-c.so.5 => /usr/lib/libjson-c.so.5
libgcrypt.so.20 => /usr/lib/libgcrypt.so.20
libgpg-error.so.0 => /usr/lib/libgpg-error.so.0
libidn2.so.0 => /usr/lib/libidn2.so.0
libunistring.so.2 => /usr/lib/libunistring.so.2
libip4tc.so.2 => /usr/lib/libip4tc.so.2
libkmod.so.2 => /usr/lib/libkmod.so.2
libz.so.1 => /usr/lib/libz.so.1
liblz4.so.1 => /usr/lib/liblz4.so.1
libmount.so.1 => /usr/lib/libmount.so.1
libcrypto.so.1.1 => /usr/lib/libcrypto.so.1.1
libp11-kit.so.0 => /usr/lib/libp11-kit.so.0
libffi.so.7 => /usr/lib/libffi.so.7
libpam.so.0 => /usr/lib/libpam.so.0
libaudit.so.1 => /usr/lib/libaudit.so.1
libcap-ng.so.0 => /usr/lib/libcap-ng.so.0
librt.so.1 => /usr/lib/librt.so.1
libseccomp.so.2 => /usr/lib/libseccomp.so.2
liblzma.so.5 => /usr/lib/liblzma.so.5
libpthread.so.0 => /usr/lib/libpthread.so.0
Offline