You are not logged in.
So i tried to update today like any other day and got this error :
error: failed to commit transaction (conflicting files)
glibc: /lib exists in filesystem
Errors occurred, no packages were upgraded.
After reading the news i proceed to do : "sudo pacman -Syu --ignore glibc", which worked perfectly but "sudo pacman -Su" kept sending me the previous error.
The command "find /lib -exec pacman -Qo -- {} +" found that no package except glibc owned files in /lib.
Then i red "you can safely remove that directory". So i did "sudo srm -r /lib". Screen went black. I realised my error, panicked and shutdown manually.
When i boot i've got now this :
error loading shared libraries libdl.so.2
(none) login :
(and a /bin/bash error i forgot to wrote down)
I'm on an ubuntu partition right now. The symlink /lib/libdl.so.2 is broken. And i'm desperate, any help will be much appreciated. Thanks in advance
(Sorry for my bad english)
Last edited by popso (2012-07-15 13:41:06)
Offline
You essentially deleted glibc, so your system is now broken.
You'll need to get a live medium (such as the newest testing iso), boot that, mount your partition, and install glibc again. If there really was nothing else in /lib that you deleted, you should be ok...
Offline
Try to use this:
pacman -Syu --ignore glibc
pacman -Suhttps://wiki.archlinux.org/index.php/De … iki:usrlib
Last edited by Ignatius881 (2012-07-15 12:39:14)
Offline
You essentially deleted glibc, so your system is now broken.
You'll need to get a live medium (such as the newest testing iso), boot that, mount your partition, and install glibc again. If there really was nothing else in /lib that you deleted, you should be ok...
Do you have a tutorial of some kind ? I know there would be a chroot but i don't want to do more mistakes.
Offline
I think a
pacman -S glibc will do the trick once you chrooted in it
The chroot tutorial in the wiki is pretty good and detailed i think. https://wiki.archlinux.org/index.php/Chroot
Last edited by 89c51 (2012-07-15 12:57:57)
Offline
Except... without those files you can not chroot.
Offline
The command ls -l in /lib give me that :
total 3128
-rwxr-xr-x 1 root root 150998 2012-07-02 17:27 ld-2.16.so
lrwxrwxrwx 1 root root 10 2012-07-02 17:27 ld-linux.so.2 -> ld-2.16.so
lrwxrwxrwx 1 root root 14 2012-07-02 17:27 libanl.so.1 -> libanl-2.16.so
-rwxr-xr-x 1 root root 5544 2012-07-02 17:27 libBrokenLocale-2.16.so
-rwxr-xr-x 1 root root 1967415 2012-07-02 17:27 libc-2.16.so
-rwxr-xr-x 1 root root 185924 2012-07-02 17:27 libcidn-2.16.so
lrwxrwxrwx 1 root root 15 2012-07-02 17:27 libcidn.so.1 -> libcidn-2.16.so
-rwxr-xr-x 1 root root 34324 2012-07-02 17:27 libcrypt-2.16.so
lrwxrwxrwx 1 root root 12 2012-07-02 17:27 libc.so.6 -> libc-2.16.so
lrwxrwxrwx 1 root root 13 2012-07-02 17:27 libdl.so.2 -> libdl-2.16.so
-rwxr-xr-x 1 root root 255492 2012-07-02 17:27 libm-2.16.so
-rwxr-xr-x 1 root root 17948 2012-07-02 17:27 libmemusage.so
lrwxrwxrwx 1 root root 12 2012-07-02 17:27 libm.so.6 -> libm-2.16.so
-rwxr-xr-x 1 root root 87920 2012-07-02 17:27 libnsl-2.16.so
-rwxr-xr-x 1 root root 30544 2012-07-02 17:27 libnss_compat-2.16.so
lrwxrwxrwx 1 root root 21 2012-07-02 17:27 libnss_compat.so.2 -> libnss_compat-2.16.so
-rwxr-xr-x 1 root root 26180 2012-07-02 17:27 libnss_db-2.16.so
lrwxrwxrwx 1 root root 17 2012-07-02 17:27 libnss_db.so.2 -> libnss_db-2.16.so
-rwxr-xr-x 1 root root 17996 2012-07-02 17:27 libnss_hesiod-2.16.so
-rwxr-xr-x 1 root root 42652 2012-07-02 17:27 libnss_nis-2.16.so
-rwxr-xr-x 1 root root 50804 2012-07-02 17:27 libnss_nisplus-2.16.so
-rwxr-xr-x 1 root root 5548 2012-07-02 17:27 libpcprofile.so
-rwxr-xr-x 1 root root 130395 2012-07-15 14:59 libpthread-2.16.so
lrwxrwxrwx 1 root root 18 2012-07-02 17:27 libpthread.so.0 -> libpthread-2.16.so
-rwxr-xr-x 1 root root 83772 2012-07-02 17:27 libresolv-2.16.so
lrwxrwxrwx 1 root root 17 2012-07-02 17:27 libresolv.so.2 -> libresolv-2.16.so
-rwxr-xr-x 1 root root 30684 2012-07-02 17:27 librt-2.16.so
lrwxrwxrwx 1 root root 13 2012-07-02 17:27 librt.so.1 -> librt-2.16.so
-rwxr-xr-x 1 root root 36005 2012-07-02 17:27 libthread_db-1.0.so
lrwxrwxrwx 1 root root 19 2012-07-02 17:27 libthread_db.so.1 -> libthread_db-1.0.so
drwxr-xr-x 3 root root 4096 2012-07-15 14:54 modulesMaybe it will help
edit : The lines lrwxrwxrwx 1 root root 14 2012-07-02 17:27 libanl.so.1 -> libanl-2.16.so and lrwxrwxrwx 1 root root 13 2012-07-02 17:27 libdl.so.2 -> libdl-2.16.so are in red.
Last edited by popso (2012-07-15 13:05:21)
Offline
SOLVED !
I went to /var/cache/pacman/pkg and found the previous version of glibc. I then extracted everything from the lib folder in the package to the lib of the system.
I'm writing this from arch (feels so good).
Thanks for your replies.
Offline
SOLVED !
I went to /var/cache/pacman/pkg and found the previous version of glibc. I then extracted everything from the lib folder in the package to the lib of the system.
I'm writing this from arch (feels so good).
Thanks for your replies.
so, how did you extract the package? I tried tar xvf and I get an error.
Offline
popso wrote:SOLVED !
I went to /var/cache/pacman/pkg and found the previous version of glibc. I then extracted everything from the lib folder in the package to the lib of the system.
I'm writing this from arch (feels so good).
Thanks for your replies.
so, how did you extract the package? I tried tar xvf and I get an error.
Like i said in my first post i was on ubuntu. I did a sudo nautilus, used file-roller to open the package.
If you did not reboot see this post https://bbs.archlinux.org/viewtopic.php … 6#p1130136.
Offline