GNU/Linux >> Linux Esercitazione >  >> Cent OS

rpm:errore durante il caricamento delle librerie condivise:intestazione ELF non valida

Il problema

I comandi rpm generano il seguente errore:

rpm: error while loading shared libraries: /usr/lib64/liblzma.so.0: invalid ELF header

La soluzione

In questo caso, liblzma.so o il collegamento ad esso (/usr/lib64/liblzma.so.0) sono stati sovrascritti.

$ rpm -qa | grep binutils
rpm: error while loading shared libraries: /usr/lib64/liblzma.so.0: invalid ELF header

Per risolvere questo problema, è necessario ripristinare il file liblzma.so e il collegamento software associato. Segui i passaggi descritti di seguito per ripristinare il file .so e i collegamenti software associati.

1. Assicurati che il softlink /usr/lib64/liblzma.so.0 esiste e punta a liblzma.so.0.0.0 .

# ls -l /usr/lib64/liblzma.so.0
lrwxrwxrwx 1 root root 16 Mar 31 15:42 /usr/lib64/liblzma.so.0 -> liblzma.so.0.0.0
# file /usr/lib64/liblzma.so.0.0.0
./usr/lib64/liblzma.so.0.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped

2. Se il softlink non esiste, provare quanto segue:

– Prova a usare yum per reinstallare xz-libs. Tuttavia, se rpm ha un problema, probabilmente lo farà anche yum.

# yum reinstall xz-libs

3. Se ciò non funziona, decomprimere rpm e copiare il nuovo file di libreria condivisa sul file non valido. Poiché rpm ha problemi, è probabile che la decompressione di rpm debba essere eseguita su un sistema diverso.

– Scarica il rpm xz-libx appropriato dal repository di origine e usa i comandi rpm2cpio e cpio per decomprimere il rpm.

# rpm2cpio xz-libs-4.999.9-0.5.beta.20091007git.el6.x86_64.rpm | cpio -idv
./usr/lib64/liblzma.so.0
./usr/lib64/liblzma.so.0.0.0
./usr/share/doc/xz-libs-4.999.9
./usr/share/doc/xz-libs-4.999.9/COPYING.GPLv2
./usr/share/doc/xz-libs-4.999.9/COPYING.GPLv3
./usr/share/doc/xz-libs-4.999.9/COPYING.LGPLv2.1
421 blocks

4. Copiare liblzma.so.0.0.0 da rpm decompresso sul file della libreria condivisa esistente:

# cp -pv ./usr/lib64/liblzma.so.0.0.0 /usr/lib64/liblzma.so.0.0.0
cp: overwrite '/usr/lib64/liblzma.so.0.0.0'? y
'./usr/lib64/liblzma.so.0.0.0' -> '/usr/lib64/liblzma.so.0.0.0'
# file /usr/lib64/liblzma.so.0.0.0
/usr/lib64/liblzma.so.0.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped

5. Verifica che rpm funzioni come previsto.

# rpm -qf /usr/lib64/liblzma.so.0.0.0
xz-libs-4.999.9-0.5.beta.20091007git.el6.x86_64


Cent OS
  1. Come correggere l'errore di installazione di Python durante il caricamento delle librerie condivise:libssl.so.1.0.0? [Risolto]

  2. Upstream ha inviato un'intestazione troppo grande durante la lettura dell'intestazione della risposta dall'upstream:errore NGINX

  3. Come correggere "errore durante il caricamento delle librerie condivise:libgtk-x11-2.0.so.0"

  4. "errore durante il caricamento delle librerie condivise:libjli.so:impossibile aprire il file oggetto condiviso:nessun file o directory del genere" Errore 'java -version' all'avvio

  5. errore durante il caricamento delle librerie condivise:libncurses.so.5:

Come risolvere l'errore "pacman:errore durante il caricamento delle librerie condivise" in Arch Linux

“Stato VDO:spazio insufficiente” – Errore durante la creazione di un disco VDO

Errore Linux durante il caricamento delle librerie condivise:impossibile aprire il file oggetto condiviso:file o directory non presenti

Errore durante il caricamento della libreria condivisa (glew)

conda.exe:errore durante il caricamento delle librerie condivise:libz.so.1

ssh:errore durante il caricamento della chiave ./id_rsa:formato non valido