Problema upgrade kernel: mounting /dev/root on /mnt failed

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
gabry
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mar 20 giu 2006, 15:39
Slackware: 12.2
Kernel: 2.32.x
Desktop: KDE

Problema upgrade kernel: mounting /dev/root on /mnt failed

Messaggio da gabry »

Gent.mi,
sto aggiornando il mio attuale kernel 2.6.36 del vecchio Notebook Compaq Presario 3000 al kernel 3.8.5, ma ho il problema in oggetto.
Ho semplicemente preso il mio vecchio config e da li ho ricostruito quello nuovo utilizzando il buon "make oldconfig".
Avviando il nuovo kernel ad un certo punto ho:
mounting /dev/root on /mnt failed: no such file or directory
ERROR: No sbin/init found on rootdev (or not mounted). Trouble ahead.
switch_root: bad newroot /mnt
kernel panic - not syncing: attempted to kill init! exit code=0x00000100
Non riesco a capire proprio cosa sia successo! Eppure non ho cambiato niente.
Il config di partenza è quello del kernel 2.6.36 perfettamente funzionante!! :?
Qualcuno sa indicarmi la via?
Vi ringrazio in anticipo.

Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6628
Iscritto il: gio 3 nov 2005, 14:05
Nome Cognome: Emanuele Tomasi
Slackware: 64-current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da targzeta »

Non capisco come mai la dev/root la vuole montare su /mnt. Che versione di Slackware stai usando, hai fatto anche un upgrade di versione o altro?

Posta il lilo.conf

Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama

gabry
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mar 20 giu 2006, 15:39
Slackware: 12.2
Kernel: 2.32.x
Desktop: KDE

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da gabry »

La mia Slack è la 12.2 (Evviva la tradizione....Voi moderni!!.... :) Non ho fatto alcun upgrade di versione ultimamente. Eccetto il kernel che ho adattato (ricompilato) alle mie esigenze più volte!!!

Ti posto l'estratto del mio lilo:

Codice: Seleziona tutto

# Start LILO global section
boot = /dev/hda

...OMISSISS...

# Linux bootable partition config begins
image="/boot/vmlinuz-3.8.5"
        root="/dev/hda5"
        label="Linux-3.8.5"
        initrd=/boot/initrd-3.8.5.gz
        read-only

image="/boot/vmlinuz-2.6.36.2"
        root="/dev/hda5"
        label="Linux-2.6.36.2"
        read-only
# Linux bootable partition config ends

# Windows bootable partition config begins
other = /dev/hda1
  label = Windows
  table = /dev/hda
# Windows bootable partition config ends

# Linux older bootable partition config begins
image="/boot/vmlinuz-2.6.28"
        root="/dev/hda5"
        label="Linux-2.6.28"
        read-only
# Linux older bootable partition config ends
Grazie per l'aiuto!

Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6628
Iscritto il: gio 3 nov 2005, 14:05
Nome Cognome: Emanuele Tomasi
Slackware: 64-current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da targzeta »

È un problema noto ma non riesco a ricordarmi quando l'ho incontrato. Per caso nel /etc/fstab hai scritto /dev/root invece del vero nome del device? Ci dovrebbe essere qualcosa anche nei file /etc/rc.d/.

Guarda qui, si dice di settare le opzioni CONFIG_INOTIFY e CONFIG_INOTIFY_USER a 'y'.

Emanuele

P.S. Guarda anche il post seguente a quello che ti ho linkato, dove linkano la patch ufficiale per mkinitrd per la Slackware 12.2
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da 414N »

Probabilmente stai anche cozzando col passaggio del naming delle partizioni su disco da /dev/hdX a /dev/sdX.
Fossi in te userei gli UUID delle partizioni sia in lilo.conf sia in fstab.

gabry
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mar 20 giu 2006, 15:39
Slackware: 12.2
Kernel: 2.32.x
Desktop: KDE

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da gabry »

Vi ringrazio x le risposte!appena ho tempo provo i vs. Suggerimenti e vi riporto i risultati.
Grazie ancora.
Gabry

gabry
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mar 20 giu 2006, 15:39
Slackware: 12.2
Kernel: 2.32.x
Desktop: KDE

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da gabry »

Ieri su vostri consigli ho eseguito le seguenti operazioni:
1.installato la patch suggerita del initrd prevista per slackware 12.2

2.ricostruito da capo l'initrd ad hoc x il kernel 3.8.5.

3. Ho ricompilato da capo il kernel

4.ho cambiato su fstab il rootdev con /dev/root / così anche su lilo.

Purtroppo ho sempre il problema identico di cui sopra.
Ho circoscritto il problema attorno ad initrd ma senza successo.
Non riesco a capire chi gli dice che deve montare il /dev/root su /mnt e che sbin/init non esiste!!
Qualche altro suggerimento?
Grazie.

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da 414N »

