Archlinux: /lib diventa un link simbolico

Ogni buon archere che si rispetti è iscritto alla newsletter di Archlinux o almeno segue via RSS le news del sito. Infatti più di una volta le email della newsletter mia hanno parato il cubo da aggiornamenti disastrosi.

Non è raro infatti che sua Arch arrivino cambiamenti anche radicali del sistema e le news che si trovano sul sito o nelle email sono oro colato che ci assicurano il quieto vivere sulla nostra Archlinux.

Proprio l’altro giorno ricevo una nuova email della newsletter di archlinux che mi informa che /lib è diventato un link simbolico di /usr/lib. Tutto bello quindi i passi da fare erano elencati nella email:

sudo pacman -Syu --ignore glibc
sudo pacman -Su

Sul mio pc fisso principale è andato tutto liscio come l’olio e l’update è proseguito senza intoppi ma sul mio netbook glibc mi dava ancora problemi ovvero quando davo pacman -Su mi sputava fuori un simpatico errore:

glibc: errore /lib è già presente nel filesystem


O che bellezza, o che gauidio o AKAJGAJGAGKJA.

Tornando calmo leggo il resto della email che mi indica una guida che in teoria dovrebbe risolvermi il problema, io la seguo ma non cavo un ragno dal buco perché glibc mi sputa fuori ancora quell’errore. Cosi disperato e in lacrime arrivo su Google ed egli mi mostra la luce!

In pratica in questo post sul forum di archlinux inglese (commento 65) un utente ha risolto questo problema rimuovendo la directory chiamata modules presente dentro /lib. Cosi in due microsecondi creo un dir di backup sulla mia home e una copia&incolla dopo (o se preferite un mv /lib/modules /home/picchio/backups dopo) riprovo a dare pacman -Su e per magia tutto fila liscio!

Dunque questa magari non era la soluzione ufficiale (del resto la guida diceva che i pacchetti dovevano essere reinstallati in modo da non comprendere /lib…ma si e come si fa?!) ma nel mio caso ha funzionato e dopo un reboot la mia Archlinux continua a girare felicemente anche sul mio netbook.

:# /dev/null/

