Come posso riparare un sistema con un kernel cancellato?


10

Perché volevo ottenere più spazio libero sul mio HDD, ho cancellato i vecchi kernel (non chiedermi perché ero così arrabbiato). Ho accidentalmente eliminato anche il kernel attivo (3.2.0-27 su Ubuntu 12.04).

Per prima cosa non ho potuto avviare. Ho installato i kernel 3.2.0-23 e 3.2.0-27 tramite un sistema live (vedi qui ).

Ora, quando avvio il mio sistema ora, ottengo solo queste linee:

mountall: Event failed
fsck from util-linux 2.20.1
/dev/sda1: clean, 832254/40099840 files, 21092083/160394239 blocks
 * Stopping Flush boot log to disk
 * Stopping Enabling additional executable binary formats
 * Starting bluetooth daemon

Altre specifiche del PC:

  • Intel i5 2500K 4x 3,3 GHz
  • 8 GB di RAM
  • / dev / sda1 è Ubuntu, circa 1400 GB
  • Zotac Nvidia GTX 560
  • ASRock Z68 Pro3

Grazie in anticipo!

EDIT: Qui puoi trovare alcuni file di log da / var / log: kern.log boot.log


Fornisci i log da /var/log/messages. Se non riesci ad accedere, puoi ottenerli durante l'avvio tramite live CD.
Andrejs Cainikovs,

dmesg | pastebinitper favore
ish

Inizialmente avevo pensato che il problema qui fosse che il kernel non era stato reinstallato correttamente. Ma non sono convinto che ciò sia vero, e i voti sulla mia risposta (che ha fornito una procedura di reinstallazione più dettagliata) hanno fatto sembrare questa domanda una risposta nell'elenco delle domande. Quindi ho rimosso quella risposta e l' ho pubblicata (con le opportune modifiche) nella domanda a cui appartiene meglio . Chiunque ne abbia bisogno può trovarlo lì. Buona fortuna con questo problema!
Eliah Kagan,

Perché non usare CD live, connettersi a Internet e fare gli aggiornamenti del software invece di ricorrere a processi lunghi?
all4naija,

1
L'output pastebin che hai pubblicato sembra provenire dall'avvio del CD live. [ 0.000000] Command line: noprompt cdrom-detect/try-usb=true file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
John S Gruber,

Risposte:


4

Un'opzione è un ripristino manuale:

I file sono la parte più semplice. Puoi fare ciò che Ramchandra ha suggerito, ma se vuoi preservare le tue app, dovresti evitare di reinstallare (come, come hai visto, rimuovere le app.) Se vuoi evitare di disinstallare l'avvio con un kernel mancante:

  1. Avvia su LiveCD.

  2. Usando nautilus, apri la partizione rotta.

  3. Vai a / home / myusernamehere. Tutti i tuoi file saranno lì.

Alcuni altri file che potresti voler salvare:

  • /etc/apt/sources.list, se si dispone di repository manuali.

Al termine, incollalo su un'unità flash o invialo tramite email a te stesso.

Le app sono una parte più complicata. Ho trovato una soluzione un po 'rotonda che richiederà del tempo (la maggior parte senza che tu partecipi attivamente), ma questo dovrebbe ripristinare le tue app (senza impostazioni / configurazioni)

  1. Attenersi a LiveCD.

  2. Passare a / usr / lib. (Il caricamento potrebbe richiedere del tempo.)

  3. Woah! Enorme quantità di cartelle. Apri gedit in liveCD.

  4. Digita questo in gedit:

    #!/bin/sh

    sudo apt-get install folder1 folder2 folder3

... Dove cartella1 cartella2 cartella3 sono i nomi delle cartelle.

Questi sono tutti i programmi che hai installato su Ubuntu (penso). Alcuni di questi (circa il 50%, forse di più) vengono con il sistema, quindi non è necessario , ma una scommessa sicura è solo mettere tutto.

Un altro posto in cui cercare app è / etc e / etc / alternatives. (Aggiornami se mi manca qualche punto, internet!)

Salvare il file come .sh ed e-mail o flash drive.

Ora, quando avvii il computer per la prima volta (dopo la reinstallazione totale) puoi eseguire questo script per sudo apt-get tutti i tuoi programmi che avevi in ​​precedenza. Saranno buoni come nuovi!


1
Questa risposta non è corretta in almeno due modi: (1) Non descrive come riparare un sistema ma piuttosto come eseguire il backup, rimuovere e quindi reinstallare il sistema! (2) Anche la parte posteriore / di reinstallazione è sbagliata! Per riferimento: / usr / lib / non contiene un elenco di pacchetti e / etc / alternatives. Se desideri un elenco di pacchetti installati sul tuo sistema, puoi ottenerlo facilmente con: <code> dpkg --get-selections </code> e ripristinarlo con <code> dpkg --set-selection </code> anche se con l'ultima versione di Ubuntu far funzionare la reinstallazione senza dselect può richiedere qualche sforzo.
Benjamin Mako Hill,

5

Avvia da livecd, monta il disco rigido e reinstalla il kernel. Per esempio:

sudo -s
mount /dev/sda1 /mnt
mount --bind /sys /mnt/sys
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
chroot /mnt
apt-get install linux-image-3.2.0-27-generic-pae

Ciao Psusi - Ho eseguito questi comandi ( askubuntu.com/questions/89710/… ) ieri su un piccolo laptop e ho cancellato accidentalmente il mio kernel. Seguendo le tue istruzioni in questo post ho ripristinato il mio sistema in 2 minuti. Se avessi seguito qualsiasi altra istruzione, avrei comunque combattuto per riprendermi. Grazie ancora!
root-11

Posso confermare che queste istruzioni funzionano anche il 14.04
Gianluca Della Vedova

Questo è corretto ma ci sono molte cose degne di nota: (1) Il tuo filesystem di root potrebbe non essere / dev / sda1. (2) La rete non sarà normalmente accessibile dall'interno del chroot se è necessario scaricare il pacchetto con apt-get. (3) Se il tuo filesystem è crittografato, probabilmente non sarà / dev / sda1 ma il nuovo kernel (essendo stato eseguito dal LiveCD) non includerà gli strumenti di crittografia LUKS necessariamente per decifrare il tuo disco durante l'avvio. Risolvere questo è possibile, ma molto più difficile.
Benjamin Mako Hill,

3

Hai provato l'opzione di recupero? Puoi installare Ubuntu su un'installazione esistente di Ubuntu: tutti i tuoi file rimarranno. Tuttavia, se si modificano i file di sistema, tali modifiche verranno cancellate.

Per fare ciò, al programma di installazione selezionare la partizione avanzata e utilizzare la partizione installata di Ubuntu come /.

Non l'ho provato però.


Innanzitutto, grazie per la risposta. La nuova installazione senza formattazione ha aiutato! Ora ho tutti i miei dati dalla mia directory home. Ma: tutte le applicazioni, tutte le impostazioni e tutte le mie configurazioni vanno perse. Inoltre, ci sono molti bug e anomalie con il gestore di finestre e Unity. Ho anche provato una nuova installazione e questo ha funzionato meglio per me.
barra rovesciata il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.