[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [volume] [parte]


Capitolo 48.   Sistemi GNU/Linux autoavviabili comuni

Le distribuzioni GNU/Linux realizzate in modo da essere autoavviabili e indipendenti dal disco fisso sono molte. In questo capitolo se ne citano alcune.

Quando si tratta di sistemi GNU/Linux funzionanti direttamente da CD o da DVD, di solito questi vengono diffusi attraverso un file contenente l'immagine del file system, che utilizzandolo per la registrazione di un CD-ROM, o di un DVD-ROM, genera normalmente un disco autoavviabile (la creazione di un CD-ROM e di un DVD-ROM è descritta nel capitolo 165).

La riproduzione di un CD o di un DVD del genere richiede normalmente un disco vergine di ottima qualità, in grado di contenere tutta la durata prevista (nel caso di CD è bene utilizzare dischi che consentono almeno la registrazione di 80 minuti). Nello stesso modo, l'utilizzo del disco che si ottiene richiede poi un lettore di buona qualità, abbastanza veloce e in grado di leggere anche dischi con capacità elevate.

Naturalmente, qualunque sia il tipo si supporto per il quale è stato preparato il sistema GNU/Linux in questione, è necessario verificare la configurazione del firmware (il BIOS), in modo da far precedere l'avvio da questo tipo di supporto piuttosto che dal disco fisso.

48.1   Knoppix

Knoppix (1) è un sistema GNU/Linux su CD/DVD autoavviabile, ma anche installabile, abbastanza generalizzato e fortunato (<http://www.knoppix.org/>), essendoci anche una miriade di varianti realizzate per scopi particolari.

Nel caso non si possa avviare il CD o il DVD direttamente, è disponibile anche l'immagine di un dischetto, che si tratta del file /KNOPPIX/boot.img, contenuto nel CD o nel DVD stesso.

All'avvio è possibile passare una serie di parametri per configurare inizialmente il suo funzionamento; di solito si interviene così per definire subito il tipo di tastiera che si intende utilizzare:

boot: knoppix lang=it[Invio]

Al termine della procedura di avvio del sistema, si ottengono alcune console già aperte e una scrivania grafica controllata da KDE. Le console sono aperte in qualità di utente root, mentre la grafica funziona come utente knoppix. L'utente root non ha una parola d'ordine, pertanto non è possibile accedere in qualità di amministratori, se non dalle console attivate in modo automatico.

Figura 48.1. KDE avviato automaticamente, da una delle prime versioni del CD Knoppix.

knoppix-kde

La configurazione della rete può essere fatta a mano, attraverso i comandi consueti.

Una caratteristica di Knoppix che a molti piace, sta nel fatto che, quando si dà il comando di arresto del sistema operativo, il CD o il DVD viene estratto automaticamente dal lettore.

48.2   nanoLinux

nanoLinux(2) è un altro sistema GNU/Linux autoavviabile e installabile, orientato in particolare alla didattica o comunque a un uso consapevole, senza sfoggio di effetti speciali.

nanoLinux non ha nulla di eccezionale; al contrario cerca di essere il più simile a una distribuzione GNU/Linux installata normalmente, ma senza raffinatezze estetiche superflue. La gestione della grafica (con X) è priva di un gestore di sessione e il gestore di finestre è volutamente molto semplice.

Figura 48.2. Aspetto spartano della grafica di nanoLinux. Si può osservare l'uso delle trasparenze virtuali, con la presenza, al centro dello schermo, di un terminale che mostra con discrezione i messaggi emessi dai programmi e, in questo caso, un altro terminale in primo piano che mostra lo stato di avanzamento dell'avvio di un programma.

attesa avvio

nanoLinux è un lavoro che si affianca a quello di Appunti di informatica libera, pertanto ne include anche una copia consultabile e inoltre viene distribuito attraverso gli stessi canali di questa opera. Il volume XXVI descrive il funzionamento e l'utilizzo di nanoLinux.

48.3   BootCD

La distribuzione GNU/Linux Debian dispone di BootCD, (3) un pacchetto applicativo che ha lo scopo di preparare automaticamente un CD-ROM autoavviabile del file system attuale. Tuttavia, dal momento che la realizzazione di un CD-ROM autoavviabile non è mai un'operazione semplice, anche se tutto viene preparato in modo automatico, non sempre si riesce a ottenere un CD realmente funzionante. A ogni modo, BootCD è comunque un buon punto di partenza per chi vuole cimentarsi in questo tipo di esperienza.

Prima di poter realizzare il proprio CD-ROM autoavviabile, probabilmente è necessario disinstallare tutto ciò che non serve, dal momento che lo spazio a disposizione nel CD-ROM, anche se si usa un file system compresso, è sempre poco; inoltre occorre procedere alla configurazione di BootCD modificando il file /etc/bootcd/bootcdwrite.conf.

Naturalmente, perché si possa procedere alla realizzazione del CD-ROM e perché questo si possa poi avviare regolarmente, servono alcune funzionalità nel kernel Linux, che però sono abbastanza comuni. In modo particolare deve essere possibile accedere a file system ISO 9660 (altrimenti non si potrebbe innestare il CD-ROM); è necessaria la gestione di dischi RAM, è necessario poter accedere a file system inseriti all'interno di file. A ogni modo, nella breve documentazione che accompagna BootCD sono elencate nel dettaglio le voci indispensabili della configurazione del kernel Linux; inoltre c'è sempre la possibilità di usare kernel precompilati, predisposti per la distribuzione, che dovrebbero risultare già completi per questo scopo.

Il file di configurazione /etc/bootcd/bootcdwrite.conf è un file di testo contenente direttive che sono in pratica l'assegnamento di variabili di ambiente, dove le righe bianche e quelle che iniziano con il simbolo # sono semplicemente ignorate. Il file che viene fornito contiene una descrizione abbastanza esauriente del significato delle varie variabili che vengono inizializzate. Vengono mostrati e descritti alcuni estratti.

# Define the filesystem root from which to build an image.
SRCDISK=/

La variabile SRCDISK identifica la directory principale del file system che si vuole trasferire nel CD-ROM. Di solito è la stessa directory principale del sistema in uso.

# Define the kernel which is used
KERNEL=$SRCDISK/boot/vmlinuz-2.4.21

La variabile KERNEL identifica il percorso in cui si trova il file contenente il kernel; come si vede dall'esempio, conviene fare riferimento alla variabile SRCDISK definita in precedenza.

# Two Ramdisks ram1 and ram2 will be created, with the following directories: 
#   ram1: /dev /etc /home /root /tmp
#   ram2: /var
# Both Ramdisks have the same size which is defined by RAMDISK_SIZE
#
# Example: If you want to spend 16MB for RAM Filesystems:
#   RAMDISK_SIZE=8192
RAMDISK_SIZE=32768

Il CD-ROM autoavviabile che si va a creare utilizza due dischi RAM della dimensione indicata dalla variabile RAMDISK_SIZE; in questo caso verrebbero impegnati un totale di 65 636 Kibyte. Durante la fase di preparazione del CD-ROM, BootCD fa una verifica della configurazione e dell'impiego prevedibile di memoria, avvisando se sembra troppo poca.

# TYP=CD|DVDPLUS
# Define TYP=CD if you have a CD-RW drive. Define TYP=DVDPLUS if you have a
# DVD+RW drive and want to write a DVD+ media or TYP=CD if you want to
# write a CD media. 
# To use TYP=DVDPLUS the debian package bootcd-dvdplus must be installed.
TYP=CD

BootCD è in grado di realizzare un CD-ROM tradizionale, oppure un DVD-ROM. Per questo è necessario specificare cosa si vuole nella variabile TYP; in questo caso è stato specificato un CD tradizionale.

# If you have an IDE unit, use ide-scsi emulation. 
# (See http://fy.chalmers.se/~appro/linux/DVD+RW/). Example:
#   CDSCSI=/dev/scd0
CDSCSI=0,0,0

BootCD guida alla realizzazione del CD-ROM fino all'incisione del CD. Pertanto, è necessario specificare le coordinate SCSI per raggiungere il masterizzatore nella variabile CDSCSI.

# Needed if you specified TYP=CD
CDSPEED=4

La variabile CDSPEED consente di indicare una velocità massima di scrittura.

# CDDEV=/dev/hda|/dev/hdb|/dev/hdc|/dev/hdd|/dev/scd0|/dev/scd1|/dev/scd2
# You can specify one or more CD devices to boot from.
# The first entry is the default. The rest will be given as boot options 
# to the user. See DISPLAY.
#   CDDEV="/dev/hdc /dev/hda /dev/hdb /dev/hdc /dev/hdd /dev/scd0 /dev/scd1"
CDDEV="/dev/hdc /dev/hda /dev/hdb /dev/hdc /dev/hdd /dev/scd0 /dev/scd1"

Come si vede dalla spiegazione, la variabile CDDEV permette di indicare un elenco di file di dispositivo da usare per avviare il CD-ROM che si va a realizzare. Normalmente, quella che si vede nell'esempio è la configurazione più appropriata.

# DEVFS=yes|no
# With devfs you do not need devicefiles and inodes in /dev/*.
# If running diskless this will save some ram.
# See /usr/src/linux/Documentation/filesystems/devfs/README for more infos.
#   DEVFS=no
DEVFS=no

Se il sistema da cui si vuole ottenere un CD-ROM utilizza il sistema Devfs, che consiste nella creazione dinamica dei file di dispositivo a partire da una directory /dev/ vuota, è necessario assegnare la stringa yes alla variabile DEVFS.

Per avviare la creazione del CD-ROM, si usa il comando bootcdwrite, senza argomenti, avviato con i privilegi dell'utente root:

bootcdwrite[Invio]

In condizioni normali il programma descrive lo stato del procedimento, chiedendo conferma all'utente in presenza di situazioni che potrebbero creare dei problemi.

48.4   Riferimenti

Appunti di informatica libera 2007.02 --- Copyright © 2000-2007 Daniele Giacomini -- <daniele (ad) swlibero·org>


1) Knoppix   GNU-GPL; i singoli applicativi sono sottoposti eventualmente alle loro condizioni specifiche

2) nanoLinux   GNU-GPL; i singoli applicativi sono sottoposti eventualmente alle loro condizioni specifiche

3) BootCD   GNU-GPL


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome sistemi_gnu_linux_autoavviabili_comuni.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico]

Valid ISO-HTML!

CSS validator!