<- Packet CAPture library - Indice Generale - Copertina - Software libero per il trattamento di problemi scientifici -> |
Sistemi Liberi
L'articolo...Questo articolo è la continuazione di quello pubblicato sul PLUTO Journal numero 43 e descrive i passaggi per creare un'istanza UML Debian 3.0 utilizzando la normale procedura di installazione. Gli unici requisiti sono spazio su disco, un kernel UML, le uml_utilities ed i CD di Debian 3.0. |
Prima di tutto, è necessario procurarsi l'immagine del "Debian Installer" e modificarla. Potete trovarne una già modificata su http://www.dscnet.org/downloads.php?cat=uml, mentre l'immagine originale la trovate su ftp://ftp.debian.org/debian/dists/woody/main/disks-i386/current/images-1.44/root.bin.
È necessario ora decomprimere l'immagine: se utilizzate quella già modificata digitate
bunzip2 initrd-deb3.0.bz2 |
Se utilizzate quella originale, invece, digitate:
gunzip < root.bin > initrd-deb3.0 |
Prima della modifica del Debian Installer dobbiamo creare il file che fungerà da root filesystem nella nostra istanza UML:
dd if=/dev/zero of=root_fs bs=1024k count=1 seek=1024 |
(il parametro passato con "seek=" è la dimensione del file da creare in Mb, in questo caso 1024Mb=1Gb.)
mke2fs root_fs |
Se si ha abbastanza spazio su disco, possiamo creare un file di swap:
dd if=/dev/zero of=swap_fs bs=1024k count=1 seek=256 /sbin/mkswap swap_fs |
Ora passiamo al primo boot della nostra istanza:
./linux ubd0=initrd-deb3.0 ubd1=root_fs ubd2=/dev/cdrom devfs=nomount eth0=tuntap,tap0 |
dove /dev/cdrom è l'unità con il disco/dischi
Debian; per la configurazione della rete (eth0=) vi rimando all'articolo
precedente.
Se precedentemente è stato creato il file di swap aggiungiamo il
seguente parametro alla riga di comando: ubd3=swap_fs.
Ora Debian Installer dovrebbe partire correttamente: dal menù scegliamo di configurare la tastiera e successivamente scegliamo l'opzione "Execute a Shell".
Se stiamo eseguendo un Debian Installer NON modificato è necessario apportare qualche modifica alla cartella /dev:
cd /dev rm ubd* mknod ubd0 b 98 0 mknod ubd1 b 98 16 mknod ubd2 b 98 32 mknod ubd3 b 98 48 mknod ubd4 b 98 64 mknod ubd5 b 98 80 mknod ubd6 b 98 96 mknod ubd7 b 98 112 |
Ora, sia nel caso in cui stiamo eseguendo un Installer modificato sia in quello in cui non sia così, dobbiamo montare i nostri filesystem ed eventualmente lo swap file:
mount /dev/ubd1 /target mkdir /target/cdrom mount /dev/ubd2 /target/cdrom |
Se abbiamo lo swap file digitiamo anche:
swapon /dev/ubd3 |
Ora torniamo al menù principale:
exit |
Selezioniamo quindi "Configure the Hostname" per configurare il nome del computer, e "Configure the network" per la configurazione della rete (la nostra istanza UML ha una scheda di rete virtuale eth0 definita precedentemente nella riga di comando del kernel UML).
Per effettuare l'installazione vera e propria selezionare "Installazione del sistema di base" dal menù principale, poi "mounted" e successivamente, quando richiesto selezionare /target/cdrom come fonte di installazione. L'installazione di base Debian verrà ora completata, ci restano solo alcuni ritocchi finali da effettuare. Dobbiamo quindi scegliere nuovamente "Execute a Shell" dal menù principale.
Innanzitutto sistemeremo i file presenti in /dev nel sistema appena installato, copiando quelli dell'installer:
cp /dev/ubd* /target/dev |
L'ultima cosa da fare è modificare il file fstab:
nano-tiny /target/etc/fstab |
Il contenuto deve essere simile al seguente:
/dev/ubd0 / ext2 errors=remount-ro 0 1 proc /proc proc defaults 0 0 /dev/ubd1 /cdrom iso9660 defaults,user,noauto,ro 0 0 |
Se abbiamo uno swap file aggiungeremo anche:
/dev/ubd2 none swap sw 0 0 |
Possiamo ora chiudere l'editor e l'istanza UML:
halt |
Dopo la chiusura è necessario riavviare l'istanza per terminare l'installazione:
./linux ubd0=root_fs ubd1=/dev/cdrom devfs=nomount eth0=tuntap,tap0 [ubd2=swap_fs] |
(il testo tra parentesi quadre [ ] va inserito solo se si ha uno swap file.)
Ora ci appariranno una serie di schermate per l'installazione dei
pacchetti (quando verrà chiesto da che device effettuare
l'installazione digitare /dev/ubd1) e per le varie configurazioni
del sistema (come una qualsiasi installazione Debian), dopodiché
avrete un'istanza UML Debian 3.0 nuova fiammante e perfettamente
funzionante.
È da ricordare che durante la procedura di installazione non è
necessario installare né un bootloader né un kernel (e i
relativi moduli) in quanto UML gestisce tutto questo da solo. È
chiaro che se il kernel UML è modulare i relativi moduli dovranno
essere copiati nell'istanza.
Per i successivi avvii dell'istanza la linea di comando è questa:
./linux ubd0=root_fs ubd1=/dev/cdrom devfs=nomount eth0=tuntap,tap0 [ubd2=swap_fs] |
Buon divertimento!
L'autoreStefano Sasso utilizza Linux dal 2000 e si diverte a programmare in Perl, PHP e Python. È anche amministratore del server web del suo liceo, dove frequenta la classe quinta. |
<- Packet CAPture library - Indice Generale - Copertina - Software libero per il trattamento di problemi scientifici -> |