Il fatto che /sbin/init non venga trovato è consequenziale al fatto che la partizione di root non venga montata correttamente, percui non è un altro problema ;).
Per arrivarci in fondo è meglio che ci aiuti ad aiutarti fornendoci le seguenti informazioni:
  • il contenuto di /etc/fstab
  • la configurazione che hai usato per creare il file initrd per il nuovo kernel
  • il contenuto di /etc/lilo.conf
  • la configurazione delle tua partizioni (fdisk -l o quel che preferisci)
  • l'output del seguente comando:

    Codice: Seleziona tutto

    ls -l /dev/disk/by-uuid
Se li porrai anche in mezzo ai tag code potresti vincere il premio "G00d $L@cky Us3r 2013" ;)

Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6628
Iscritto il: gio 3 nov 2005, 14:05
Nome Cognome: Emanuele Tomasi
Slackware: 64-current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da targzeta »

Ora che ci penso, probabilmente il tentativo di mount fallito è quello che fa initrd prima di effettuare lo switch_root. L'initrd in effetti monta la root directory sotto /mnt. Quindi il problema quasi sicuramente risiede nella configurazione del kernel. Il passaggio da un 2.6 ad un 3.8 non è così banale. Molte impostazioni che riguardano i filesystem sono state spostate. Che poi, se hai un kernel tutto tuo, a che ti serve l'initrd?

Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama

gabry
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mar 20 giu 2006, 15:39
Slackware: 12.2
Kernel: 2.32.x
Desktop: KDE

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da gabry »

Ok veniamo a noi:
1. Contenuto di fstab:

Codice: Seleziona tutto

dev/hda7        swap             swap        	defaults         		0   0
# /dev/hda5        /                reiserfs    	defaults                1   1
/dev/root	/	reiserfs	defaults,noatime          		1   1
/dev/hda6        /home            reiserfs    	defaults,nodev,nosuid         	1   2
/dev/hda1        /mnt/windows     ntfs-3g  force,silent,noauto,user,no_def_opts,allow_other,mask=777,umask=0000,rw,locale=it_IT@euro 		 		  0   0 
/dev/cdrom       /media/cdrom     iso9660       noauto,users,ro  		0   0
/dev/sda         /media/sda       auto        	noauto,user,rw      		0   0 
/dev/sdb         /media/sdb       auto          noauto,user,rw                  0   0
/dev/sdb1        /media/sdb1      auto          noauto,user,rw	                0   0  
/dev/sdc         /media/sdc       auto          noauto,user,rw                  0   0
devpts           /dev/pts         devpts      	gid=5,mode=620   		0   0
proc             /proc            proc        	defaults         		0   0
tmpfs            /dev/shm         tmpfs       	defaults         		0   0
none             /sys             sysfs         defaults                        0   0 
/dev/sr0         /media/dvd-rom-iomega   iso9660      noauto,users,ro        0   0
 
2. Il comando che ho usato per la creazione del initrd per kernel 3.8.5:

Codice: Seleziona tutto

mkinitrd -s /boot/initrd-tree-3.8.5 -o /boot/initrd-3.8.5 -c -r /dev/root -f reiserfs -k 3.8.5 -m reiserfs
3. Il contenuto del lilo è come sopra:

Codice: Seleziona tutto

image="/boot/vmlinuz-3.8.5"
        root="/dev/root"
        label="Linux-3.8.5"
	initrd=/boot/initrd-3.8.5
        read-only

4. output di fdisk -l:

Codice: Seleziona tutto

Disk /dev/hda: 40.0 GB, 40007761920 bytes
255 heads, 63 sectors/track, 4864 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa484a484

Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        2247    18048996    7  HPFS/NTFS
/dev/hda2            2248        4864    21021052+   f  W95 Ext'd (LBA)
/dev/hda5            2248        3459     9730013   83  Linux
/dev/hda6            3459        4797    10750976   83  Linux
/dev/hda7            4798        4864      538146   82  Linux swap
5.Output di "ls -l /dev/disk/by-uuid":

Codice: Seleziona tutto

lrwxrwxrwx 1 root root 10 Apr 27 20:01 5086DDDF7F866A09 -> ../../hda1
lrwxrwxrwx 1 root root 10 Apr 27 20:01 5bbec30e-d90c-4033-9f2b-38867306bdbb -> ../../hda5
lrwxrwxrwx 1 root root 10 Apr 27 20:01 e584c8b2-0470-4348-bfe5-fdde1222126d -> ../../hda6
lrwxrwxrwx 1 root root 10 Apr 27 20:01 e73b7f0b-6b20-4362-b6da-0e4f814621d5 -> ../../hda7
Tuttavia, essendo d'accordo con Emanuele sul fatto che potrebbe essere un problema di kernel ed in particolare del mio config, per completezza vi allego il mio config-3.8.5 generato da make oldconfig a partire dal config-2.6.36.2.
Grazie!!
Visto che ho usato code... Ho vinto qualche cosa? ;)
Allegati
config.txt
config-3.8.5 che uso per la compilazione del kernel
(89.4 KiB) Scaricato 166 volte

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da 414N »

