|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#81 | |
|
Senior Member
Iscritto dal: Dec 2000
Città: Trento
Messaggi: 5917
|
Quote:
l'unica soluzione e' il dischetto (o cdrom)... Adesso sto smanettando con la nuova geexbox... che dire assolutamente fantastica... alla fine sono riuscita a farla partire da una memory card da 16Mb (con un adattatore per usb) formattata fat 32 con grub! Buon smanettamento a tutti!... io ritorno a lavorare Ciao
__________________
Linux User #272700 >+++++++++[<+++++++++>-]<+.++.>++++[<---->-]<++.+++++++. HOWTO: SSH Firewall e DMZ ɐɹdosoʇʇos oʇuǝs ıɯ |
|
|
|
|
|
|
#82 |
|
Senior Member
Iscritto dal: Aug 2005
Città: Wien
Messaggi: 435
|
Si probabilmete hai ragione tu. Allora vi dovro' dare una mano in un altro modo, visto che il mio bios non supporta il boot via usb.... Se vuoi vi potrei dare una mano per capire, poi creare l'initrd...
Comunque visto che non posso usare queste esperienze per un usb vorra' dire che quando finito faro' un live cd
__________________
"Sono 126 miglia per Chicago. Abbiamo il serbatoio pieno, mezzo pacchetto di sigarette, è buio, e portiamo tutt'e due gli occhiali da sole" |
|
|
|
|
|
#83 | |
|
Senior Member
Iscritto dal: Dec 2000
Città: Trento
Messaggi: 5917
|
Quote:
Ciao!
__________________
Linux User #272700 >+++++++++[<+++++++++>-]<+.++.>++++[<---->-]<++.+++++++. HOWTO: SSH Firewall e DMZ ɐɹdosoʇʇos oʇuǝs ıɯ |
|
|
|
|
|
|
#84 |
|
Senior Member
Iscritto dal: Aug 2005
Città: Wien
Messaggi: 435
|
Dopo aver fatto una breve ricerca su initrd ho fatto un riassunto da vari documenti, che puo' servire per avere piu' chiare le idee:
COS’E’: E’ un disco RAM iniziale (/dev/initrd), che viene caricato dal boot-loader prima del kernel. Il kernel cosi’ dopo puo usare questo file speciale per un two phased system boot-up (credo sia piu’ chiaro ternerlo in inglese che tradurlo malamente). Nella prima fase il kernel inizializza e monta dal contenuto di initrd un file system root. Nella seconda fase vengono caricati in memoria i driver ed i moduli dal contenuto della root. Fatto questo viene creata una nuova root (quella che il sistema usera’ normalmente) tramite il comando pivot_root. COME VIENE FATTO PARTIRE: Per poter utilizzare initrd il kernel deve essere avviato abilitando la gestione del disco RAM iniziale. Per fare questo bisogna impostare il boot loader con i parametri corretti. Alcuni esempi che potrebbero essere utili di configuarazione LILO: image = /boot/vmlinuz initrd = /boot/initrd.gz append = "root=/dev/ram0 init=/linuxrc rw" GRUB: title linux kernel (hd0,1)/boot/vmlinuz root=/dev/ram0 init=/linuxrc rw initrd (hd0,1)/boot/initrd.gz SYSLINUX: LABEL linux KERNEL vmlinuz APPEND root=/dev/ram0 init=/linuxrc rw initrd=initrd.gz ISOLINUX LABEL linux KERNEL vmlinuz APPEND root=/dev/ram0 init=/linuxrc rw initrd=initrd.gz OPERAZIONE DI BOOT Le operazioni di boot sono le seguenti: 1. Il boot loader carica il kernel e /dev/initrd in memoria 2. All’avvio del kernel, esso scompatta e copia il contenuto di /dev/initrd nella RAM e libera la memoria usata da /dev/initrd 3. Il kernel monta il dispositivo read and write /dev/ram0 come come la directory radice iniziale . 4. Se la root normale e’ uguale a quella specificata (/dev/ram0) allora il kernel salta gli ultimi passaggi e procede al boot. 5. Se e’ presente il file eseguibile /linuxrc, esso viene eseguito con uid 0(il file /linuxrc deve avere il permesso di esecuzione) 6. Se /linuxrc non e’ eseguito o quando viene terminata la sua esecuzione, la normale root viene montata. 7. Se la normale root ha una directory /inird, /dev/ram0 viene spostata li, altrimenti viene smontata. 8. La normale sequenza di boot viene eseguita nella root. UTILIZZO: Un possibile scenario di installazione: 1. Il boot-loader carica da un floppy o qualunque altro media con un piccolo kernel e carica il /dev/ 2. L’eseguibile /linuxrc determina cosa e’ necessario per 1) montare la normale root e (2) e le varie periferiche (e.g. CD-ROM, network, tape, ...). 3. L’eseguibile /linuxrc carica i necessari moduli dalla root iniziale. 4. L’eseguibile /linuxrc crea e popola la root 5. L’eseguibile /linuxrc setta /proc/sys/kernel/real-root-dev, smonta /proc, la normale root e tutti gli altri file system che ha montato, e poi termina. 6. Il kernel monta la normale root. 7. Ora che il file system e’ accessibile ed integro, viene installato il boot-loader 8. Il boot-loader e’ configuarato per caricare in /dev/initrd un file system un set di moduli per far partire il sistema. 9. Il sistema e’ ora installato. ESEMPIO DI UN DISCO RAM INIZIALE: # cd[Invio] # mkdir radice-initrd[Invio] # cd radice-initrd[Invio] # mkdir bin dev etc lib proc nuova-root[Invio] Si copiano i programmi che si ritiene siano indispensabili: # cp /bin/dash /bin/mkdir /bin/mount ./bin[Invio] # cp /sbin/insmod /sbin/pivot_root ./bin[Invio] # cp /usr/sbin/chroot ./bin[Invio] In questo caso la shell è Dash e si preparano alcuni collegamenti simbolici: # cd ./bin[Invio] # ln -s dash ash[Invio] # ln -s dash sh[Invio] # cd ..[Invio] Con l'aiuto di ldd si individuano i file delle librerie che richiedono i programmi copiati e si copiano a loro volta le librerie necessarie: # cp /lib/libc.so.6 /lib/ld-linux.so.2 ./lib[Invio] Si crea un file /etc/fstab minimo: # echo "/dev/ram0 / auto defaults 0 0" > etc/fstab[Invio] Si copiano i file dei moduli necessari (viene omesso il passaggio), quindi si creano i file di dispositivo che possono servire; qui viene usato lo script MAKEDEV: # cd ./dev[Invio] # /dev/MAKEDEV console[Invio] # /dev/MAKEDEV null[Invio] # /dev/MAKEDEV zero[Invio] # /dev/MAKEDEV ram[Invio] # /dev/MAKEDEV hd[Invio] # /dev/MAKEDEV sd[Invio] # cd ..[Invio] Alla fine, si comincia la realizzazione dello script linuxrc, da collocare all'inizio della gerarchia (/linuxrc). Inizialmente, per verificare il funzionamento di massima del sistema, conviene fare una cosa molto semplice, come potrebbe essere questa: #!/bin/sh echo nanorc di prova; premi [Invio] per terminare read x Una volta creato il file, occorre ricordare di dargli i permessi necessari all'esecuzione: # chmod 755 linuxrc[Invio] Per la verifica, basta usare chroot: # chroot . /linuxrc[Invio] nanorc di prova; premi [Invio] per terminare # [Invio]
__________________
"Sono 126 miglia per Chicago. Abbiamo il serbatoio pieno, mezzo pacchetto di sigarette, è buio, e portiamo tutt'e due gli occhiali da sole" |
|
|
|
|
|
#86 | |
|
Senior Member
Iscritto dal: Dec 2000
Città: Trento
Messaggi: 5917
|
Quote:
ho solo dato un'occhiata a grub... e' una vera potenza!
__________________
Linux User #272700 >+++++++++[<+++++++++>-]<+.++.>++++[<---->-]<++.+++++++. HOWTO: SSH Firewall e DMZ ɐɹdosoʇʇos oʇuǝs ıɯ |
|
|
|
|
|
|
#87 | |
|
Senior Member
Iscritto dal: Oct 2003
Città: Milano
Messaggi: 4080
|
Quote:
ciao
__________________
spesso, è solo quando sai che non ti resta molto tempo che ne apprezzi il reale valore quote: "some users are a classic example of the inverse ratio between the size of the mouth and the size of the brain" * se non vi rispondo è perché siete (200+) nella mia ignore list * mi chiedo perché chi è nella ignore list è spesso sospeso e, prima o poi, viene bannato * |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:44.



















