Home > Debian, Gnome, Installazione, Linux, Pacchetti, Sistema, Ubuntu > Rimuovere i kernel duplicati

Rimuovere i kernel duplicati

07 marzo 2010

Grub con vari kernelIl titolo può sembrare fuorviante ma è così che spesso viene erroneamente indicata la presenza di numerose voci sul menu di GRUB. In particolare sono presenti tante voci Ubuntu, Linux 2.6.xx-xx, ognuna delle quale identifica un kernel installato nel sistema ma ogni coppia di voci ha un numero di versione differente.

Vediamo come ridurre il numero di voci presenti sul menu di avvio, semplicemente disinstallando i kernel non necessari.

Una premessa è doverosa: almeno un kernel è obbligatorio che resti altrimenti Ubuntu non si avvierà più, quindi prestare particolare attenzione a non rimuoverli tutti.

Inoltre se si è appena installata una nuova versione del kernel attendere un paio di giorni prima di rimuovere la precedente, il nuovo kernel potrebbe dare problemi che il vecchio non presentava.

Nell’esempio mostrato nella figura sopra sono presenti:

  • Ubuntu, Linux 2.6.31-20-generic
  • Ubuntu, Linux 2.6.31-20-generic (recovery mode)
  • Ubuntu, Linux 2.6.31-19-generic
  • Ubuntu, Linux 2.6.31-19-generic (recovery mode)
  • Ubuntu, Linux 2.6.31-17-generic
  • Ubuntu, Linux 2.6.31-17-generic (recovery mode)
  • Memory test (memtest86+)
  • Memory test (memtest86+, serial console 115200)

Ogni versione del kernel va a coppia con la sua modalità di ripristino (recovery mode), procederemo allora alla rimozione dei kernel 2.6.31-19-generic e 2.6.31-17-generic. Manterremo invece il più recente 2.6.31-20-generic.

Gestore pacchetti

Per far ciò è sufficiente aprire il Gestore dei pacchetti dal menu Sistema – Amministrazione.

Rimuovi completamente kernel

Una volta avviato, nel numero dei tanti pacchetti presenti sarà necessario cercare i pacchetti linux-image-2.6.31-17-generic e linux-image-2.6.31-19-generic, fare tasto destro sopra d’essi e scegliere Rimuovi completamente.

Scegliere ovviamente le versioni che si desidera eliminare tra quelle identificate dall’icona di installato (col tema predefinito è il quadrato verde).

Nota bene: non usare la casella di ricerca rapida in alto, non funziona come ci si può aspettare, usare invece il pulsante Cerca in alto a destra oppure scorrere la lista fino a raggiungere i pacchetti indicati.

Completare la disinstallazione cliccando su Applica e confermare tutte le richieste, al termine verrà chiesto di riavviare il sistema.

Al riavvio il menu apparirà in questo modo:

Menu Grub ripulito dai kernel vecchi