27 pensieri riguardo “Archlinux: /lib diventa un link simbolico”

    1. Mi spiace che per te non abbia funzionato, io ero pronto ad aprire un post sul forum italiano di arch, prima di trovare questa soluzione, magari li sanno come risolvere.

  1. Ma non hai nemmeno provato a reinstallare i pacchetti che davano problemi?
    Io ho aggiornato senza problemi su fisso e netbook, il notebook invece mi dava errori. Usando il comando segnalato nell’issue 2 del wiki ed eliminando le varie voci relative a glibc ho visto che i problemi erano dati nel mio caso da nvidia-bumblebee e bbswitch. Mi è bastato reinstallarli, completare di nuovo l’aggiornamento e tutto è filato liscio.

    1. Nel mio caso l’unico pacchetto che mi dava problemi era proprio glibc, anche io sul fisso non ho avuto problemi ma sul netbook come puoi leggere mi si è presentato il problema, anche tentando di reinstallare il pacchetto glibc come indicato nella issuse 1 e 2 (anche eliminando le voci relativa che non erano altri che file inerenti a glibc su /lib).

  2. È andato a puttane il mio fisso.
    Sul netbook tutto ok, sul fisso mi fa il tuo stesso errore
    Ho spostato modules ma niente
    la cosa buffa è che l’aggiornamento è rimasto a metà, o meglio la parte pacman -Su non è andata, quindi al riavvio ora X non parte. E non so come risolvere.
    Ho seguito la guida della wiki ma rimuovendo hal non funziona.

      1. beh aspetta ma il mio sistema si avvia. L’unica cosa è che non parte X e mi lascia al login.

        ora provo a fare questa cosa e ti dico

      2. bene! allora ho seguito la guida, scaricato glibc con pacman -U ecc
        dopodiché dato un bel pacman -Su –ignore glibc
        e ora quando riavvio va pure X, quindi ti scrivo dal sistema in questione.

        Il fatto assurdo è che ora do un normale “Pacman -Su”
        e mi restituisce questo:
        Unico pacchetto da installare: glibc-2.16.0-2
        e poi
        errore: impossibile eseguire l’operazione richiesta (file in conflitto)
        glibc: /lib è già presente nel filesystem

        facendo pacman -Qs glibc dice che ho il pacchetto glibc-2.16.0-1

        Quindi, non saprei come fare ora.
        (almeno però funziona, ma se avvio alcune applicazioni non le fa partire, tipo skype)

  3. Oooooh fottutamente risolto.
    Allora, seguendo la guida della pagina di wiki https://wiki.archlinux.org/index.php/DeveloperWiki:usrlib
    io avevo a che fare con gli ultimi stronzi Unpackaged files
    la guida dice di dare il seguente commando per vedere quali sono i files che non appartengono a glibc ma sono ancora in /lib
    $ find /lib -exec pacman -Qo — {} +
    così mi resi conto che tutti i files della cartella modules non appartenevano a glibc, e addirittura sembra che siano orfani.
    quindi ho fatto come te: mv lib/modules /home/ecc/ecc
    e poi ho dato un bel
    pacman -Su

    ora va 😉

    Domanda, che ci faccio ora con quella cartella modules? la butto via no?

  4. @ Santiago
    Il fatto che tu abbia ancora installato glibc 2.16.0-1 e non la versione successiva è normale dato che la guida di lffl ti fa scaricare quel pacchetto. In pratica ora hai ripristinato la situazione così com’era prima dell’aggiornamento andato male. Si tratta quindi di dare questo comando:
    grep ‘^lib/’ /var/lib/pacman/local/*/files
    per capire se ci sono pacchetti, oltre a glibc che hanno lasciato qualcosa in /lib e che bloccano l’aggiornamento, reinstallarli o rimuoverli e quindi dare di nuovo
    pacman -Su
    per aggiornare il sistema, compreso glibc. 😉

    1. Praticamente c’è scritto ovunque di non usare l’opzione force durante gli update e tu che fai la usi ? Allora te le cerchi xD Vabbè che è un sistema secondario ma se ti leggevi una o due guide risolvevi senza rompere il sistema questo non è un comportamento da archere.

      1. La cosa che mi lascia perplesso è che in teoria l’opzione -f non avrebbe dovuto funzionare. Alla fine del 2011 i dev di arch/pacman hanno deciso di rimuovere questa opzione e di renderla disponibile solo nella forma estesa di –force proprio perchè è un operazione sconsigliata (salvo casi rarissimi) e speravano che così facendo avrebbero invogliato gli utenti a pensarci due volte prima di usarla.

  5. Tenete presente che ho lasciato spenta questa macchina con Arch, e quando sono andato a fare il mega-aggiornamento ho avuto un problema del genere, e cercando sui forum e sulla guida Arch questo -f sembrava la soluzione più in voga, e infatti quella volta tutto andò a posto. Memore di questa esperienza, non sono andato a cercare in lungo e in largo e ho ripetuto l’azione. Poi puoi leggere le guide quanto ti pare, ma tu stesso dici “Dunque questa magari non era la soluzione ufficiale (del resto la guida diceva che i pacchetti dovevano essere reinstallati in modo da non comprendere /lib…ma si e come si fa?!)”, alla fine per un motivo o per un altro spunta sempre fuori un sistema che si comporta in maniera diversa dagli altri…

    1. Si ok ma io prima di fare quello che ho fatto mi sono andato a sfogliare il wiki e il forum tu hai fatto tutto ad occhi chiusi solo perché i comando -force ha funzionato una volta tempo. Dire che non è molto responsabile ma ovviamente ognuno può gestire ed usare la propria macchina come meglio crede.

Lascia un commento