Sincronizzazione del panico del kernel: VFS: impossibile montare root fs su unknown-block (179,6) che esegue Raspbian su NOOBS


26

All'avvio, la sequenza si arresta nel modo seguente:

Sincronizzazione antipanico del kernel: VFS: impossibile montare root fs su unknown-block (179,6)

Cosa posso fare per riavviare Raspberry Pi 2 utilizzando l'installazione Raspbian esistente , poiché contiene molti file e configurazioni che potrebbero essere troppo dolorosi da ricreare?

NOTA: questo , questo e questo sono correlati ma diversi.

Risposte:


28

Si noti che esiste una chiara distinzione tra errori, basata sui numeri alla fine e non entrerò in molti dettagli in quanto possono essere facilmente scoperti online se necessario. Queste correzioni presuppongono che tutte le connessioni necessarie funzionino (alimentazione, scheda SD, HDMI, tastiera cablata , mouse) e che utilizzino Raspbian insieme a NOOBS.

I dettagli per l'errore che termina con 2 è alla fine della risposta. Se il tuo messaggio di errore termina con 6 , in questo modo:

Sincronizzazione antipanico del kernel: VFS: impossibile montare root fs su unknown-block (179, 6 )

dovrai fare un controllo e riparare un filesystem:

  1. Avvia Raspberry tenendo premuto il Shifttasto.
  2. Una volta caricato NOOBS, premere Alt-F2per accedere alla riga di comando di ripristino.
  3. Accedi con nome utente roote password raspberry.
  4. Tipo sudo fsck.ext4 -y /dev/mmcblk0p6. Questo eseguirà la scansione e tenterà di riparare il file system danneggiato (sostituire ext4 con il tipo di partizione se necessario). Si noti che la automodalità di fsck(ovvero solo digitando fsckinvece di fsck.ext4) non è supportata.
  5. Digitare sudo shutdown -h nowper arrestare Raspberry in modo pulito.
  6. Scollegare il cavo di alimentazione e ricollegarlo. Il Raspberry ora dovrebbe avviarsi correttamente.

Se il tuo messaggio di errore termina con 2 , in questo modo:

Sincronizzazione antipanico del kernel: VFS: impossibile montare root fs su unknown-block (179, 2 )

è probabile che il problema sia causato da un bug di aggiornamento. La correzione comporta la conversione di 2 in 6 :

  1. Avvia Raspberry tenendo premuto il Shifttasto.
  2. Fai clic sul Edit config (e)pulsante o premi e.
  3. Fai clic sulla cmdline.txtscheda o premi il tasto right arrowsulla tastiera.
  4. Sostituire:

root = / dev / mmcblk0p 2

con

root = / dev / mmcblk0p 6

  1. Fare clic OKe quindi premere escapesulla tastiera per procedere con la sequenza di avvio.

Il tuo Pi ora dovrebbe avviarsi bene. Se viene visualizzato lo stesso errore, ma con 6 procedere con i passaggi precedenti.


In alcuni casi, il Pi potrebbe ignorare la modifica apportata nella GUI di NOOBS e vedresti comunque lo stesso errore esatto, con 2alla fine all'avvio. In questo caso, la risposta di tktbjp potrebbe aiutare:

In realtà è semplice utilizzare la modalità di recupero. Sono entrato in modalità di recupero e ho premuto alt-F2 per accedere come root. La modifica di cmdline.txt dalla GUI non funziona.

Dopo aver effettuato l'accesso come root con password raspberry, controllare se esiste una directory / boot. Molto probabilmente non sarà presente. In caso contrario, crearlo utilizzando mkdir / boot Quindi utilizzare l'editor vi per creare cmdline.txt.

#cd /boot

#vi cmdline.txt

nell'editor vi modificare la radice in mmcblk0p6. Il mio contenuto di cmdline.txt sembradwc_otg.lpm_enable=0 console=ttyAM0,115200 console=tty1 root=/dev/mmcblk0p6 rootfstype=ext4 elevator=deadline rootwait

salva il file. quindi è importante eseguire la sincronizzazione.

#sync

Quindi avviare la scheda. Controllo incrociato utilizzando la GUI se cmdline è davvero cambiato. Il mio PI B + funziona ora


1
invece di premere 'y' o Invio manualmente, potresti usare l'opzione '-y' di fsck ...
Andrey Sapegin

1
Ottimo consiglio, grazie per l'aiuto. Tuttavia, per me non ha funzionato con il comando sudo. Il sistema non è riuscito a trovarlo. Ma andava bene senza di essa!
Roker Pivic,

3
Inizia lampone tenendo premuto il tasto MAIUSC ? Suppongo che intendi una tastiera fisica, perché una tastiera wireless non funzionerà in questo modo all'avvio
IgorGanapolsky,

1
@IgorGanapolsky Non ho mai usato una tastiera wireless con il mio Pi, quindi non ero a conoscenza di questo problema. Ho aggiornato la risposta, grazie.
Vlad Schnakovszki,

1
Ora ho risolto il mio problema - non aveva nulla a che fare con le risposte discusse qui. Non sono riuscito a capire come impostare l'immagine del disco. Poiché non riesco più a pubblicare qui la mia risposta, l'ho pubblicata come una nuova domanda e risposta qui .
Bill

5

Ho avuto lo stesso problema ma con unknown-block (179.7) e la prima soluzione ha funzionato bene, sostituendo solo questo:

sudo fsck.ext4 -y /dev/mmcblk0p6

con questo:

sudo fsck.ext4 -y /dev/mmcblk0p7

Non sono un esperto, ma spero che questo possa aiutare gli altri.


1
Il comando fsck.ext4 è disponibile su Mac?
IgorGanapolsky,

No, sfortunatamente non lo è.
David Artmann,

4

Per gestire il nocciolo del problema (non una soluzione alternativa), se non riesci ad avviare (o non hai "NOOBS"), devi:

  • rimuovi la scheda SD dal tuo Pi e inseriscila in un lettore di schede nel tuo computer linux.
  • se montato automaticamente, smontare entrambe le partizioni. Verificare il nome corretto del dispositivo con fdisk -le mount -l. Nel mio esempio, è montato come /dev/sdb1e /dev/sdb2. Quindi, per smontare, usare umount /dev/sdb1e umount /dev/sdb2. ( ATTENZIONE A CONTROLLARE IL NUMERO DI PARTITION. "2" qui è solo il MIO esempio).
  • Ora sei pronto per procedere al controllo con correzioni.
    • Con fdisk -lidentifica la partizione DOS e selezionala / correggi con fsck.fat -y /dev/sdb1( Controlla il tuo numero corretto )
    • Inoltre, fdisk -lmostra il ext4numero di partizione. Risolvilo con fsck.ext4 -y /dev/sdb2( Controlla il tuo numero corretto )
  • Se si monta di nuovo automaticamente, umountentrambi di nuovo. In caso contrario, sei pronto per rimuovere dal tuo computer a Raspberry Pi e accenderlo.

Se è solo un problema di "blocco", probabilmente sarà attivo e funzionante. Se Kernel Paniccontinua, controlla se il messaggio di errore è cambiato in qualcos'altro. In questo caso, dovresti cercare di nuovo altre risposte, o forse considerare di riscrivere la tua scheda SD da zero.


3

Ho finito con questo errore dopo aver provato a installare Raspbian (Lite) su una scheda SD che era troppo piccola. Naturalmente, se avessi effettivamente guardato l'output del processo dd, l'avrei visto prima di mettere ciecamente la carta nel mio Pi:

$ dd bs=1m if=Downloads/2016-05-27-raspbian-jessie-lite.img of=/dev/rdisk3
Password:
dd: /dev/rdisk3: short write on character device
dd: /dev/rdisk3: Input/output error
969+0 records in
968+1 records out
1015808000 bytes transferred in 45.492548 secs (22329108 bytes/sec)

Ho finito per installare Minibian .


2

Questo errore termina con 2 quando si duplica una carta buona conosciuta. Fondamentalmente quello che ho fatto è stato copiare i byte dalla scheda originale a una nuova / nuova scheda SD con dd. Non mi aspettavo errori da questo semplice processo, quindi immagina la mia sorpresa quando mi sono trovato di fronte a questo messaggio:

Sincronizzazione antipanico del kernel: VFS: impossibile montare root fs su unknown-block (179, 2 )

Dopo la ricerca si è scoperto che la nuova scheda SD era leggermente più piccola dell'originale.

Per questo motivo, il montaggio della partizione di root non è riuscito. E questo a sua volta ha portato al famigerato messaggio di panico del kernel. Immagino che il kernel abbia provato a raggiungere i blocchi oltre la fine della scheda SD, o abbia scoperto che la partizione (essendo l'ultima in ordine) non si adatta completamente alla scheda SD.

Dato che volevo davvero mantenere i miei file e le mie impostazioni, ho ridotto il file system di root. Ciò comporta l'esecuzione resize2fsprima, quindi fdiskper regolare la partizione. Tenere presente che uno strumento riporta la dimensione in blocchi 4k, l'altro funziona con offset di avvio / arresto del settore a 512 byte. È davvero facile sbagliare. Quindi mantenere i backup di buone immagini conosciute.

Probabilmente è meglio farlo su un altro PC o laptop con lettore di schede. Non sul lampone stesso.

Inutile dire che dovresti avere abbastanza spazio nel filesystem per essere effettivamente in grado di ridurlo ...


1

Nel mio caso ho dovuto clonare SD in un'altra SD perché l'originale era corrotto in quel settore.

Per clonare in Windows è possibile utilizzare questo strumento: Win32 Disk Imager .

Per ridurre l'immagine sd, se la nuova sd è più piccola di quella originale, puoi usare questo script in una vm di Linux in cui hai condiviso l'immagine sd: PiShrink .

Infine, se vuoi vedere l'intera procedura in questo video .

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.