wejp said:
Genau das Selbe hatte jemand letztens im Kontext mit meinem Z2-Archlinux-Image gefragt. Dort hatte ich dazu kurz was
geschrieben.
Im Wesentlichen habe ich zuerst eine Busybox-Shell gestartet (damit die Shell weiterhin funktioniert, auch wenn ich die glibc temporär entferne), anschließend habe ich alles aktualisiert, außer der glibc und Paketen, die davon abhängen. Danach habe ich manuell das glibc-Paket in / entpackt. Dann habe ich den alten /lib-Ordner verschoben (nur zur Sicherheit, könnte auch direkt gelöscht werden) und anschließend stattdessen einen Symlink erstellt, der auf /usr/lib zeigt. Zum Schluss habe ich dann noch glibc korrekt über pacman installiert, damit die Paketdatenbank wieder konsistent ist.
ja cool, hab das auch so in deinem blog als kommentar vorgeschlagen. am ende gings trotzdem nicht. hab mich nicht getraut dann doch --force zu benutzen.
na dann werd ich mich nochmal dransetzen.
EDIT:
läuft. es is allerdings wirklich etwas tückisch. /lib einfach so zu killen und nen symlink nach /usr/lib zu setzen alleine reichte bei mir nicht.
am ende hab ich es so gemacht:
Code:
<i>
</i>cd /
wget http://us.mirror.archlinuxarm.org/arm/core/glibc-2.16.0-5-arm.pkg.tar.xz
tar xvf glibc-2.16.0-5-arm.pkg.tar.xz
busybox sh
cd /
cp -a lib /usr/
rm -rf /lib
ln -s usr/lib /lib
wir haben den alten kram aus /lib jetzt mit nach /usr/lib kopiert, damit bleibt pacman weiter lauffähig.
dann ausserhalb der busybox:
Code:
<i>
</i>pacman -S --force glibc
danach ließ sich dann geschmeidig pacman mit pacman updaten.
nach dem pacman update ging dann allerdings pacman (überraschung) nicht mehr:
Code:
<i>
</i>pacman error: libssh2.so.1 : undefined symbol : EPV_aes_128...
tjahaa dann hats nochma ne weile gedauert...
und dann hab ich gecheckt, dass es wohl an openssl liegt...
also folgendes gemacht:
Code:
<i>
</i>wget http://us.mirror.archlinuxarm.org/arm/core/libssh2-1.4.3-1-arm.pkg.tar.xz
wget http://us.mirror.archlinuxarm.org/arm/core/libarchive-3.0.4-2-arm.pkg.tar.xz
wget http://us.mirror.archlinuxarm.org/arm/core/openssl-1.0.1.c-1-arm.pkg.tar.xz
tar xvf libssh2...tar.xz
tar xvf libarchive....tar.xz
tar xvf openssl...tar.xz
dann war alles gut
