Silverblue Update Failure

Hi!
I’m having a problem with system upgrade:

$rpm-ostree upgrade
[Removed Stuff]
Resolving dependencies… done
Checking out packages… done
Running pre scripts… done
error: Running %prein for unbound-libs: bwrap(/bin/sh): Child process killed by signal 6; run journalctl -t ‘rpm-ostree(unbound-libs.prein)’` for more information or some similar error.

This problem occurs every once in a while and will fix by a reboot, or sometimes more than one reboot. Retrying to upgrade in the same boot will not help.

And of course, here’s the result of journalctl:

$journalctl -t ‘rpm-ostree(unbound-libs.prein)’
Jun 06 00:49:17 fedora rpm-ostree(unbound-libs.prein)[36047]: groupadd: /etc/group.4: lock file already used
Jun 06 00:49:17 fedora rpm-ostree(unbound-libs.prein)[36047]: groupadd: cannot lock /etc/group; try again later.
Jun 06 00:49:17 fedora rpm-ostree(unbound-libs.prein)[36052]: useradd: group ‘unbound’ does not exist

I had this problem since the beginning of using Silverblue (some 3-4 month I guess), and it didn’t go away with rebasing to F36.

Let me know if you need other details. And thank you all in advance!

I’ve seen this happen before. There’s an overlay for /etc/passwd and /etc/group, so the actual files are pretty empty, and if something goes wrong with the overlay computation, the rpm scripts break. To work around that, I’ve added the user/groups to /etc/passwd and /etc/group directly.

This should workaround it for you, as root (sudo -i first):

echo 'unbound:x:995:992:Unbound DNS resolver:/etc/unbound:/sbin/nologin' >> /etc/passwd
echo 'unbound:x:992:' >> /etc/group

Then try your rpm-ostree upgrade again.

3 Likes

Thank you! It worked like a charm.

Regarding overlays, I currently have: NetworkManager-l2tp NetworkManager-l2tp-gnome xl2tpd. It’s probable that the boots I was unable to upgrade from, were the ones in which some service was using these packages.

1 Like