Ecco il bandolo della matassa: hai specificato /dev/root come root partition ovunque, ma nei nuovi kernel quel device (in realtà un banale link simbolico) non viene più creato, ergo il tuo errore all'avvio.
Penso ti convenga procedere nel seguente modo:
  • Converti il tuo fstab in modo che i vari dispositivi siano specificati tramite UUID invece che col nome della partizione: in questo modo, anche se il nuovo kernel rileverà il disco hda come sda (questo è dovuto al passaggio a libata nel kernel che ha unificato i nomi dei dischi pata e sata), il sistema monterà le partizioni giuste nei punti di mount giusti comunque:

    Codice: Seleziona tutto

    #dev/hda7        swap             swap           defaults               0   0
    UUID=e73b7f0b-6b20-4362-b6da-0e4f814621d5        swap             swap           defaults               0   0
    # /dev/hda5        /                reiserfs       defaults                1   1
    UUID=5bbec30e-d90c-4033-9f2b-38867306bdbb   /   reiserfs   defaults,noatime                1   1
    #/dev/hda6        /home            reiserfs       defaults,nodev,nosuid            1   2
    UUID=e584c8b2-0470-4348-bfe5-fdde1222126d      /home            reiserfs       defaults,nodev,nosuid            1   2
    #/dev/hda1        /mnt/windows     ntfs-3g  force,silent,noauto,user,no_def_opts,allow_other,mask=777,umask=0000,rw,locale=it_IT@euro                0   0 
    UUID=5086DDDF7F866A09       /mnt/windows     ntfs-3g  force,silent,noauto,user,no_def_opts,allow_other,mask=777,umask=0000,rw,locale=it_IT@euro                0   0 
    
    Le altre voci le commenterei per il momento. Tra l'altro, a cosa ti servono? Per il mount manuale di chiavette/dischi esterni?
    Puoi provare la correttezza dei sopracitati UUID anche col tuo kernel attuale.
  • Ricrea l'initrd con le stesse opzioni ma specificando /dev/sda5 come root partition oppure /dev/hda5 qualora rifiutasse la partizione precedente.
  • Modifica l'entry root=/dev/root in lilo relativa al nuovo kernel con

    Codice: Seleziona tutto

    root="UUID=5bbec30e-d90c-4033-9f2b-38867306bdbb"
    e reinstalla lilo.
Ora l'initrd dovrebbe essere in grado di montare la partizione di root ed avviare il sistema col nuovo kernel.
Quanto ai tag code, hai vinto una Sl@cK-p@cc@ sulle spalle ;)

gabry
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mar 20 giu 2006, 15:39
Slackware: 12.2
Kernel: 2.32.x
Desktop: KDE

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da gabry »

Gent.mi,
oggi finalmente ho trovato un po di di tempo x provare i vostri autorevoli suggerimenti:
1. ho convertito fstab con gli uuid come suggerito
2. ho ricostruito il lilo con uuid di root
3. ho ricostruito l'initrd con il comando di cui sopra
Con i vecchi kernel compreso l'attuale tutto funzia.
RiavvianDo con il kernel nuovo invece il problema persiste avendo sempre qualcosa di simile

Codice: Seleziona tutto

/dev/sda5 not mounted on /mnt
bad newroot on /mnt
Error:sbin/init no such file on rootdev
A questo punto ho capito che è un problema di configurazione del kernel.
Ho provato a ricompilare almeno tre volte con opzioni diversi nella sezione generale e tentando di capire chi è il modulo responsabile dello switching di root nel Mount point /mnt
ho deselezionato il modulo builtin initrd del kernel ma non partiva x niente . ora che scrivo mi è venuto un dubbio. Ma initrd dopo una compilazione differente va ricostruito da capo?
Se si dovrò riprovare.
Ho pensato forse che il vero responsabile è l'initrd preimpostato del kernel.
Secondo voi? Potete aiutarmi a capire se nel mio config parte parte generale cè qualcosa che non va?
Boia chi molla!!!;-)

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da 414N »

A mio avviso il problema è sempre l'initrd. Prova a ricrearlo senza specificare alcuna partizione di root, se possibile

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: Problema upgrade kernel: mounting /dev/root on /mnt fail

Messaggio da ZeroUno »

e fare senza initrd?

Compila reiserfs builtin e ti eviti di fare l'initrd.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

Rispondi