Consiglio di diffidare dalle guide che invitano a modificare i files di grub in quanto i kernel vecchi restano comunque presenti su disco occupando spazio inutile e al primo aggiornamento torneranno automaticamente al loro posto nel menu di GRUB.

  1. paciugOne
    15 aprile 2010 alle 17:29

    Circa la domanda sul GRUB non so rispondere con certezza ma mi pare di ricordare di si. Non ricordo però che risposta io abbia dato.
    Circa il comando update grub ecco cosa mi ha restituito:

    Searching for grub installation directory … found: /boot/grub
    Searching for default file … found: /boot/grub/default
    Testing for an existing GRUB menu.lst file … found: /boot/grub/menu.lst
    Searching for splash image … none found, skipping …
    Found kernel: /boot/vmlinuz-2.6.31-20-generic
    Found kernel: /boot/vmlinuz-2.6.31-19-generic
    Found kernel: /boot/vmlinuz-2.6.31-17-generic
    Found GRUB 2: /boot/grub/core.img
    Found kernel: /boot/memtest86+.bin
    Updating /boot/grub/menu.lst … done

    in realtà io non ce l’ho mai avuto il GRUB2, bensì solo la versione 1.9.7 (o simile ma di sicuro non la 2)

    • 15 aprile 2010 alle 18:06

      grub 1.9.7 è grub2, tranquillo.
      per risolvere il problema del file che non si aggiorna più puoi fare così:
      1- rinomina il file di grub in un altro modo con
      sudo mv /boot/grub/grub.cfg /boot/grub/grub.copia

      2- riesegui sudo update-grub e ti informerà che grub.cfg non esiste e che lo ricreerà. se dovesse chiedertelo ovviamente rispondi di ricrearlo.
      verifica ovviamente che riporti lo stesso output che hai incollato sopra (i vari found kernel).

      fatto ciò non riavviare ma apri grub.cfg con gedit /boot/grub/grub.cfg
      verifica che il file ci sia e sia pieno con le sue varie cose.
      se il file c’è, è pieno e contiene i riferimenti ai kernel riavvia e dovrebbe essere tutto sistemato.

      • paciugOne
        15 aprile 2010 alle 18:17

        Ho fatto come mi hai detto, ma pare che se ne freghi proprio del fatto che non c’è più il file grub.cgf.
        In effetti quando do update-grub non mi avverte che manca e non mi chiede di ricrearlo, semplicemente mi restituisce lo stesso output che ho già riportato sopra (è identico, quindi non lo riporto).
        Sembra che a lui interessi solo che ci sia il file menu.lst e quello lo trova.
        Vuoi che provi a rinominare menu.lst per vedere se mi chiede di ricrearlo “nuovo”?

        Finora non ti avevo ancora ringraziato, quindi … grazie

      • 15 aprile 2010 alle 19:20

        un attimo, mi e` gia` capitato un caso simile con un altro utente.

        dpkg -l grub*
        grub-install -v
        cosa ti riportano?

  2. paciugOne
    16 aprile 2010 alle 12:41

    Mufloneeeeeee … AIUTOOOOO
    ho riavviato il pc oggi e non va: mi dice che ho a disposizione una minimal BASH-like line editing
    sh:grub>_

    Ora scrivo da un CD live di xubuntu.

    Mi dici come faccio, DAL CD LIVE, ad accedere al disco fisso per rinominare il file grub.prova in grub.cfg?

  3. paciugOne
    16 aprile 2010 alle 13:17

    Ho risolto: ho rinominato grub.prova in grub.lst e tutto è tornato a posto.
    Ora provo con i comandi che mi hai postato ieri sera.

    il comando “dpkg -l grub*” mi restituisce questo:

    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
    |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
    ||/ Nome Versione Descrizione
    +++-==============-==============-============================================
    ii grub 0.97-29ubuntu5 GRand Unified Bootloader
    ii grub-common 1.97~beta4-1ub GRand Unified Bootloader, version 2 (common
    un grub-coreboot (nessuna descrizione disponibile)
    un grub-doc (nessuna descrizione disponibile)
    un grub-efi (nessuna descrizione disponibile)
    un grub-efi-amd64 (nessuna descrizione disponibile)
    un grub-efi-ia32 (nessuna descrizione disponibile)
    un grub-emu (nessuna descrizione disponibile)
    un grub-ieee1275 (nessuna descrizione disponibile)
    un grub-legacy (nessuna descrizione disponibile)
    un grub-legacy-do (nessuna descrizione disponibile)
    un grub-linuxbios (nessuna descrizione disponibile)
    rc grub-pc 1.97~beta4-1ub GRand Unified Bootloader, version 2 (PC/BIOS
    un grub2 (nessuna descrizione disponibile)

    ed ecco cosa restituisce il comando “grub-install -v”

    grub-install (GNU GRUB 0.97)

    nient’altro

    • 16 aprile 2010 alle 13:33

      esattamente ciò che pensavo.
      stai usando grub2 sull’mbr ma hai installato su linux grub1.
      ecco perché quando aggiorni il menu di grub non succede niente, quello aggiorna il menu di grub1.

      disinstalla il pacchetto grub e senza riavviare installa il pacchetto grub-pc.
      al termine aggiorna il menu di grub con sudo update-grub

      • paciugOne
        16 aprile 2010 alle 13:49

        fatto:
        disinstallato (completamente) grub; installato grub-pc;
        sudo update-grub
        ecco l’output di update-grub:

        Generating grub.cfg …
        Found linux image: /boot/vmlinuz-2.6.31-20-generic
        Found initrd image: /boot/initrd.img-2.6.31-20-generic
        Found linux image: /boot/vmlinuz-2.6.31-19-generic
        Found initrd image: /boot/initrd.img-2.6.31-19-generic
        Found linux image: /boot/vmlinuz-2.6.31-17-generic
        Found initrd image: /boot/initrd.img-2.6.31-17-generic
        Found memtest86+ image: /boot/memtest86+.bin
        Found Windows Vista (loader) on /dev/sda1
        done

        dato questo output, posso riavviare?
        vado tranquillo?

  4. 16 aprile 2010 alle 14:01

    direi di si

  5. paciugOne
    16 aprile 2010 alle 15:13

    Ho riavviato ed era tutto a posto: il kernel 21 sparito e il 20 impostato come prima opzione di avvio.
    Tutto bene dunque.

    Resterebbe da capire (capire è una droga) come possa essere accaduto che nel MBR ci sia la versione 2 del grub mentre quella che lavora davvero è la vers. 1.

    grazie Muflone!

    • 16 aprile 2010 alle 15:20

      per me l’unica è che hai disinstallato grub2 e installato grub1, forse dietro consiglio di qualcuno o incoscientemente.

      ubuntu 9.10 viene di serie con grub2 mentre è privo di grub1.

      ciao

  6. Anonimo
    16 maggio 2010 alle 17:59

    grazie

  7. 05 gennaio 2011 alle 0:46

    io più che kernel duplicati li chiamerei vecchi, perché in realtà sono vecchie versioni e non duplicati della stessa versione, o sbaglio…??

    • 05 gennaio 2011 alle 9:33

      no, non sbagli ma la premessa spiega il motivo del titolo

  8. matrix866
    27 gennaio 2011 alle 12:05

    Ottimo. La miglior guida!

  9. rollobix
    04 marzo 2011 alle 23:58

    Grande! Era così semplice! E io che continuavo a cercare programmi per modificare le voci di Grub… Grazie!

Comment pages
I commenti sono chiusi.
%d blogger cliccano Mi Piace per questo: