Magazine Informatica

Unable to determine major/minor number of root device

Creato il 27 giugno 2011 da M0rf3us @alex_morfeus

Stamani ho sostituito il mio pc dell’ufficio con uno avente un processore più potente, per non dover reinstallare tutto ho fatto lo switch dei dischi rigidi pensando fosse la via più semplice, solo che rimontato tutto, accendo il pc nuovo fiammante e dopo pochi secondi mi ritrovo grub incazzato coem una biscia ed un desolante prompt (inutilizzabile visto che i driver usb non erano stati caricati, e la tastiera era quindi isolata) di initrd.

Unable to determine major/minor number of root device

Il messaggio che avevo a schermo era:

Unable to determine major/minor number of root device /dev/disk/by-uuid/”UUID_della_partizione_root”

Li per li stavo per scaricare un sonoro bestemmione ma non mi sono perso d’animo ed ho fatto qualche ricerca sull’internet di quel messaggio di errore (col telefono, lol), ed ho trovato che è un messaggio di errore che può capitare quando si aggiorna il kernel, solo che io non ho aggiornato il kernel, ma qualcosa di un pò più grosso, tipo l’intera macchina…

In ogni caso ho deciso di seguire il consiglio e di ricostruire l’immagine del kernel, grazie ad Arch questo mi si è rivelato molto facile in quanto l’immagine di fallback del kernel invece riusciva ad essere avviata, usando quella quindi ho ottenuto una sessione funzionante dalla quale, tramite shell, ho eseguito questi comandi:

 

1
2
3
4
5
:~$ su -
 
:~# cd /boot
 
:/boot# mkinitcpio -p kernel26

 

Arch si è messa a pastruzzare la partizione di boot ricreando l’immagine del kernel e automagicamente al reboot tutto è tornato a funzionare. Se non usate Arch molto probabilmente non avrete una immagine di fallback del vostro kernel e quindi per risolvere questo problema dovrete usare una distribuzione live e poi creare un ambiente chroot dal quale lanciare lo stesso comando, per creare l’ambiente usate uno dei vari tool di analisi delle partizioni (gparted?) per vedere come vengono riconosciute quelle del vostro disco interno e fate cosi:

 

1
2
3
4
5
6
7
8
9
10
11
:~# mkdir disk disk/boot disk/dev disk/proc
 
:~# mount /dev/sda1 disk/boot
 
:~# mount /dev/sda2 disk/
 
:~# mount --bind dev disk/dev
 
:~# mount -t proc none disk/proc
 
:~# chroot disk /bin/bash

 

e poi lanciate mkinicpio, chiaramente sostituite “sda1″ con il nome della partizione riconosciuta sul vostro sistema.

NB: Questi comandi sono validi se come me avete partizione root e boot separate, se cosi non fosse dovrete solo montare “sda1″ dentro “disk”, sostituite quindi il secondo e terzo comando con questo

1
:~# mount /dev/sda1 disk

e togliete “disk/boot” dal comando “mkdir”.

Buon ripristino :)


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :

Dossier Paperblog