You are not logged in.

#1 2012-08-20 15:56:07

secretrobotron
Member
Registered: 2010-04-11
Posts: 47

[SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

After improperly updating two separate systems since `/lib` became `/usr/lib` (which have since been fixed), I decided to try the update on a server too, since it's been a while. I've followed https://wiki.archlinux.org/index.php/De … iki:usrlib as close a possible to succeed, but I think I found something the wiki simply doesn't answer, and before I use `pacman -f`, I wanted some input.

Here's my console output after already doing a bunch of upgrading with `--ignore` and `-Sd`, so that `glibc` is the only thing left to upgrade:

[root@li248-90 lib]# pacman -Syu glibc
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
:: Starting full system upgrade...
resolving dependencies...
looking for inter-conflicts...

Targets (1): glibc-2.16.0-3

Total Installed Size:   37.62 MiB
Net Upgrade Size:       2.30 MiB

Proceed with installation? [Y/n] 
(1/1) checking package integrity                                                                                                                                   [####################################################################################################] 100%
(1/1) loading package files                                                                                                                                        [####################################################################################################] 100%
(1/1) checking for file conflicts                                                                                                                                  [####################################################################################################] 100%
error: failed to commit transaction (conflicting files)
glibc: /lib exists in filesystem
Errors occurred, no packages were upgraded.
[root@li248-90 lib]# grep '^lib/' /var/lib/pacman/local/*/files
/var/lib/pacman/local/glibc-2.15-4/files:lib/
/var/lib/pacman/local/glibc-2.15-4/files:lib/ld-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/ld-linux-x86-64.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libBrokenLocale-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libBrokenLocale.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libSegFault.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libanl-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libanl.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libc-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libc.so.6
/var/lib/pacman/local/glibc-2.15-4/files:lib/libcidn-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libcidn.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libcrypt-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libcrypt.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libdl-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libdl.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libm-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libm.so.6
/var/lib/pacman/local/glibc-2.15-4/files:lib/libmemusage.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnsl-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnsl.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_compat-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_compat.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_db-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_db.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_dns-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_dns.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_files-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_files.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_hesiod-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_hesiod.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_nis-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_nis.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_nisplus-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libnss_nisplus.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/libpcprofile.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libpthread-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libpthread.so.0
/var/lib/pacman/local/glibc-2.15-4/files:lib/libresolv-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libresolv.so.2
/var/lib/pacman/local/glibc-2.15-4/files:lib/librt-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/librt.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libthread_db-1.0.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libthread_db.so.1
/var/lib/pacman/local/glibc-2.15-4/files:lib/libutil-2.15.so
/var/lib/pacman/local/glibc-2.15-4/files:lib/libutil.so.1

As you can see, an old glibc seems to be blocking the ... glibc upgrade.

Is it safe to use `pacman -Sf glibc` now, or is this going to brick this system like my others? Should I create a softlink from `/usr/lib` to `/lib` before I do this or take some other preventative measure?

Last edited by secretrobotron (2012-08-20 17:39:53)

Offline

#2 2012-08-20 16:19:08

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 15,102

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

You did run

$ find /lib -exec pacman -Qo -- {} +

to find what leftover files there are that are not owned by glibc ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#3 2012-08-20 16:23:26

secretrobotron
Member
Registered: 2010-04-11
Posts: 47

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

Lone_Wolf wrote:

You did run

$ find /lib -exec pacman -Qo -- {} +

to find what leftover files there are that are not owned by glibc ?

Yes. The output (in my code listing above) is what led me to believe that an earlier glibc was in the way.

Offline

#4 2012-08-20 17:39:02

secretrobotron
Member
Registered: 2010-04-11
Posts: 47

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

My bad.

find /lib -exec pacman -Qo -- {} +

was useful in finding some linode modules in the `/lib` folder. Moving them to `/usr/lib` before running pacman again saved the day.

Offline

#5 2012-08-23 14:25:02

debdj
Member
Registered: 2012-01-19
Posts: 163

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

I just dont want to open up another thread for a similar issue.
So am posting here -

I followed the dev wiki,

at first -Syu --ignore glibc didn't work for me for dependency problems.

So I installed allan's glibc 2.16 pkg and then
binutils, gcc, gcc-libs with -d.

Next, a -Syu --ignore glibc updated all other pkgs.

But all files now in /lib are owned by glibc 2.16-0.1 and I cant update the system.
Should I force?

EDIT: Bump. so someone takes a look.

btw, I had a plan.
I thought of making a static build of pacman, copying it to a chroot I already have
chroot into it, mount archroot, mv /lib and install glibc with proper rootdir for pacman,
Unexpectedly, the pacman build failed specifying libarchive isn't available. But I do have that installed. o.O

Last edited by debdj (2012-08-23 18:19:03)

Offline

#6 2012-08-24 20:32:50

secretrobotron
Member
Registered: 2010-04-11
Posts: 47

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

debdj wrote:

But all files now in /lib are owned by glibc 2.16-0.1 and I cant update the system.

What exactly is the output of trying to update now? How do you know the new glibc is in the way?

Should I force?

Probably not. Try to sort it out otherwise first to avoid more annoyance.

Offline

#7 2012-08-25 04:42:38

debdj
Member
Registered: 2012-01-19
Posts: 163

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

└$sudo pacman -Su --ignore x264,chromium,virtualbox
:: Starting full system upgrade...
warning: chromium: ignoring package upgrade (21.0.1180.81-1 => 21.0.1180.81-2)
warning: virtualbox: ignoring package upgrade (4.1.20-1 => 4.1.20-2)
warning: x264: ignoring package upgrade (20120204-1 => 20120705-1)
resolving dependencies...
looking for inter-conflicts... 

Targets (2): curl-7.27.0-1  glibc-2.16.0-3

Total Installed Size:   39.45 MiB
Net Upgrade Size:       0.05 MiB

Proceed with installation? [Y/n] y
(2/2) checking package integrity                   [####################] 100%
(2/2) loading package files                        [####################] 100%
(2/2) checking for file conflicts                  [####################] 100%
error: failed to commit transaction (conflicting files)
glibc: /lib exists in filesystem
Errors occurred, no packages were upgraded.
┌debd@dmachine:(10:10 AM)─────[~]
└$cd /lib
┌debd@dmachine:(10:10 AM)─────[lib]
└$for i in `ls`; do pacman -Qo "$i"; done
ld-2.16.so is owned by glibc 2.16.0-1
ld-linux-x86-64.so.2 is owned by glibc 2.16.0-1
libBrokenLocale-2.16.so is owned by glibc 2.16.0-1
libBrokenLocale.so.1 is owned by glibc 2.16.0-1
libSegFault.so is owned by glibc 2.16.0-1
libanl-2.16.so is owned by glibc 2.16.0-1
libanl.so.1 is owned by glibc 2.16.0-1
libc-2.16.so is owned by glibc 2.16.0-1
libc.so.6 is owned by glibc 2.16.0-1
libcidn-2.16.so is owned by glibc 2.16.0-1
libcidn.so.1 is owned by glibc 2.16.0-1
libcrypt-2.16.so is owned by glibc 2.16.0-1
libcrypt.so.1 is owned by glibc 2.16.0-1
libdl-2.16.so is owned by glibc 2.16.0-1
libdl.so.2 is owned by glibc 2.16.0-1
libm-2.16.so is owned by glibc 2.16.0-1
libm.so.6 is owned by glibc 2.16.0-1
libmemusage.so is owned by glibc 2.16.0-1
error: No package owns libming.pc
error: No package owns libming.so
libnsl-2.16.so is owned by glibc 2.16.0-1
libnsl.so.1 is owned by glibc 2.16.0-1
libnss_compat-2.16.so is owned by glibc 2.16.0-1
libnss_compat.so.2 is owned by glibc 2.16.0-1
libnss_db-2.16.so is owned by glibc 2.16.0-1
libnss_db.so.2 is owned by glibc 2.16.0-1
libnss_dns-2.16.so is owned by glibc 2.16.0-1
libnss_dns.so.2 is owned by glibc 2.16.0-1
libnss_files-2.16.so is owned by glibc 2.16.0-1
libnss_files.so.2 is owned by glibc 2.16.0-1
libnss_hesiod-2.16.so is owned by glibc 2.16.0-1
libnss_hesiod.so.2 is owned by glibc 2.16.0-1
libnss_nis-2.16.so is owned by glibc 2.16.0-1
libnss_nis.so.2 is owned by glibc 2.16.0-1
libnss_nisplus-2.16.so is owned by glibc 2.16.0-1
libnss_nisplus.so.2 is owned by glibc 2.16.0-1
libpcprofile.so is owned by glibc 2.16.0-1
libpthread-2.16.so is owned by glibc 2.16.0-1
libpthread.so.0 is owned by glibc 2.16.0-1
libresolv-2.16.so is owned by glibc 2.16.0-1
libresolv.so.2 is owned by glibc 2.16.0-1
librt-2.16.so is owned by glibc 2.16.0-1
librt.so.1 is owned by glibc 2.16.0-1
libthread_db-1.0.so is owned by glibc 2.16.0-1
libthread_db.so.1 is owned by glibc 2.16.0-1
libutil-2.16.so is owned by glibc 2.16.0-1
libutil.so.1 is owned by glibc 2.16.0-1

Offline

#8 2012-08-25 09:33:56

Radioactiveman
Member
From: Germany
Registered: 2010-05-13
Posts: 389

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

error: No package owns libming.pc
error: No package owns libming.so

could be the reason.
Move them and try again.

Offline

#9 2012-08-25 10:57:23

debdj
Member
Registered: 2012-01-19
Posts: 163

Re: [SOLVED] Upgrade glibc-2.16 fails since 2.15 owns /lib files

@Radioactiveman
Thanks, that was the reason. I was stupid not to try deleting them.

Offline

Board footer

Powered by FluxBB