Per masterizzare un DVD di Knoppix è consigliabile una partizione di
swap di almeno 5GiB, una RAM di almeno 4GiB e una partizione libera
di 15GiB.
Puoi ampliare l'area di swap anche con un file. Se ad esempio
vogliamo creare un file di swap di 750MB dobbiamo
per prima cosa costruirlo, poi inizializzarlo e quindi attivarci la swap:
# dd if=/dev/zero of=/swapfile bs=1M count=750k # mkswap /swapfile # swapon /swapfile
Per disattivare e rimuoverlo:
# swapoff /swapfile # rm /swapfile
Nel seguito si farà riferimento alla seguente struttura di directory radicata nella partizione libera:
$KNO | +--master | +--source
dove la variabile d'ambiente KNO viene inizializzata come segue:
# export REL=601 # export PART=/mnt/sdx? # export KNO=$PART/kno$REL
Copia tutto i due filesystem decompressi in $KNO/source per
la personalizzazione:
# cp -Rp /KNOPPIX/* $KNO/source/ \ cp -Rp /KNOPPIX2/* $KNO/source/
e prenditi una pausa caffè.
Nella directory $KNO/master copiamo tutto il contenuto di
/cdrom ad eccezione del file
/cdrom/KNOPPIX/KNOPPIX che verrà rigenerato
da noi stessi più tardi.
# (cd /mnt-system; \
find . -size -15000k -type f \
-exec cp -p --parents {} $KNO/master/ \; )
Knoppix è derivato da Debian e quindi le operazioni
sui pacchetti e la loro configurazione sono effettuate con
apt e/o dpkg.
Per modificare le impostazioni degli utenti basta modificare i files
all'interno di /etc/skel mentre per cambiare lo sfondo basta
sostitutire il file background.jpg.
Facciamo chroot in source:
# mount --bind /dev $KNO/source/KNOPPIX/dev # mount --bind /proc $KNO/source/KNOPPIX/proc # chroot $KNO/source
Nel repository del questo progetto c'è un file
che contiene tutti i package che vengono rimossi.
Vista la criticità dell'intera installazione,
suggeriamo di cambiare il meno possibile. In particolare per
installare altri pacchetti
consigliamo di usare moderatamente solamente dpkg.
Per uscire dall'ambiente chroot:
# exit # umount $KNO/source/KNOPPIX/proc # umount $KNO/source/KNOPPIX/dev
L'ambiente Netkit4TIC è installato nella directory
/usr/local/netkit. Variazioni al kernel o al filesytem
delle macchine virtuali devono riferirsi quindi alle sottodirectory
kernel o fs rispettivamente.
Anche in questo caso per le modifiche al filesystem della
macchina virtuale si usa chroot:
# mkdir /mnt/Netkit4TIC # mount -o loop /usr/local/netkit/fs/Netkit4TIC.fs /mnt/Netkit4TIC # mount --bind /dev /mnt/Netkit4TIC/dev # mount --bind /proc /mnt/Netkit4TIC/proc # chroot /mnt/Netkit4TIC
Per uscire dall'ambiente chroot:
# exit # umount /mnt/Netkit4TIC/dev # umount /mnt/Netkit4TIC/proc
Crea il file KNOPPIX come filesystem compresso:
# mkisofs -R -l -V "Netkit4TIC filesystem" -hide-rr-moved \
-v $KNO/source/ | \
create_compressed_fs - 65536 > \
$KNO/master/KNOPPIX/KNOPPIX
Crea il file con i codici sha1sum dei file del CD:
# (cd $KNO/master/; find -type f \
-not -name md5sums -not -name boot.cat -not -name isolinux.bin \
-exec sha1sum {} \; > $KNO/master/KNOPPIX/sha1sums)
Crea l'immagine iso da usare per masterizzare il live DVD:
# mkisofs -l -r -J -V "Netkit4TIC" -hide-rr-moved -v \
-b KNOPPIX/boot.img -c KNOPPIX/boot.cat \
-o $KNO/Netkit4TIC.iso \
$KNO/master/
Possiamo ora testare l'immagine appena costruita:
$ qemu -m 256 -cdrom Netkit4TIC.iso
e se vogliamo utilizzare una finestra 800x600 basterà specificare
al prompt fb800x600 screen=800x600
(screenshot)
e la termine
possiamo anche realizzare una piccola esperienza
virtuale di due host connessi allo stesso dominio di collisione di
cui riportiamo uno
screenshot ottenuto
sul mio buon vecchio PII 400 con 500MB di RAM (pace all'anima sua).
Ora non resta che verificare che il supporto fisico sia di dimensione
sufficiente a contenere Netkit4TIC.iso e
alla fine bruciare un dvd inserendolo nel
device $DEVICE:
# cdrecord -v dev=$DEVICE speed=4 -dao driveropts=burnfree -eject \
-data $KNO/Netkit4TIC.iso
In seguito per verificare il corretto funzionamento dell'operazione confrontiamo il risultato dei comandi:
# cat $DEVICE | md5sum # md5sum $KNO/Netkit4TIC.iso
Sandro Doro (email me)