Pagina 1 di 2
[risolto] kernel slackware su disco usb
Inviato: gio 19 nov 2009, 18:43
da sya54M
salve, ho installato un poco di tempo fa slackware 13 su un disco usb e sia col kernel huge che col generic facendo un initram includendo il modulo usb-storage va sempre nel panico perchè prima cerca di montare la vera root e poi rileva il disco usb.
per ora ho risolto in un modo molto sporco (ma veloce) che non mi piace copiandoci il kernel della system rescue cd e usando quello al posto dei kernel di slackware, e funziona.
il punto è che non voglio perdere tempo a compilare un kernel apposta anche perchè dovrebbe essere un kernel generico per funzionare su qualunque pc lo collego e quindi ci vorrebbe molto tempo a compilare su un pc datato.
sapete se è possibile usare i kernel di slackware in qualche modo e quindi sono io che sbaglio? è probabile che non abbia incluso qualche modulo necessario nell'initrd ma non so quale.
ps: ho provato anche ha fare un initrd sul kernel huge sempre includendo usb-storage ma non va.
grazie!
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 18:52
da targzeta
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 19:05
da tigerwalk
In particolare puoi crearti l'initrd come descritto e piazzarlo nella /boot del sistema su usb, modificare lilo e partire col kernel che usi (io uso l'huge-smp).
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 19:12
da sya54M
no non l'avevo mai vista.
se si tratta solo di dare il tempo al rilevamento non potrei mettere semplicemente uno sleep in rc.S prima di montare la vera root?
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 19:18
da targzeta
C'è un piccolo problema, quel file risiede nella root directory e viene letto solo una volta che questa viene montata
Emanuele
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 19:25
da sya54M
ah giusto, non ci avevo pensato in quel momento
leggendo la tua guida vedo che dici che il mount del fs virtuale non supporta il montaggio tramite etichetta... io invece ho configurato il tutto (lilo e fstab) usando gli uuid delle partizioni per farle montare su qualunque pc... stesso discorso? non supporta nemmeno questa funzionalità e devo copiare quello di sistema?
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 19:29
da targzeta
E' la busybox che non accetta il flag '-L' quando viene eseguita come 'mount'. Però mi prendi impreparato, dovresti provare a vedere se accetta il flag '-U', anche se non credo.
Se provi fammi sapere,
Emanuele
Re: kernel slackware su disco usb
Inviato: gio 19 nov 2009, 19:37
da sya54M
ok però ora non ho l'hard disk dietro, il fine settimana provo e poi faccio sapere.
grazie mille per l'aiuto!
Re: kernel slackware su disco usb
Inviato: ven 20 nov 2009, 0:25
da urka58
Se usi lilo nella sezione relativa al boot dal disco USB puoi aggiungere il ritardo per il montaggio della partizione root.
Tipo
Codice: Seleziona tutto
image = /path/to/boot/vmlinuz
root = /dev/sdb3
initrd = /path/to/boot/initrd
label = Linux
append = "rootdelay=10"
read-only
Ovviamente da adattare alla tua situazione, soprattutto per quanto riguarda i percorsi del kernel e immagine RAM che dipendono ovviamente da dove è installato lilo.
Ho avuto Slack13 installata per un po' di tempo su un disco USB con lilo sul MBR del disco USB e funzionava bene.
Ciao
Re: kernel slackware su disco usb
Inviato: ven 20 nov 2009, 0:31
da sya54M
ah bene, è una soluzione più rozza ma più veloce da applicare, quando provo poi vi faccio sapere
grazie ancora
Re: kernel slackware su disco usb
Inviato: ven 20 nov 2009, 11:32
da ZeroUno
sya54M ha scritto:salve, ho installato un poco di tempo fa slackware 13 su un disco usb e sia col kernel huge che col generic facendo un initram includendo il modulo usb-storage va sempre nel panico perchè prima cerca di montare la vera root e poi rileva il disco usb.
prova ad aggiungere semplicemente l'opzione
-w 5 (o un altro valore) a mkinitrd.
man mkinitrd ha scritto:
-w The -w option specifies how long to wait in seconds before assuming that all the drives are
spun up and ready to go.
aumenta il valore se 5 secondi non bastano.
usa il kernel huge.
Ciao
01
Re: kernel slackware su disco usb
Inviato: sab 21 nov 2009, 1:12
da zoros
il problema dell'avvio da disco esterno usb secondo me non è tanto legato al delay, che chiaramente c'è, quanto al fatto che il nome del dispositivo usb cambia passando da un PC all'altro ... una soluzione è quella di Spina ... un'altra è quella che avevo proposto io in un lungo thread ... che forse è troppo lungo da leggere (
link) ...
comunque il risultato è questa
ramusb-04.igz ... o quella a 64 bit
ramusb64.igz ... da copiare in /boot ...
poi in lilo.conf:
Codice: Seleziona tutto
image = /boot/vmlinuz-huge-...
label = myUSBSlack
initrd=/boot/ramusb.igz
read-only
append = "USB_DISK_SIGNATURE=etc/mySlack"
con l'accortezza di creare nel filesysystem un file di "signature" in modo che il programmino di init possa scoprire il disco:
naturalmente funziona solo se il kernel è huge ... provato anche sulla 13, 13_64 ...
Re: kernel slackware su disco usb
Inviato: sab 21 nov 2009, 10:12
da tigerwalk
@zoros
il file "signature" a me funziona solo se viene creato in / e non in /etc
Potresti controllare?
Re: kernel slackware su disco usb
Inviato: sab 21 nov 2009, 10:27
da targzeta
zoros ha scritto:... una soluzione è quella di Spina ...
Anche quella di Sya54M va bene, ovvero usando l'uuid del disco.
Emanuele
Re: kernel slackware su disco usb
Inviato: sab 21 nov 2009, 11:10
da urka58
Ragazzi, non è per criticare o per svalutare il lavoro degli altri, ma se si passano i parametri per il kernel al prompt di lilo si può caricare quello che si vuole (più o meno).
Giustamente è stato fatto notare che al disco USB viene assegnato un nodo di dispositivo che può essere diverso, ma salvo qualche occasione che faccio fatica ad immaginare, sarà sda sdb sdc. La partizione / è comunque sempre la stessa come numero progressivo sul disco USB.
La scelta dell'installazione del bootloader (lilo o grub che sia) sul MBR del disco USB è quasi obbilgata, visto che non si può sapere a priori se la macchina a cui "attaccheremo" il disco consente di caricare un sistema linux (magari usa windows).
Al prompt di lilo si preme tab (credo che lo sappiate meglio di me) e si indicano i parametri che si vogliono
Al limite, se ci sono macchine a cui ci si collega frequentemente si crea una sezione ad hoc in lilo.conf.
Se si ha paura di dimenticarsi, si può aggiungere una nota al messaggio di lilo.
Non è nemmeno necessaria una immagine RAM se si usa il kernel huge.
Questo è il mio parere, ripeto senza voler insegnare niente a nessuno.
Ciao