filesystem and glibc update
A few months ago I did a zypper dup on my Tumbleweed system. This was when there were changes in where things were in /usr. It destroyed my system. So I reverted to a previous snapshot and decided to wait a bit to see if a later update might do better. I tried a new zypper dup yesterday, and the same issue happened. Luckily I was able to keep the messages this time. I searched a bit (google) and did not find anything about this. Like: https://forums.opensuse.org/showthread.php/555033-Fixing-software-package-up... I realize that making a bug report is probably the next step. But given the dearth of existing ones, I am wondering what might be different on my system compared to what others are running. I get this when zypper is installing the rpm: ( 319/4386) Installing: filesystem-84.87-2.1.x86_64 .................................................................................................[error] Installation of filesystem-84.87-2.1.x86_64 failed: Error: Subprocess failed. Error: RPM failed: Make a copy of `/bin'. Merge the copy with `/usr/bin'. Clean up duplicates in `/usr/bin'. Make a copy of `/sbin'. Merge the copy with `/usr/sbin'. Clean up duplicates in `/usr/sbin'. Make a copy of `/lib'. Warning: /lib/udev conflicts with directory /usr/lib/udev and will be removed Merge the copy with `/usr/lib'. cp: cannot overwrite non-directory '/usr/lib.usrmerge/systemd' with directory '/usr/lib/systemd' UsrMerge conversion failed, cleaning up !!! ATTENTION: Do NOT proceed if you see this message during !!! distribution upgrade. Chances are high that your system might !!! break beyond repair if you do. error: lua script failed: [string "%prein(filesystem-84.87-2.1.x86_64)"]:15: exit error: filesystem-84.87-2.1.x86_64: install failed error: filesystem-15.5-39.1.x86_64: erase skipped Abort, retry, ignore? [a/r/i] (a): At that time, if I look around (dup is waiting for my response), all looks as it did before: ll /lib/udev lrwxrwxrwx 1 root root 13 Jan 24 2020 /lib/udev -> /usr/lib/udev ll /usr total 0 dr-xr-xr-x 1 root root 93286 Sep 6 18:01 bin drwxr-xr-x 1 root root 278 Sep 6 18:01 etc drwxr-xr-x 1 root root 10356 May 17 20:16 include dr-xr-xr-x 1 root root 25204 Sep 6 18:01 lib dr-xr-xr-x 1 root root 221644 Aug 25 16:57 lib64 drwxr-xr-x 1 root root 2720 Sep 6 18:01 libexec drwxr-xr-x 1 root root 112 Apr 20 00:56 local dr-xr-xr-x 1 root root 15480 Jul 30 11:01 sbin drwxr-xr-x 1 root root 6554 May 17 20:11 share drwxr-xr-x 1 root root 246 May 18 18:31 src drwxr-xr-x 1 root root 26 Apr 20 00:56 x86_64-suse-linux drwxr-xr-x 1 root root 28 Apr 20 00:57 x86_64-w64-mingw32 In another window, I can still run commands. If I foolishly continue the dup (after all, many packages have been installed - I don't want a dead system for that reason - and this is a test of being able to do this update), when it installs glibc, all goes a over t: Abort, retry, ignore? [a/r/i] (a): i ( 320/4386) Installing: gtk2-metatheme-breeze-5.22.4-1.1.noarch ......................................................................................[done] ( 321/4386) Installing: oxygen5-icon-theme-large-5.85.0-1.1.noarch ...................................................................................[done] ( 322/4386) Installing: myspell-lightproof-en-20201230-2.2.x86_64 ....................................................................................[done] ( 323/4386) Installing: glibc-2.33-9.1.x86_64 ........................................................................................................[done] Additional rpm output: error: failed to exec scriptlet interpreter /sbin/ldconfig: No such file or directory warning: %postun(glibc-2.33-6.1.x86_64) scriptlet failed, exit status 127 And I can no longer run any command anywhere. This is what happened earlier. So what is confusing the filesystem RPM? There is a warning, and the cp command files. Why? I cannot see that there is anything unusual in my /usr directory. -- Roger Oberholtzer
On 9/7/21 11:32, Roger Oberholtzer wrote:
Installation of filesystem-84.87-2.1.x86_64 failed: Error: Subprocess failed. Error: RPM failed: Make a copy of `/bin'. Merge the copy with `/usr/bin'. Clean up duplicates in `/usr/bin'. Make a copy of `/sbin'. Merge the copy with `/usr/sbin'. Clean up duplicates in `/usr/sbin'. Make a copy of `/lib'. Warning: /lib/udev conflicts with directory /usr/lib/udev and will be removed Merge the copy with `/usr/lib'. cp: cannot overwrite non-directory '/usr/lib.usrmerge/systemd' with directory '/usr/lib/systemd' UsrMerge conversion failed, cleaning up
It seems that something in the merges above has created '/usr/lib.usrmerge/systemd' as a non-directory file. I'd guess you had such a file in /usr/lib or /lib before. Not sure if that was correct or not, but it explains the error diagnostic. Have a nice day, Berny
participants (2)
-
Bernhard Voelker
-
Roger Oberholtzer