Guida all'installazione di Debian GNU/Linux

Copyright    2004, 2005, 2006, 2007, 2008 Debian Installer team

Questo manuale è software libero; può essere redistribuito e/o modificato nei
termini della GNU General Public Licence. Si faccia riferimento alla licenza in
Appendice F, GNU General Public License.

Estratto

Questo documento contiene le istruzioni per l'installazione del sistema Debian
GNU/Linux 5.0 (nome in codice «lenny»), per l'architettura Intel x86 («i386»).
Contiene anche riferimenti a informazioni più approfondite e informazioni su
come ottenere il meglio dal proprio sistema Debian.

Nota

Sebbene questa guida all'installazione per i386 è per lo più aggiornata abbiamo
pianificato alcuni cambiamenti e abbiamo riorganizzato le parti del manuale
dopo il rilascio ufficiale di lenny. Una versione più recente può essere
trovata su Internet nella pagina del debian-installer. Nella stessa pagina ci
potrebbero essere anche altre traduzioni.

Commenti, critiche e suggerimenti sulla traduzione possono essere inviati alla
lista di messaggi dei traduttori Debian italiani <
debian-l10n-italian@lists.debian.org>.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Sommario

Installazione di Debian GNU/Linux 5.0 su i386
1. Benvenuti in Debian

    1.1. Cosa è Debian?
    1.2. Cosa è GNU/Linux?
    1.3. Cosa è Debian GNU/Linux?
    1.4. Procurarsi Debian
    1.5. Versione più recente di questa guida
    1.6. Organizzazione della guida
    1.7. Copyright e licenze software

2. Requisiti di sistema

    2.1. Hardware supportato

        2.1.1. Architetture supportate
        2.1.2. CPU, schede madri e video supportate
        2.1.3. Portatili
        2.1.4. Sistemi multiprocessore
        2.1.5. Schede video supportate
        2.1.6. Schede di rete
        2.1.7. Display braille
        2.1.8. Hardware di sintesi vocale
        2.1.9. Periferiche e altro hardware

    2.2. Dispositivi che richiedono un firmware
    2.3. Acquistare hardware specifico per GNU/Linux

        2.3.1. Evitare hardware chiuso o proprietario
        2.3.2. Hardware specifico per Windows

    2.4. Supporti per l'installazione

        2.4.1. CD-ROM/DVD-ROM
        2.4.2. Dischi fissi
        2.4.3. Chiavette USB
        2.4.4. Rete
        2.4.5. Un*x o sistemi GNU
        2.4.6. Sistemi d'archiviazione supportati

    2.5. Requisiti di memoria e spazio su disco

3. Preparazione dell'installazione di Debian GNU/Linux

    3.1. Panoramica del processo d'installazione
    3.2. Backup dei dati
    3.3. Informazioni necessarie

        3.3.1. Documentazione
        3.3.2. Ricerca d'informazioni sull'hardware
        3.3.3. Compatibilità hardware
        3.3.4. Impostazione della rete

    3.4. Requisiti hardware minimi
    3.5. Prepartizionamento per sistemi ad avvio multiplo

        3.5.1. Partizionare da DOS o Windows

    3.6. Configurazione di hardware e sistema operativo prima
        dell'installazione

        3.6.1. Invocare il menu di configurazione del BIOS
        3.6.2. Selezione del dispositivo di boot
        3.6.3. Opzioni varie del BIOS
        3.6.4. Problemi hardware a cui prestare attenzione

4. Recupero dei supporti per l'installazione

    4.1. Set ufficiale di CD-ROM Debian GNU/Linux
    4.2. Recupero dei file dai mirror Debian

        4.2.1. Dove trovare le immagini per l'installazione

    4.3. Preparazione dei file per l'avvio da chiavetta USB

        4.3.1. Copia dei file -- il modo semplice
        4.3.2. Copia dei file -- il modo flessibile
        4.3.3. Avvio da chiavetta USB

    4.4. Preparazione dei file per l'avvio da disco fisso

        4.4.1. Avvio dell'installatore da disco fisso con LILO o GRUB

    4.5. Preparazione dei file per l'avvio TFTP da rete

        4.5.1. Attivazione di un server BOOTP
        4.5.2. Attivazione di un server DHCP
        4.5.3. Attivazione di un server TFTP
        4.5.4. Posizionamento delle immagini TFTP

    4.6. Installazione automatizzata

        4.6.1. Installazione automatizzata usando l'Installatore Debian

5. Avvio del sistema d'installazione

    5.1. Avvio dell'installatore su Intel x86

        5.1.1. Avvio da CD-ROM
        5.1.2. Avvio da Windows
        5.1.3. Avvio di Linux usando LILO o GRUB
        5.1.4. Avvio da chiavetta USB
        5.1.5. Avvio con TFTP
        5.1.6. La schermata di avvio

    5.2. Accessibilità

        5.2.1. Display braille USB
        5.2.2. Display braille seriali
        5.2.3. Hardware di sintesi vocale
        5.2.4. Altri dispositivi
        5.2.5. Temi a contrasto elevato

    5.3. Parametri di avvio

        5.3.1. Parametri dell'Installatore

    5.4. Risoluzione dei problemi del processo d'installazione

        5.4.1. Affidabilità dei CD-ROM
        5.4.2. Configurazione dell'avvio
        5.4.3. Problemi comuni di installazione su Intel x86
        5.4.4. Interpretazione dei messaggi di avvio del kernel
        5.4.5. Segnalazione di problemi con l'installazione
        5.4.6. Invio dei rapporti di installazione

6. Uso dell'Installatore Debian

    6.1. Come funziona l'Installatore
    6.2. Introduzione ai componenti
    6.3. Uso dei singoli componenti

        6.3.1. Impostazione dell'Installatore Debian e configurazione
            dell'hardware
        6.3.2. Partizionamento e selezione del punto di mount
        6.3.3. Installazione del sistema base
        6.3.4. Impostazione di utenti e password
        6.3.5. Installazione di altri programmi
        6.3.6. Rendere avviabile il sistema
        6.3.7. Completamento dell'installazione
        6.3.8. Varie

    6.4. Caricare i firmware mancanti

        6.4.1. Preparazione del supporto
        6.4.2. Firmware sul sistema installato

7. Avvio del nuovo sistema Debian

    7.1. Il momento della verità
    7.2. Montare volumi cifrati

        7.2.1. dm-crypt
        7.2.2. loop-AES
        7.2.3. Risoluzione dei problemi

    7.3. Accesso

8. Passi successivi e cosa fare adesso

    8.1. Arresto del sistema
    8.2. Se non si conosce Unix
    8.3. Orientarsi in Debian

        8.3.1. Sistema di gestione dei pacchetti Debian
        8.3.2. Gestione delle versioni alternative di una applicazione
        8.3.3. Gestione dei job di cron

    8.4. Ulteriori letture e informazioni
    8.5. Configurazione del sistema per la posta elettronica

        8.5.1. Configurazione predefinita della posta elettronica
        8.5.2. Invio di email all'esterno del sistema
        8.5.3. Configurazione del MTA (Mail Transport Agent) Exim4

    8.6. Compilazione di un nuovo kernel

        8.6.1. Gestione dell'immagine del kernel

    8.7. Recupero di un sistema danneggiato

A. Installation Howto

    A.1. Preliminari
    A.2. Avvio del programma d'installazione

        A.2.1. CDROM
        A.2.2. Chiavette USB
        A.2.3. Avvio da rete
        A.2.4. Avvio da disco fisso

    A.3. Installazione
    A.4. Invio di un resoconto d'installazione
    A.5. E per finire...

B. Installazione automatica tramite preconfigurazione

    B.1. Introduzione

        B.1.1. Metodi di preconfigurazione
        B.1.2. Limitazioni

    B.2. Uso della preconfigurazione

        B.2.1. Caricamento del file di preconfigurazione
        B.2.2. Uso dei parametri di avvio per la preconfigurazione
        B.2.3. Modalità «auto»
        B.2.4. Alias utilizzati nella preconfigurazione
        B.2.5. Uso di un server DHCP per specificare un file di
            preconfigurazione

    B.3. Creazione di un file di preconfigurazione
    B.4. Contenuto del file di preconfigurazione (per lenny)

        B.4.1. Localizzazione
        B.4.2. Configurazione della rete
        B.4.3. Network console
        B.4.4. Impostazioni del mirror
        B.4.5. Impostazione dell'orologio e del fuso orario
        B.4.6. Partizionamento
        B.4.7. Partizionamento con RAID
        B.4.8. Installazione del sistema di base
        B.4.9. Impostazione dell'account
        B.4.10. Impostazione di APT
        B.4.11. Selezione dei pacchetti
        B.4.12. Installazione del boot loader
        B.4.13. Termine dell'installazione
        B.4.14. Preconfigurazione di altri pacchetti

    B.5. Opzioni avanzate

        B.5.1. Uso di comandi personalizzati durante l'installazione
        B.5.2. Uso della preconfigurazione per modificare i valori predefiniti
        B.5.3. Caricamento in cascata di più file di preconfigurazione

C. Partizionare per Debian

    C.1. Decidere il numero e la dimensione delle partizioni per Debian
    C.2. L'albero delle directory
    C.3. Schema di partizionamento raccomandato
    C.4. Nomi dei dispositivi in Linux
    C.5. Programmi Debian per il partizionamento

        C.5.1. Partizionare per Intel x86

D. Miscellanea

    D.1. I device linux

        D.1.1. Configurazione del mouse

    D.2. Spazio su disco necessario per i task
    D.3. Installazione di Debian GNU/Linux da un sistema Unix/Linux esistente

        D.3.1. Primi passi
        D.3.2. Installazione di debootstrap
        D.3.3. Esecuzione di debootstrap
        D.3.4. Configurazione del sistema di base
        D.3.5. Installazione di un kernel
        D.3.6. Configurazione del boot loader
        D.3.7. Ritocchi finali

    D.4. Installazione di Debian GNU/Linux via Parallel Line IP (PLIP)

        D.4.1. Requisiti
        D.4.2. Configurazione del sorgente
        D.4.3. Installazione sul target

    D.5. Installazione di Debian GNU/Linux utilizzando «PPP over Ethernet»
        (PPPoE)
    D.6. Installatore grafico

        D.6.1. Uso dell'installatore grafico
        D.6.2. Problemi noti

E. Administrivia

    E.1. Informazioni su questo documento
    E.2. Come contribuire
    E.3. Contributi principali
    E.4. Marchi registrati

F. GNU General Public License

    F.1. GNU General Public License
    F.2. Licenza Pubblica Generica GNU

Lista delle Tabelle

3.1. Informazioni sull'hardware necessarie per l'installazione
3.2. Requisiti minimi del sistema raccomandati

Installazione di Debian GNU/Linux 5.0 su i386

Siamo felicissimi che abbiate deciso di provare Debian e siamo sicuri che
troverete la distribuzione GNU/Linux di Debian unica. Debian GNU/Linux mette
insieme software libero di alta qualità proveniente da tutto il mondo
integrandolo in un insieme coerente. Crediamo che scoprirete che il risultato è
veramente maggiore della somma delle parti.

Capiamo che molti di voi vogliano installare Debian senza leggere questo
manuale e il programma di installazione di Debian è disegnato per rendere
questo possibile. Se adesso non avete il tempo di leggere l'intera Guida
all'installazione, vi raccomandiamo di leggere l'Installation Howto, che vi
guiderà nel processo base di installazione e rimanda al manuale per argomenti
avanzati o per quando le cose vanno storte. L'Installation Howto può essere
trovato nella Appendice A, Installation Howto.

Detto questo, speriamo che abbiate il tempo di leggere la maggior parte di
questo manuale e fare questo vi porterà a una installazione con maggiore
successo.

Capitolo 1. Benvenuti in Debian

Sommario

1.1. Cosa è Debian?
1.2. Cosa è GNU/Linux?
1.3. Cosa è Debian GNU/Linux?
1.4. Procurarsi Debian
1.5. Versione più recente di questa guida
1.6. Organizzazione della guida
1.7. Copyright e licenze software

Questo capitolo fornisce una visione d'insieme del Progetto Debian e di Debian
GNU/Linux. Se già si conosce la storia del Progetto Debian e la distribuzione
Debian GNU/Linux si può passare al prossimo capitolo.

1.1. Cosa è Debian?

Debian è un'organizzazione di volontari dedita allo sviluppo di software libero
e alla promozione degli ideali della comunità del Free Software. Il progetto
Debian è iniziato nel 1993, quando Ian Murdock pubblicò un invito agli
sviluppatori di software a contribuire a una distribuzione completa e coerente
basata sul relativamente nuovo kernel Linux. Quella banda relativamente piccola
di entusiasti specializzati, originariamente finanziata dalla Free Software
Foundation e influenzata dalla filosofia GNU, è cresciuta negli anni in una
organizzazione di circa 1000 sviluppatori Debian.

Gli sviluppatori Debian sono coinvolti in una varietà di attività inclusa
l'amministrazione dei siti Web e FTP, il disegno grafico, l'analisi legale
delle licenze software, la stesura della documentazione e, ovviamente, la
manutenzione dei pacchetti software.

Nell'interesse di comunicare la sua filosofia e attrarre sviluppatori che
credono nei principi che Debian rappresenta, il Progetto Debian ha pubblicato
numerosi di documenti che sottolineano i suoi valori e servono come guida per
cosa vuol dire essere uno sviluppatore Debian.

  ● Il Debian Social Contract è una dichiarazione degli impegni di Debian verso
    la comunità del software libero. Chiunque sia d'accordo nell'attenersi al
    Social Contract può diventare un responsabile. Ogni responsabile può
    introdurre nuovo software in Debian -- a patto che il software soddisfi i
    criteri di essere libero e che il pacchetto segua gli standard di qualità.

  ● Le Debian Free Software Guidelines sono una chiara e concisa dichiarazione
    dei criteri Debian per il software libero. Le DFSG sono un documento che
    influenza molto il movimento del software libero e sono il fondamento della
    The Open Source Definition.

  ● Il Debian Policy Manual è una specifica dettagliata degli standard di
    qualità del Progetto Debian.

Gli sviluppatori Debian sono coinvolti anche in un certo numero di altri
progetti; alcuni specifici di Debian, altri che coinvolgono una parte o tutta
la comunità Linux. Alcuni esempi sono:

  ● Il Linux Standard Base (LSB) è un progetto il cui scopo è quello di
    standardizzare il sistema base GNU/Linux, che dovrà permettere a
    sviluppatori software e hardware di terze parti di progettare facilmente
    programmi e device driver per Linux in generale, piuttosto che per una
    specifica distribuzione GNU/Linux.

  ● Il Filesystem Hierarchy Standard (FHS) è uno sforzo di standardizzazione
    dell'organizzazione del file system di Linux. Il FHS dovrà permettere agli
    sviluppatori di concentrare i loro sforzi sul disegno dei programmi senza
    doversi preoccupare di come il pacchetto sarà installato sulle diverse
    distribuzioni GNU/Linux.

  ● Debian Jr. è un progetto interno il cui scopo è quello di essere sicuri che
    Debian abbia qualcosa da offrire agli utenti più piccoli.

Per maggiori informazioni su Debian si consultino le Debian FAQ.

1.2. Cosa è GNU/Linux?

Linux è un sistema operativo: una serie di programmi che permettono di
interagire con il proprio computer ed eseguire altri programmi.

Un sistema operativo consiste di vari programmi fondamentali che sono necessari
al computer per comunicare e ricevere istruzioni dagli utenti, per leggere e
scrivere dati su dischi rigidi, nastri e stampanti, per controllare l'uso della
memoria e per eseguire altro software. La parte più importante di un sistema
operativo è il kernel. In un sistema GNU/Linux, Linux è il componente kernel.
Il resto del sistema consiste in altri programmi, molti dei quali sono stati
scritti da e per il progetto GNU. Dato che il kernel Linux da solo non forma un
sistema operativo, preferiamo usare il termine «GNU/Linux» per indicare il
sistema a cui molte persone fanno riferimento distrattamente con «Linux».

Linux è modellato sul sistema operativo Unix. Dall'inizio, Linux è stato
progettato per essere un sistema multi-tasking e multi-utente. Queste cose sono
sufficienti per rendere Linux diverso da altri sistemi operativi ben noti.
Comunque, Linux è ancora più diverso di quanto si possa pensare. Diversamente
da altri sistemi operativi, nessuno è proprietario di Linux. Molto del suo
sviluppo è fatto da volontari non pagati.

Lo sviluppo di quello che più tardi è diventato GNU/Linux iniziò quando la Free
Software Foundation iniziò lo sviluppo di un sistema operativo libero simile a
Unix chiamato GNU.

Il progetto GNU ha sviluppato un vasto insieme di strumenti software liberi da
usare con Unix (tm) e sistemi operativi simili a Unix come Linux. Questi
strumenti permettono agli utenti di eseguire azioni che vanno dal mondano (come
copiare o rimuovere file dal sistema) fino all'arcano (come scrivere e
compilare programmi o fare editing sofisticato in una varietà di formati).

Mentre molti gruppi e individui hanno contribuito a Linux, il grande donatore è
ancora la Free Software Foundation, che creò non solo la maggioranza degli
strumenti usati in Linux, ma anche la filosofia e la comunità che ha reso
possibile Linux.

Il kernel di Linux è apparso per la prima volta nel 1991, quando uno studente
finlandese di informatica di nome Linus Torvalds annunciò sul newsgroup di
Usenet comp.os.minix la prima versione di un kernel alternativo a Minix. Si
legga la Pagina della storia di Linux di Linux International.

Linus Torvalds continua a coordinare il lavoro di alcune centinaia di
sviluppatori con l'aiuto di alcuni delegati. Un eccezionale riassunto
settimanale delle discussioni sulla mailing lists linux-kernel è Kernel Traffic
. Maggiori informazioni sulla mailing list linux-kernel possono essere trovate
su linux-kernel mailing list FAQ.

Gli utenti Linux hanno un'immensa libertà nello scegliere il loro software. Per
esempio, gli utenti Linux possono scegliere tra dozzine di shell a riga di
comando e alcuni desktop grafici. Questa selezione spesso disorienta gli utenti
degli altri sistemi operativi che non sono abituati a pensare alla riga di
comando o al desktop come qualcosa che si possa cambiare.

È anche meno probabile che Linux vada in crash, è più abile nel far girare più
di una applicazione contemporaneamente e più sicuro di molti sistemi operativi.
Con questi vantaggi, Linux è il sistema operativo con maggior crescita nel
mercato dei server. Più recentemente, Linux è diventato popolare anche tra gli
utenti che usano il PC a casa e in ufficio.

1.3. Cosa è Debian GNU/Linux?

La combinazione della filosofia e della metodologia di Debian con gli strumenti
di GNU, il kernel Linux e altri importanti software liberi, formano una
distribuzione unica chiamata Debian GNU/Linux. Questa distribuzione è composta
da un grande numero di pacchetti software. Ogni pacchetto nella distribuzione
contiene eseguibili, script, documentazione e informazioni sulla configurazione
e ha un responsabile che deve mantenere il pacchetto aggiornato, controllare i
bug report e comunicare con l'autore/gli autori upstream del pacchetto
software. La larghissima base di utenti, combinata con il sistema di
tracciamento dei bug, assicura che i problemi trovati siano sistemati
velocemente.

L'attenzione di Debian ai dettagli permette di produrre una distribuzione di
alta qualità, stabile e scalabile. Le installazioni possono essere configurate
per essere utili per molti usi, dai firewall minimali alle workstation
scientifiche ai server di rete di alto livello.

Debian è soprattutto popolare tra gli utenti esperti a causa della sua
eccellenza tecnica e il profondo impegno verso le necessità e le attese della
comunità Linux. Debian ha introdotto molte funzionalità in Linux che ormai sono
comuni.

Per esempio, Debian è stata la prima distribuzione Linux a includere un sistema
di gestione dei pacchetti per l'installazione e la rimozione facile del
software. È stata anche la prima distribuzione Linux a poter essere aggiornata
senza richiedere la reinstallazione.

Debian continua a essere un leader nello sviluppo di Linux. Il suo processo di
sviluppo è un esempio di come il modello di sviluppo Open Source possa
funzionare bene -- anche per lavori molto complessi come costruire e manutenere
un sistema operativo completo.

La funzionalità che maggiormente distingue Debian dalle altre distribuzioni è
il sistema di gestione dei pacchetti. Questi strumenti danno all'amministratore
di un sistema Debian il controllo completo sui pacchetti installati sul
sistema, inclusa la possibilità di installare un singolo pacchetto o aggiornare
automaticamente l'intero sistema operativo. Si può anche negare l'aggiornamento
dei singoli pacchetti. Si può anche istruire il sistema di gestione dei
pacchetti riguardo ai software che si sono compilati autonomamente e che
dipendenze devono soddisfare.

Per proteggere i sistemi da cavalli di troia (o «trojan») e altri software
maligni, i server di Debian verificano che i pacchetti siano inviati dai loro
manutentori Debian registrati. Coloro che impacchettano i programmi Debian
fanno molta attenzione nel configurare i pacchetti in modalità sicura. Quando
appaiono problemi nei pacchetti distribuiti le correzioni sono generalmente
disponibili molto rapidamente. Con la semplice opzione di aggiornamento di
Debian, le correzioni ai problemi di sicurezza possono essere scaricate e
installate da Internet.

Il metodo principale e migliore per ottenere supporto per un sistema Debian GNU
/Linux e comunicare con gli sviluppatori Debian è usando le molte mailing list
gestite dal progetto Debian (ce ne sono più di 215 al momento in cui questo
documento è scritto). La maniera più facile per iscriversi a una o più liste è
visitare la pagina di iscrizione alle mailing list di Debian e riempire il
modulo che vi troverete.

1.4. Procurarsi Debian

Per informazioni su come scaricare Debian GNU/Linux da Internet o dove possono
essere acquistati i CD ufficiali Debian, si guardi la pagina web dei
distributori. La lista dei mirror di Debian contiene l'insieme completo dei
mirror ufficiali, così è possibile trovare facilmente quello più vicino.

Debian può essere aggiornata dopo l'installazione in modo veramente semplice.
La procedura d'installazione aiuta la configurazione del sistema in modo da
eseguire questi aggiornamenti una volta che l'installazione è terminata.

1.5. Versione più recente di questa guida

Questo documento è continuamente riesaminato. Verificare sulle pagine di Debian
5.0 ogni informazione aggiunta all'ultimo minuto su la release 5.0 del sistema
Debian GNU/Linux. Versioni aggiornate di questo manuale d'installazione sono
disponibili dalle pagine del Manuale ufficiale di installazione.

1.6. Organizzazione della guida

Questo documento dovrebbe servire come manuale per gli utenti che usano Debian
per la prima volta. Si è provato a dare per scontate il minor numero di
conoscenze, anche se si presuppone una conoscenza generale di come funzioni
l'hardware all'interno di un computer.

In questo documento gli utenti già esperti possono trovare dei riferimenti a
informazioni molto utili, come la minimizzazione delle dimensioni
dell'installazione, i dettagli sull'hardware supportato dal sistema di
installazione Debian, ecc. Si incoraggia gli utenti esperti a dare un'occhiata
al documento.

La struttura di questo manuale è, solitamente, lineare e segue i passaggi del
processo di installazione dall'inizio alla fine. Di seguito sono riassunte le
fasi dell'installazione di Debian GNU/Linux e le sezioni di questo documento
che corrispondono a ciascuna fase:

 1. Determinare se il proprio hardware ha i requisiti necessari per usare il
    sistema d'installazione in Capitolo 2, Requisiti di sistema.

 2. Fare un backup del sistema ed effettuare qualsiasi configurazione hardware
    prima dell'installazione di Debian in Capitolo 3, Preparazione
    dell'installazione di Debian GNU/Linux. Per preparare un sistema multiboot
    potrebbe essere necessario creare sul disco uno spazio partizionabile da
    destinare a Debian.

 3. Nel Capitolo 4, Recupero dei supporti per l'installazione si recuperano i
    file necessari per il metodo d'installazione scelto.

 4. Capitolo 5, Avvio del sistema d'installazione descrive l'avvio del sistema
    d'installazione. Questo capitolo tratta anche le procedure di risoluzione
    dei problemi nel caso accadano degli imprevisti durante questa fase.

 5. L'installazione vera e propria seguendo Capitolo 6, Uso dell'Installatore
    Debian, che comprende la scelta della lingua, la configurazione dei moduli
    con i driver per le periferiche, la configurazione della connessione alla
    rete in modo da poter recuperare i file di installazione mancanti da un
    server Debian (a meno che non si stia installando da un CD), il
    partizionamento del disco, l'installazione del sistema di base e infine la
    scelta e l'installazione dei pacchetti (alcune informazioni sulla
    preparazione delle partizioni per il proprio sistema Debian si trovano
    nell'Appendice C, Partizionare per Debian).

 6. L'avvio del sistema di base appena installato, nel Capitolo 7, Avvio del
    nuovo sistema Debian.

Una volta che il sistema è stato installato si può leggere il Capitolo 8, Passi
successivi e cosa fare adesso. In questo capitolo viene spiegato dove cercare
ulteriori informazioni su Unix e Debian e su come cambiare il kernel.

Infine, le informazioni su questo documento e su come contribuire possono
essere trovate nell'Appendice E, Administrivia.

1.7. Copyright e licenze software

Siamo sicuri che avete letto alcune delle licenze che sono allegate al software
commerciale -- abitualmente c'è scritto che è possibile solo usare una copia
del software su un solo computer. La licenza di questo sistema non è come
quelle. Noi incoraggiamo a installare una copia di Debian GNU/Linux su ogni
computer nella propria scuola o posto di lavoro, a prestare il proprio supporto
d'installazione agli amici e di aiutarli nell'installazione sui loro computer!
Si possono anche fare migliaia di copie e venderle -- sebbene con alcune
restrizioni. La libertà nell'installare e usare il sistema deriva direttamente
dal fatto che Debian è software libero.

Chiamare un software libero non vuol dire che non ha un copyright e che i CD
che lo contengono devono essere distribuiti gratuitamente. Software libero, in
parte, vuol dire che le licenze dei programmi individualmente non richiedono di
pagare per il privilegio di distribuirli o di usare quei programmi. Software
libero vuole anche dire che non solo ognuno può estendere, adattare e
modificare il software, ma che si può distribuire il risultato del proprio
lavoro alla stessa maniera.

Nota

Il progetto Debian, come pragmatica concessione ai propri utenti, rende
disponibili alcuni pacchetti che non sono in accordo con i criteri per essere
liberi. Questi pacchetti non fanno parte della distribuzione ufficiale e sono
disponibili solo attraverso le aree contrib o non-free dei mirror Debian o su
CD-ROM di terze parti; si consulti le FAQ Debian, alla voce «The Debian FTP
archives», per maggiori informazioni a proposito della disposizione e dei
contenuti negli archivi.

Molti dei programmi presenti nel sistema sono rilasciati con licenza GNU
General Public License, spesso citata semplicemente come «la GPL». La GPL
richiede che il codice sorgente del programma sia reso disponibile ogni volta
che si distribuisce la copia binaria del programma; quella clausola delle
licenza assicura che ogni utente sarà in grado di modificare il software. A
causa di questa clausola, il codice sorgente^[1] per tutti questi programmi è
disponibile nel sistema Debian.

Esistono parecchie altre formulazioni riguardo al copyright e alle licenze
software usate dai programmi presenti in Debian. È possibile trovare il
copyright e la licenza di ogni singolo pacchetto installato sul proprio sistema
nel file /usr/share/doc/nome-pacchetto/copyright una volta che il pacchetto è
stato installato sul sistema.

Per maggiori informazione sulle licenze e come Debian determina se il software
è libero abbastanza per essere incluso nella distribuzione principale, si
consultino le Debian Free Software Guidelines.

La nota legale più importante è che il software viene distribuito senza
garanzie. I programmatori che hanno creato quel software lo hanno fatto per il
beneficio della comunità. Nessuna garanzia è fatta per l'idoneità del software
per ogni possibile scopo. Sebbene, dato che il software è libero, si è
autorizzati a modificare questo software per soddisfare le proprie esigenze --
e per godere dei benefici dei cambiamenti fatti da altri che hanno esteso il
software in questa maniera.


━━━━━━━━━━━━━━

^[1] Per informazioni su come localizzare, spacchettare e costruire i binari
dai pacchetti sorgente Debian, si guardi in Debian FAQ, al titolo «Fondamenti
del sistema di gestione dei pacchetti di Debian».

Capitolo 2. Requisiti di sistema

Sommario

2.1. Hardware supportato

    2.1.1. Architetture supportate
    2.1.2. CPU, schede madri e video supportate
    2.1.3. Portatili
    2.1.4. Sistemi multiprocessore
    2.1.5. Schede video supportate
    2.1.6. Schede di rete
    2.1.7. Display braille
    2.1.8. Hardware di sintesi vocale
    2.1.9. Periferiche e altro hardware

2.2. Dispositivi che richiedono un firmware
2.3. Acquistare hardware specifico per GNU/Linux

    2.3.1. Evitare hardware chiuso o proprietario
    2.3.2. Hardware specifico per Windows

2.4. Supporti per l'installazione

    2.4.1. CD-ROM/DVD-ROM
    2.4.2. Dischi fissi
    2.4.3. Chiavette USB
    2.4.4. Rete
    2.4.5. Un*x o sistemi GNU
    2.4.6. Sistemi d'archiviazione supportati

2.5. Requisiti di memoria e spazio su disco

Questa sezione contiene delle informazioni sull'hardware necessarie per
l'installazione di Debian. Inoltre è possibile trovarvi degli ulteriori
riferimenti da cui recuperare informazioni aggiuntive sull'hardware supportato
da GNU e Linux.

2.1. Hardware supportato

Debian non ha nessun requisito aggiuntivo all'hardware oltre a quelli necessari
per far funzionare il kernel di Linux e i programmi GNU. Perciò su ogni
architettura o piattaforma per cui è stato portato il kernel Linux, la libc, il
gcc e per cui esiste un port Debian è possibile installare Debian.

Piuttosto che cercare di descrivere tutte le diverse configurazioni hardware
che sono supportate da Intel x86, questa sezione contiene delle informazioni
generali e dei riferimenti a documenti dov'è possibile trovare delle
informazioni aggiuntive.

2.1.1. Architetture supportate

Debian 5.0 supporta undici architetture principali e diverse varianti di ogni
architettura, che vanno sotto il nome di «flavor».

┌──────────────────┬────────────────┬─────────────────────────┬───────────────┐
│   Architettura   │  Indicazione   │    Sottoarchitettura    │   Variante    │
│                  │     Debian     │                         │   (flavor)    │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│Intel x86-based   │i386            │                         │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│AMD64 & Intel     │amd64           │                         │               │
│EM64T             │                │                         │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│DEC Alpha         │alpha           │                         │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│                  │arm             │Netwinder e CATS         │netwinder      │
│                  ├────────────────┼─────────────────────────┼───────────────┤
│                  │armel           │Versatile                │versatile      │
│                  ├────────────────┼─────────────────────────┼───────────────┤
│ARM               │                │Intel IOP32x             │iop32x         │
│                  │                ├─────────────────────────┼───────────────┤
│                  │arm e armel     │Intel IXP4xx             │ixp4xx         │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │Marvell Orion            │orion5x        │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│                  │                │PA-RISC 1.1              │32             │
│HP PA-RISC        │hppa            ├─────────────────────────┼───────────────┤
│                  │                │PA-RISC 2.0              │64             │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│Intel IA-64       │ia64            │                         │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│                  │                │SGI IP22 (Indy/Indigo 2) │r4k-ip22       │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │SGI IP32 (O2)            │r5k-ip32       │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │MIPS Malta (32 bit)      │4kc-malta      │
│                  │                ├─────────────────────────┼───────────────┤
│MIPS (big endian) │mips            │MIPS Malta (64 bit)      │5kc-malta      │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │Broadcom BCM91250A       │sb1-bcm91250a  │
│                  │                │(SWARM)                  │               │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │Broadcom BCM91480B       │sb1a-bcm91480b │
│                  │                │(BigSur)                 │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│                  │                │Cobalt                   │cobalt         │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │MIPS Malta (32 bit)      │4kc-malta      │
│                  │                ├─────────────────────────┼───────────────┤
│MIPS (little      │                │MIPS Malta (64 bit)      │5kc-malta      │
│endian)           │mipsel          ├─────────────────────────┼───────────────┤
│                  │                │Broadcom BCM91250A       │sb1-bcm91250a  │
│                  │                │(SWARM)                  │               │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │Broadcom BCM91480B       │sb1a-bcm91480b │
│                  │                │(BigSur)                 │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│IBM/Motorola      │                │PowerMac                 │pmac           │
│PowerPC           │powerpc         ├─────────────────────────┼───────────────┤
│                  │                │PReP                     │prep           │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│                  │                │sun4u                    │               │
│Sun SPARC         │sparc           ├─────────────────────────┤sparc64        │
│                  │                │sun4v                    │               │
├──────────────────┼────────────────┼─────────────────────────┼───────────────┤
│                  │                │IPL from VM-reader and   │generic        │
│IBM S/390         │s390            │DASD                     │               │
│                  │                ├─────────────────────────┼───────────────┤
│                  │                │IPL from tape            │tape           │
└──────────────────┴────────────────┴─────────────────────────┴───────────────┘

Questo documento tratta l'installazione sull'architettura Intel x86. Se si
cercano delle informazioni su un'altra delle architetture supportate da Debian
si consultati la pagina dei port Debian.

2.1.2. CPU, schede madri e video supportate

Le informazioni complete sulle periferiche supportate possono essere trovate
nel Linux Hardware Compatibility HOWTO. Lo scopo di questa sezione è descrivere
solo le cose fondamentali.

2.1.2.1. CPU

Sono supportati quasi tutti i processori x86 (IA-32) attualmente usati nei
personal computer, comprese tutte le varianti della serie «Pentium» di Intel.
Questa tipologia di processori comprende anche i processori a 32-bit AMD e VIA
(Cyrix) e i processori come Athlon XP e Intel P4 Xeon.

Purtroppo Debian GNU/Linux lenny non funziona sui processori 386 e precedenti.
A dispetto del nome dell'architettura, «i386», il supporto per i processori
80386 (e i suoi cloni) è stato eliminato a partire dalla release Sarge (r3.1)
di Debian^[2]. (Nessuna versione di Linux ha mai supportato il 286 o i chip
precedenti). Tutti i processori dal i486 in poi continuano ad essere supportati
^[3].

Nota

Se si possiede un sistema con processore a 64-bit della famiglia AMD64 o EM64T
Intel è consigliabile usare la versione dell'installatore per l'architettura
amd64 al posto della versione per i386 (32-bit).

2.1.2.2. Bus di I/O

Il bus è quella parte della scheda madre che permette alla CPU di comunicare
con le periferiche come i dispositivi di memorizzazione. Ogni computer usa un
bus ISA, EISA, PCI, PCIe o VLB (VESA Local Bus, conosciuto anche come VL bus).
Tutti i personal computer venduti negli ultimi anni usano uno di questi.

2.1.3. Portatili

Oggigiorno anche la maggior parte dei portatili è supportata. Se un portatile
contiene hardware speciale o proprietario, alcune funzionalità specifiche
potrebbero non funzionare. Per sapere se un particolare portatile funziona bene
con GNU/Linux, consultare le pagine di Linux Laptop.

2.1.4. Sistemi multiprocessore

Il supporto multiprocessore -- detto anche «symmetric multiprocessing» o SMP --
è disponibile per questa architettura. Il kernel standard di Debian 5.0 è stato
compilato con il supporto per SMP-alternatives. Questo vuol dire che il kernel
rileva il numero di processori (o il numero di core) e disattiva
automaticamente l'SMP sui sistemi monoprocessore.

La versione 486 dei pacchetti Debian con l'immagine del kernel per Intel x86
non è compilata con il supporto per SMP.

2.1.5. Schede video supportate

Si deve usare un display VGA compatibile per la console del terminale.
Praticamente tutte le moderne schede video sono VGA compatibili. Le vecchie
schede video CGA, MDA o HGA dovrebbero funzionare lo stesso, a patto che non
sia richiesto il supporto per X11. Notate che X11 non viene usato durante il
processo di installazione descritto in questo documento.

Il supporto di Debian per le interfacce grafiche è determinato dal sottostante
supporto trovato nel sistema X11 di X.Org. La maggior parte delle schede video
AGP, PCI e PCIe funzionano con X.Org. I dettagli sulle schede video supportate,
sui bus, monitor e dispositivi di puntamento possono essere trovati in http://
xorg.freedesktop.org/. Debian 5.0 include la versione 7.3 di X.Org.

2.1.6. Schede di rete

Quasi tutte le schede di rete (NIC) supportate dal kernel Linux dovrebbero
essere supportate dal sistema d'installazione; normalmente i driver modulari
sono caricati automaticamente. Fra queste sono comprese molte schede PCI e
PCMCIA. Sono supportate anche molte delle vecchie schede ISA.

L'uso di ISDN è supportato, ma non durante l'installazione.

2.1.6.1. Schede per reti wireless

Le reti wireless sono generalmente ben supportate e un numero crescente di
adattatori wireless è supportato dal kernel Linux ufficiale, anche se molti
richiedono il caricamento del firmware. I NIC wireless non supportati dal
kernel ufficiale possono funzionare correttamente con Debian GNU/Linux, ma non
sono supportati durante l'installazione.

L'uso delle reti wireless durante l'installazione è ancora in sviluppo e il suo
funzionamento dipende dal tipo di adattatore e dalla configurazione del proprio
access point. Se durante l'installazione non sono disponibili altre schede di
rete è comunque possibile portare a termine l'installazione di Debian GNU/Linux
usando le immagini complete di CD-ROM o DVD. Scegliere di non configurare la
rete e proseguire l'installazione con i soli pacchetti disponibili dal CD/DVD.
Sarà possibile installare driver e firmware di cui si ha bisogno una volta
completata l'installazione (dopo il riavvio) e infine si potrà configurare la
rete manualmente.

In certi casi il driver di cui si ha bisogno non è disponibile come un
pacchetto Debian. In questo caso si devono cercare i sorgenti del driver su
Internet e compilare il driver da soli, come fare questa operazione non rientra
nello scopo di questo manuale. Se non è disponibile un driver per Linux,
l'unica possibilità è usare il pacchetto ndiswrapper che permette di usare un
driver per Windows.

2.1.7. Display braille

Il supporto per i display braille è demandato al supporto fornito da brltty. La
maggior parte dei display connessi tramite porta seriale, USB o Bluetooth
funzionano con brltty. I dettagli su quali dispositivi braille sono supportati
possono essere trovati sul sito web di brltty. Debian GNU/Linux 5.0 dispone
della versione 3.10 di brltty.

2.1.8. Hardware di sintesi vocale

Il supporto per l'hardware di sintesi vocale è demandato al supporto fornito da
speakup. speakup supporta solo le schede integrate e i dispositivi esterni
collegati a una porta seriale (nessun dispositivo collegato tramite USB o
tramite adattatori seriale-USB è supportato). I dettagli sui dispositivi di
sintesi vocale supportati possono essere trovati sul sito web di speakup.
Debian GNU/Linux 5.0 dispone della versione 3.0.3 di speakup.

2.1.9. Periferiche e altro hardware

Linux supporta una grande varietà di dispositivi hardware come per esempio
mouse, stampanti, dispositivi PCMCIA e USB. Tuttavia molte di queste
periferiche non sono necessarie durante l'installazione del sistema.

L'hardware USB generalmente funziona correttamente, solo qualche tastiera USB a
volte può richiedere qualche configurazione aggiuntiva (si veda Sezione 3.6.4,
«Problemi hardware a cui prestare attenzione»).

Si veda inoltre il Linux Hardware Compatibility HOWTO per sapere se un
particolare dispositivo è supportato da Linux.

2.2. Dispositivi che richiedono un firmware

Oltre alla disponibilità di un driver, alcuni dispositivi richiedono anche un
cosiddetto firmware o microcodice da caricare nel dispositivo prima che sia
completamente operativo. Questo è molto comune per le schede di rete (in
particolare i NIC wireless) ma anche alcuni dispositivi USB e alcuni controller
per dischi fissi richiedono un firmware.

In molti casi il firmware è considerato non-libero in base ai criteri usati dal
progetto Debian GNU/Linux e quindi non può essere incluso nella distribuzione
principale o nel sistema d'installazione. Se il driver del dispositivo è
incluso nella distribuzione e se Debian GNU/Linux può distribuire legalmente il
firmware, spesso è disponibile in un pacchetto separato della sezione non-free
dell'archivio.

Questo non vuol dire che questo hardware non può essere usato durante
l'installazione. A partire da Debian GNU/Linux 5.0, debian-installer supporta
il caricamento dei file con il firmware o dei pacchetti contenenti il firmware
da un supporto removibile come un dischetto o una chiavetta USB. Si veda
Sezione 6.4, «Caricare i firmware mancanti» per le istruzioni dettagliate su
come caricare i file o i pacchetti con il firmware durante l'installazione.

2.3. Acquistare hardware specifico per GNU/Linux

Ci sono molti rivenditori che distribuiscono computer con Debian o altre
distribuzioni GNU/Linux preinstallate. È possibile che costino di più, ma
questo acquisto permette di stare tranquilli, perché si può essere sicuri che
l'hardware è ben supportato da GNU/Linux.

Se si deve comprare una macchina con Windows preinstallato, leggere
attentamente la licenza che viene data con Windows; si può rifiutare la licenza
e ottenere un rimborso dal produttore. Facendo una ricerca su internet di
«windows refund» si potrebbero recuperare delle informazioni utili per fare
questa operazione.

Indipendentemente dall'acquisto di un sistema con Linux preinstallato o meno o
addirittura un computer usato, è necessario assicurarsi che l'hardware sia
supportato dal kernel Linux. Controllare se il proprio hardware è presente
nelle liste elencate precedentemente. Si deve far sapere al rivenditore che si
stà acquistando un computer su cui verrà installato Linux. Si dovrebbe
supportare i produttori che appoggiano Linux.

2.3.1. Evitare hardware chiuso o proprietario

Alcuni costruttori di hardware non danno informazioni su come scrivere i driver
per i loro dispositivi. Altri non permettono di accedere alla documentazione
senza un accordo di non divulgazione che impedirebbe di rilasciare il codice
sorgente di Linux.

Poiché non è stato dato accesso alla documentazione di questi dispositivi,
questi non funzioneranno sotto Linux. È possibile aiutare chiedendo ai
produttori di questi dispositivi di rilasciare la documentazione. Se molte
persone lo chiederanno, capiranno che la comunità del software libero è un
mercato importante.

2.3.2. Hardware specifico per Windows

Una moda scomoda è la proliferazione di modem e stampanti specifici per
Windows. In alcuni casi questi sono progettati specialmente per essere pilotati
dal sistema operativo Microsoft Windows e hanno una targhetta «WinModem» o
«Made especially for Windows-based computers». Questo in genere è realizzato
rimuovendo i processori integrati nei dispositivi e delegando il lavoro ad un
driver Windows che viene eseguito dal processore del computer. Questa strategia
rende l'hardware meno costoso, ma questi risparmi spesso non si trasferiscono
all'utente e questo hardware può essere perfino più costoso dell'equivalente
che mantiene l'intelligenza integrata.

Si dovrebbe evitare l'hardware specifico per Windows per due motivi. Il primo
consiste nel fatto che in generale questi produttori non rendono disponibili le
risorse necessarie alla scrittura dei driver per Linux. Generalmente,
l'hardware e l'interfaccia tra il software e il dispositivo sono proprietari e
la documentazione non è accessibile senza un accordo di non divulgazione,
sempre ammesso che sia accessibile. Questo impedisce che venga usata per il
software libero, perché i programmatori di software libero divulgano il
sorgente dei loro programmi. Il secondo motivo è che con questi dispositivi a
cui sono stati rimossi i processori, il sistema operativo dove svolgere il
lavoro al posto loro, spesso con priorità real-time, e quindi la CPU non è
disponibile per eseguire i programmi mentre pilota i dispositivi. Poiché gli
utenti Windows non fanno uso così intenso di processi paralleli come fanno
invece gli utenti Linux, i produttori sperano che gli utenti Windows non notino
il sovraccarico che i dispositivi comportano sul processore. Tuttavia,
qualsiasi sistema operativo che supporta l'esecuzione di processi in parallelo,
anche Windows 2000 o XP, soffre di una degradazione delle prestazioni quando i
produttori di hardware riducono la potenza di calcolo dei loro dispositivi.

È possibile aiutare a migliorare questa situazione incoraggiando questi
produttori a rilasciare la documentazione e le altre risorse per permettere di
programmare il loro hardware, ma la migliore strategia consiste semplicemente
nell'evitare questi tipi di dispositivi fino a quando non verranno elencati nel
Linux Hardware Compatibility HOWTO.

2.4. Supporti per l'installazione

Questa sezione aiuta a determinare quali tipi di supporto è possibile usare per
installare Debian. Per esempio, se sulla propria macchina si dispone di un
lettore per dischetti, è possibile usarlo per installare Debian. C'è un intero
capitolo dedicato ai supporti, Capitolo 4, Recupero dei supporti per
l'installazione, che elenca i vantaggi e gli svantaggi di ogni supporto. È
possibile rileggere questa pagina una volta letta quella sezione.

2.4.1. CD-ROM/DVD-ROM

Nota

Tutte le volte che in questo manuale è riportato «CD-ROM», devono essere
considerati sia i CD-ROM che i DVD-ROM, perché le due tecnologie sono molto
simili dal punto di vista del sistema operativo, con l'eccezione di alcuni
vecchi lettori CD-ROM non standard che non sono né SCSI né IDE/ATAPI.

L'installazione basata sui CD-ROM è supportata per alcune architetture. Sulle
macchine con il supporto dei CD-ROM avviabili è possibile fare una completa
installazione senza floppy . Anche se il proprio sistema non supporta l'avvio
da CD-ROM, è possibile usare il CD-ROM assieme ad un'altra tecnica per
l'installazione del sistema, dopo che il sistema d'installazione è stato
avviato in un altro modo; vedere Capitolo 5, Avvio del sistema d'installazione.

Sono supportati i CD-ROM SCSI, SATA e IDE/ATAPI. Il Linux CD-ROM HOWTO contiene
delle informazioni più approfondite sull'uso dei CD-ROM con Linux.

Sono supportati anche i CD-ROM con interfaccia USB, così come i dispositivi
FireWire che sono supportati dai driver ohci1394 e sbp2.

2.4.2. Dischi fissi

L'avvio dell'installazione del sistema direttamente dal disco fisso è un'altra
possibilità disponibile per molte architetture. Questa richiede un altro
sistema operativo per caricare l'Installatore sul disco fisso.

2.4.3. Chiavette USB

Molti computer Debian hanno bisogno del floppy o del lettore CD-ROM solo per
installare il sistema o per operazioni di ripristino del sistema. Se ci si
trova a operare con dei server probabilmente questi lettori sono già stati
rimossi ed è possibile usare una chiavetta USB per installare e (quando
necessario) recuperare il sistema. Questo è utile anche per i piccoli sistemi
che non hanno spazio per lettori inutili.

2.4.4. Rete

La rete può essere usata durante l'installazione per recuperare i file
necessari all'installazione. L'uso della rete dipende dal metodo
d'installazione scelto e dalle risposte date ad alcune delle domande poste
durante l'installazione. Il sistema d'installazione supporta connessioni alla
rete di diversi tipi (tra questi PPPoE ma non ISDN e PPP), via FTP o HTTP. Al
termine dell'installazione è possibile configurare il proprio sistema per l'uso
di ISDN e PPP.

È anche possibile avviare il sistema d'installazione dalla rete.

L'installazione senza dischi, usando l'avvio dalla rete da una LAN e montare
l'intero filesystem attraverso NFS è un'altra opzione.

2.4.5. Un*x o sistemi GNU

Se si usano altri sistemi Unix, è possibile usarli anche per installare Debian
GNU/Linux senza l'uso di debian-installer descritto nel resto del manuale.
Questo tipo d'installazione può essere utile per gli utenti che hanno
dell'hardware che altrimenti non è supportato o sui computer che non possono
tollerare interruzioni. Se interessa a questa tecnica, si veda la sezione
Sezione D.3, «Installazione di Debian GNU/Linux da un sistema Unix/Linux
esistente».

2.4.6. Sistemi d'archiviazione supportati

I dischi d'avvio di Debian contengono un kernel che è stato compilato per
massimizzare il numero di sistemi su cui può girare. Sfortunatamente questo
comporta un kernel di dimensione maggiore che include molti driver che non
verranno usati sulla propria macchina (vedere Sezione 8.6, «Compilazione di un
nuovo kernel» per imparare a compilare un kernel personalizzato). Il supporto
per la maggior quantità di dispositivi è desiderabile in generale per
permettere che Debian possa essere installata sul numero maggiore possibile di
combinazioni di hardware.

In generale il sistema d'installazione di Debian include il supporto per i
floppy, i driver IDE (noti come PATA), i floppy IDE, i dispositivi IDE
collegati alla porta parallela, i controller e i dispositivi SATA e SCSI, USB e
FireWire. I filesystem supportati comprendono FAT, le estensioni Win-32 FAT
(VFAT) e NTFS.

Le interfacce dei dischi che emulano l'interfaccia «AT», spesso chiamate MFM,
RLL, IDE o PATA, sono supportate. I controller SATA e SCSI dei dischi di molti
costruttori sono supportati. Per maggiori dettagli si veda il Linux Hardware
Compatibility HOWTO.

2.5. Requisiti di memoria e spazio su disco

Sono necessari almeno 44MB di memoria e 500MB di spazio su disco per effettuare
una normale installazione. Notare che questi valori sono il minimo
indispensabile; per dei valori più realistici si veda Sezione 3.4, «Requisiti
hardware minimi».

L'installazione su sistemi che dispongono di una quantità inferiore di memoria^
[4] o di spazio disponibile sul disco potrebbe essere comunque possibile ma è
consigliata solo agli utenti più esperti.


━━━━━━━━━━━━━━

^[2] Sono stati fatti molti tentativi per evitare la rimozione ma alla fine è
risultata necessaria a causa di una serie di problemi con il compilatore e il
kernel, iniziando da un bug nell'ABI C++ fornita da GCC. Si dovrebbe poter
comunque usare Debian GNU/Linux sui processori 80386 compilando in proprio un
kernel personalizzato e compilando tutti i pacchetti a partire dai sorgenti, ma
questo non rientra nello scopo del manuale.

^[3] Come effetto collaterale della rimozione del supporto per i chip più
vecchi molti pacchetti Debian sono un po' più veloci sui computer recenti. Il
i486, introdotto nel 1989, ha tre istruzioni nel linguaggio macchina (bswap,
cmpxchg e xadd) che il i386, introdotto nel 1986, non aveva. Fino a ora queste
istruzioni non potevano essere usate con facilità dalla maggior parte dei
pacchetti Debian; ma adesso è possibile farlo.

^[4] Le immagini per l'installazione con il supporto per la versione grafica
dell'installatore richiedono più memoria rispetto a quelle con il supporto
della sola versione testuale e non dovrebbero essere usate su sistemi con meno
di 44MB di memoria. Quando viene proposto di scegliere se avviare la versione
normale o la versione grafica, si dovrebbe scegliere la prima.

Capitolo 3. Preparazione dell'installazione di Debian GNU/Linux

Sommario

3.1. Panoramica del processo d'installazione
3.2. Backup dei dati
3.3. Informazioni necessarie

    3.3.1. Documentazione
    3.3.2. Ricerca d'informazioni sull'hardware
    3.3.3. Compatibilità hardware
    3.3.4. Impostazione della rete

3.4. Requisiti hardware minimi
3.5. Prepartizionamento per sistemi ad avvio multiplo

    3.5.1. Partizionare da DOS o Windows

3.6. Configurazione di hardware e sistema operativo prima dell'installazione

    3.6.1. Invocare il menu di configurazione del BIOS
    3.6.2. Selezione del dispositivo di boot
    3.6.3. Opzioni varie del BIOS
    3.6.4. Problemi hardware a cui prestare attenzione

Questo capitolo tratta la preparazione dell'installazione di Debian prima di
attivare l'installatore. Comprende le operazioni di backup dei dati, la
raccolta delle informazioni sul proprio hardware e il recupero di qualsiasi
altra informazione necessaria.

3.1. Panoramica del processo d'installazione

Prima di tutto una nota sulle reinstallazioni. Con Debian, una circostanza in
cui sia necessaria una completa reinstallazione del sistema è estremamente
rara; forse un problema meccanico dei dischi è la causa più frequente.

Molti dei comuni sistemi operativi potrebbero richiedere la completa
installazione quando si verificano dei problemi critici o per fare un
aggiornamento a una nuova versione. A questo si deve aggiungere che si effettua
una nuova installazione è necessario anche re-installare i programmi in modo
che operino correttamente con il nuovo SO.

Con Debian GNU/Linux è molto più probabile che il SO possa essere riparato
anziché essere reinstallato nel caso si verifichino dei problemi. Gli
aggiornamenti non richiedono mai un'installazione completa, è sempre possibile
effettuare l'aggiornamento senza toccare l'intera installazione. Quando un
nuovo programma richiede delle versioni più recenti del software di supporto
rispetto a quelle installate, il sistema Debian di gestione dei pacchetti
assicura che tutto il software di supporto sia identificato e installato. È
stato fatto molto lavoro per evitare la necessità di reinstallare il sistema
quindi deve essere ritenuta come l'ultima risorsa disponibile. L'installatore
non è stato progettato per la reinstallazione su un sistema esistente.

Ecco un sommario dei passi che saranno compiuti durante l'installazione.

 1. Backup di tutti i dati e documenti presenti sul disco fisso su cui si vuole
    fare l'installazione.

 2. Raccolta delle informazioni sul proprio computer e di tutte le informazioni
    necessarie prima di iniziare l'installazione.

 3. Creazione dello spazio partizionabile per Debian sul disco fisso.

 4. Localizzare e/o scaricare l'installatore e tutti driver speciali necessari
    per la propria macchina (tranne per coloro che usano i CD Debian).

 5. Preparazione di nastri/dischetti/chiavette USB per l'avvio, oppure copia
    dei file per l'avvio (la maggior parte degli utenti che usano i CD Debian
    può fare l'avvio da CD).

 6. Avvio del sistema d'installazione.

 7. Scelta della lingua dell'installazione.

 8. Se disponibile, attivazione della connessione alla rete ethernet.

 9. Creazione e montaggio delle partizioni su cui si installerà Debian.

10. Attendere lo scaricamento, l'installazione e la configurazione del sistema
    di base.

11. Installazione di un boot loader per avviare Debian GNU/Linux ed eventuali
    altri sistemi operativi.

12. Avviare per la prima volta il sistema appena installato.

Su Intel x86 è possibile usare una versione grafica del sistema
d'installazione. Per ulteriori informazioni sull'installazione grafica si veda
Sezione D.6, «Installatore grafico».

Nel caso si verifichino degli errori durante l'installazione è utile conoscere
quali pacchetti sono coinvolti in ciascuna fase. Introduciamo gli attori
principali dello spettacolo «installazione»:

Il software d'installazione, debian-installer, è il protagonista principale di
questo manuale. Si occupa del riconoscimento dell'hardware e del caricamento
dei driver corretti, tramite dhcp-client configura la connessione di rete,
esegue debootstrap per l'installazione del sistema di base e infine esegue
tasksel per consentire all'utente l'installazione di altro software. Al
processo d'installazione partecipano molti altri attori ma hanno parti
decisamente minori, il debian-installer finisce il suo lavoro quando il nuovo
sistema viene riavviato per la prima volta.

Per adattare il sistema alle proprie necessità si può usare tasksel che
permette di selezionare gruppi predefiniti di programmi da installare come un
server web o un ambiente desktop.

Una delle scelte importanti durante l'installazione è se installare o no un
ambiente desktop grafico, che consiste nel X11 window system e in uno degli
ambienti desktop disponibili. Se si sceglie di non installare il task «Ambiente
desktop», si ottiene un sistema abbastanza semplice con la sola riga di
comando. L'installazione del task «Ambiente desktop» è opzionale perché
richiede molto spazio su disco e perché molti dei sistemi Debian GNU/Linux sono
dei server e non hanno bisogno di una interfaccia utente grafica per il loro
lavoro.

Notare che il sistema X Window è completamente separato dal debian-installer,
quindi l'installazione e la risoluzione dei problemi per il sistema X Window
non rientrano nello scopo di questo manuale.

3.2. Backup dei dati

Prima di iniziare, assicurarsi di avere il backup di tutti i file presenti
attualmente sul proprio sistema. Se sulla macchina è installato solo il sistema
operativo nativo, con ogni probabilità è necessario ripartizionare il disco per
liberare spazio per Debian GNU/Linux. Ogni volta che si ripartiziona il disco,
si corre il rischio di perdere tutti i dati presenti, non importa quale
programma si usi per farlo. I programmi usati durante l'installazione sono
piuttosto affidabili e la maggior parte sono in circolazione da anni, ma una
mossa falsa può costare cara. Anche dopo aver fatto il backup, fare attenzione
e pensare alle risposte che si danno e a quello che si fa: riflettendo un paio
di minuti in più si possono risparmiare ore di lavoro inutile.

Se si sta creando un sistema a boot multiplo, assicurarsi di avere a portata di
mano i supporti di installazione degli altri sistemi operativi, soprattutto se
si ripartiziona il disco da cui viene avviato il sistema. Potrebbe essere
necessario reinstallare il boot loader del sistema operativo originario o, in
molti casi, l'intero sistema operativo e tutti i file presenti nelle partizioni
interessate.

3.3. Informazioni necessarie

3.3.1. Documentazione

3.3.1.1. Guida all'installazione

Il documento che si sta leggendo, in formato ASCII puro, HTML o PDF.

  ● install.it.txt

  ● install.it.html

  ● install.it.pdf

3.3.1.2. Documentazione hardware

Contiene informazioni utili sulla configurazione o l'utilizzo dell'hardware.

  ● Linux Hardware Compatibility HOWTO

3.3.2. Ricerca d'informazioni sull'hardware

Nella maggior parte dei casi il programma d'installazione è in grado di
riconoscere l'hardware. Comunque è meglio prepararsi, si raccomanda di
familiarizzare con il proprio hardware prima di iniziare l'installazione.

Informazioni sull'hardware possono essere recuperate da:

  ● Manuali che sono venduti insieme a ciascun componente hardware.

  ● Schermate prodotte dal BIOS del computer. Si possono vedere queste
    schermate premendo all'accensione del computer una certa combinazione di
    tasti, vedere nel manuale della scheda madre qual è questa combinazione,
    spesso è il tasto Canc.

  ● Confezioni e scatole dei componenti hardware.

  ● Consultando la finestra Sistema nel Pannello di controllo.

  ● Comandi di sistema oppure programmi di altri sistemi operativi. Queste
    fonti sono particolarmente utili per conoscere la quantità di RAM e la
    capacità del disco fisso.

  ● L'amministratore di sistema o l'Internet Service Provider. Queste fonti
    possono fornire le impostazioni necessarie alla configurazione della rete e
    della posta elettronica.

Tabella 3.1. Informazioni sull'hardware necessarie per l'installazione

┌─────────┬───────────────────────────────────────────────────────────────────┐
│Hardware │                           Informazioni                            │
├─────────┼───────────────────────────────────────────────────────────────────┤
│         │Numero di dischi.                                                  │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Il loro ordine sul sistema.                                        │
│         ├───────────────────────────────────────────────────────────────────┤
│Dischi   │Se sono IDE (noti anche come PATA), SATA o SCSI.                   │
│fissi    ├───────────────────────────────────────────────────────────────────┤
│         │Spazio libero disponibile.                                         │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Partizioni.                                                        │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Partizioni su cui sono installati altri sistemi operativi.         │
├─────────┼───────────────────────────────────────────────────────────────────┤
│         │Modello e produttore.                                              │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Risoluzioni supportate.                                            │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Frequenza di rinfresco orizzontale.                                │
│Monitor  ├───────────────────────────────────────────────────────────────────┤
│         │Frequenza di rinfresco verticale.                                  │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Profondità di colore (numero di colori) supportata.                │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Dimensione dello schermo.                                          │
├─────────┼───────────────────────────────────────────────────────────────────┤
│         │Tipo: seriale, PS/2 o USB.                                         │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Porta.                                                             │
│Mouse    ├───────────────────────────────────────────────────────────────────┤
│         │Produttore.                                                        │
│         ├───────────────────────────────────────────────────────────────────┤
│         │Numero di tasti.                                                   │
├─────────┼───────────────────────────────────────────────────────────────────┤
│         │Modello e produttore.                                              │
│Rete     ├───────────────────────────────────────────────────────────────────┤
│         │Tipo di scheda.                                                    │
├─────────┼───────────────────────────────────────────────────────────────────┤
│         │Modello e produttore.                                              │
│Stampante├───────────────────────────────────────────────────────────────────┤
│         │Risoluzioni di stampa supportate.                                  │
├─────────┼───────────────────────────────────────────────────────────────────┤
│         │Modello e produttore.                                              │
│         ├───────────────────────────────────────────────────────────────────┤
│Scheda   │RAM video disponibile.                                             │
│video    ├───────────────────────────────────────────────────────────────────┤
│         │Risoluzioni e profondità di colore supportate (queste devono essere│
│         │verificate con le capacità del monitor).                           │
└─────────┴───────────────────────────────────────────────────────────────────┘


3.3.3. Compatibilità hardware

Molti prodotti di marca funzionano senza problemi con Linux. Inoltre l'hardware
supportato da Linux cresce quotidianamente anche se, purtroppo, ancora Linux
non funziona su parecchi tipi di hardware su cui invece funzionano altri
sistemi operativi.

In particolare Linux non può funzionare sull'hardware che richiede Windows per
funzionare.

Nonostante che anche l'hardware specifico per Windows possa essere fatto
funzionare sotto Linux, farlo di solito richiede del lavoro aggiuntivo. Inoltre
i driver Linux per l'hardware specifico per Windows sono specifici per una
versione del kernel, quindi diventano rapidamente obsoleti.

I cosiddetti win-modem sono l'esempio più comune di questo tipo di hardware.
Purtroppo esistono stampanti e altro hardware che possono essere specifici per
Windows.

Si può verificare la compatibilità dell'hardware con:

  ● Cercando nel sito web del produttore dei nuovi driver.

  ● Cercando sui siti web o nei manuali informazioni sull'emulazione. I
    prodotti di marchi meno conosciuti qualche volta possono utilizzare i
    driver o le impostazioni di quelli più conosciuti.

  ● Verificando che l'hardware sia presente nell'elenco dell'hardware
    compatibile con Linux pubblicato nei siti web dedicati alla propria
    architettura.

  ● Cercando su Internet le esperienze di altri utenti.

3.3.4. Impostazione della rete

Se il computer ha una connessione permanente alla rete (cioè una connessione
Ethernet o equivalente, non una connessione PPP) si devono chiedere
all'amministratore di sistema le seguenti informazioni:

  ● Il proprio hostname (forse lo si può decidere da soli).

  ● Il proprio nome di dominio.

  ● L'indirizzo IP dell'elaboratore.

  ● La netmask da usare con la propria rete.

  ● L'indirizzo IP del gateway su cui effettuare l'instradamento predefinito,
    se la propria rete ne ha uno.

  ● Il sistema della propria rete da usare come server DNS (Domain Name
    Service).

D'altra parte se il proprio amministratore comunica che è possibile usare un
server DHCP le informazioni precedenti sono inutili poiché il server DHCP le
fornisce direttamente al proprio computer durante il processo d'installazione.

Se si usa una rete wireless si deve anche conoscere:

  ● L'ESSID della propria rete wireless.

  ● La chiave WEP (se usata).

3.4. Requisiti hardware minimi

Dopo aver raccolto le informazioni sull'hardware del proprio computer
verificare che l'hardware sia compatibile con il tipo d'installazione che si ha
in mente.

A seconda delle proprie necessità si potrebbe aver a che fare con qualcosa meno
di quanto raccomandato nella tabella seguente. Comunque, la maggior parte degli
utenti diventa frustrata se ignora questi suggerimenti.

Un Pentium 4, 1 GHz è il sistema minimo raccomandato per un sistema desktop.

Tabella 3.2. Requisiti minimi del sistema raccomandati

┌─────────────────────────┬────────────┬──────────────────┬───────────────┐
│Tipologia d'installazione│RAM (minima)│RAM (raccomandata)│Spazio su disco│
├─────────────────────────┼────────────┼──────────────────┼───────────────┤
│Senza desktop            │64 megabyte │256 megabyte      │1 gigabyte     │
├─────────────────────────┼────────────┼──────────────────┼───────────────┤
│Con desktop              │64 megabyte │512 megabyte      │5 gigabyte     │
└─────────────────────────┴────────────┴──────────────────┴───────────────┘


I reali requisiti minimi di memoria sono leggermente inferiori rispetto ai
valori riportati nella tabella. In base all'architettura è possibile installare
Debian con meno di 20 MB (per s390) o di 48 MB (per i386 e amd64). Lo stesso
vale per i requisiti di spazio su disco, in particolare se si sceglie una per
una le applicazioni da installare; si veda Sezione D.2, «Spazio su disco
necessario per i task» per ulteriori informazioni sui requisiti di spazio su
disco.

Si può usare un ambiente desktop grafico su sistemi più vecchi o meno
performanti ma in questo caso si raccomanda l'installazione di un gestore di
finestre meno avido di risorse rispetto a quelli degli ambienti desktop GNOME o
KDE; delle alternative sono xfce4, icewm e wmaker, ma ne esistono anche altre.

È praticamente impossibile dare dei requisiti di memoria e spazio su disco per
le installazioni server dato che questi valori sono molto legati all'uso finale
del server.

Ricordarsi che le dimensioni specificate non includono tutto ciò che si può
trovare di solito su un sistema, come per esempio i file degli utenti, la posta
e dati vari. La cosa migliore è tenersi larghi, pensando allo spazio necessario
per i propri dati.

Nei seguenti requisiti di sistema è compreso lo spazio su disco richiesto dalle
normali operazioni del sistema operativo Debian GNU/Linux. In particolare, la
partizione /var contiene un sacco di informazioni sullo stato specifiche per
Debian oltre ai normali file con i log. I file di dpkg (che contengono
informazioni su tutti i pacchetti installati) possono facilmente occupare
40 MB. Inoltre apt-get mette i pacchetti scaricati in questa directory prima di
installarli. Di solito si deve assegnare almeno 200 MB a /var, un po' di più se
si installa anche un ambiente desktop grafico.

3.5. Prepartizionamento per sistemi ad avvio multiplo

Il partizionamento del proprio disco consiste semplicemente nel suddividerlo in
sezioni. Ogni sezione è indipendente dalle altre. Grosso modo equivale a tirare
su dei muri in una casa: l'aggiunta dei mobili a una sola stanza non influisce
sulle altre.

Se sul proprio sistema è già presente un sistema operativo (Windows 9x, Windows
NT/2000/XP, OS/2, MacOS, Solaris, FreeBSD, ...) e si vuole posizionare Linux
sullo stesso disco, allora è necessario ripartizionarlo. Debian richiede delle
partizioni riservate sul disco fisso, non può essere installata su partizioni
Windows o MacOS. Si potrebbero invece condividere alcune partizioni con altri
sistemi Linux, ma tale questione non verrà affrontata in questo documento. Come
minimo è necessaria una partizione dedicata per la root di Debian.

Si possono ottenere delle informazioni sull'attuale configurazione delle
partizioni usando un programma per il partizionamento per il sistema operativo
che si sta attualmente usando, per esempio fdisk o PartitionMagic. I programmi
di partizionamento forniscono sempre un modo per visualizzare le partizioni
esistenti senza effettuare delle modifiche.

In generale, modificare una partizione che contiene già un file system
distruggerà qualsiasi informazione preesistente. Perciò di dovrebbe sempre fare
il backup prima di procedere a qualunque ripartizionamento. Continuando ad
usare l'analogia della casa, è opportuno spostare tutti i mobili prima di
procedere alla demolizione e ricostruzione di un muro, altrimenti si rischia di
distruggerli.

Se la propria macchina ha più di un disco fisso, si potrebbe voler dedicarne
uno completamente a Debian. In tal caso non c'è bisogno di partizionare tale
disco prima di avviare il sistema d'installazione, l'installatore comprende un
programma di partizionamento che può svolgere tranquillamente tale compito.

Anche nel caso in cui la propria macchina abbia un solo disco fisso, se si
vuole rimpiazzare completamente l'attuale sistema operativo con Debian GNU/
Linux si può aspettare e partizionare il disco come parte del processo
d'installazione (Sezione 6.3.2, «Partizionamento e selezione del punto di
mount»), dopo aver avviato il sistema d'installazione. Questo è possibile solo
se si è programmato di fare l'avvio del sistema d'installazione da dischetti,
CD-ROM o file su una macchina connessa in rete. Infatti se si fa l'avvio da
file posti sul disco fisso per poi partizionarlo durante il processo
d'installazione (cancellando in tal modo i file di avvio), è meglio sperare che
l'installazione vada a buon fine al primo colpo. In questa situazione come
minimo si dovrebbero avere dei sistemi alternativi per rimettere eventualmente
in sesto la macchina, come ad esempio i dischetti o i CD d'installazione del
sistema operativo originario.

Anche nel caso in cui la macchina sia già dotata di più d'una partizione e si
possa ottenere lo spazio sufficiente cancellando e rimpiazzando una o più di
esse, si può aspettare e utilizzare il programma di partizionamento
dell'installatore Debian. Si dovrebbe comunque leggere quanto segue, perché ci
potrebbero essere delle circostanze particolari, come l'ordine delle partizioni
esistenti all'interno della mappa delle partizioni, che rendono obbligatorio il
ripartizionamento del disco prima di procedere all'installazione.

Se sulla propria macchina c'è un filesystem FAT o NTFS, usati da DOS e Windows,
si può aspettare e utilizzare il programma di partizionamento all'interno
dell'Installatore Debian per ridimensionare il filesystem.

In tutti gli altri casi, è necessario partizionare il disco fisso prima di
iniziare l'installazione per creare spazio per Debian. Se alcune delle
partizioni serviranno ad altri sistemi operativi, vanno create usando i
programmi di partizionamento del sistema operativo nativo. Si raccomanda di non
tentare la creazione di partizioni per Debian GNU/Linux usando i programmi di
altri sistemi operativi. Piuttosto si dovrebbe creare solo la partizione (o le
partizioni) che si vuole riservare al sistema nativo.

Se si vuole installare più di un sistema operativo sulla stessa macchina si
dovrebbe installare tutti gli altri sistemi prima di procedere con
l'installazione di Linux. L'installazione di Windows e di altri SO potrebbero
distruggere la capacità di avviare Linux oppure incoraggiare la formattazione
delle partizioni non native.

Queste operazioni possono essere ripristinate o evitate, ma facendo prima
l'installazione dei sistemi nativi si evitano parecchi problemi.

Se attualmente si dispone di un solo disco fisso con una sola partizione (una
situazione comune nei desktop) e si vuole un sistema ad avvio multiplo con il
sistema operativo nativo e Debian, si deve:

 1. Fare il backup di qualunque file utile presente nel sistema.

 2. Avviare il sistema dai supporti d'installazione del sistema operativo
    nativo, ad esempio CD-ROM o dischetti.

 3. Usare i programmi di partizionamento nativi per creare le partizioni per il
    sistema nativo. Lasciare una partizione segnaposto o dello spazio libero
    per Debian GNU/Linux.

 4. Installare il sistema operativo nativo nella sua nuova partizione.

 5. Avviare il sistema con il s.o. nativo per verificare che sia tutto a posto
    e scaricare i file di boot dell'installatore Debian.

 6. Avviare il sistema con l'Installatore Debian per continuare l'installazione
    di Debian.

3.5.1. Partizionare da DOS o Windows

Se si stanno manipolando partizioni FAT o NTFS esistenti, si raccomanda di
usare lo schema seguente, oppure di farlo con programmi nativi per Windows o
DOS. A parte ciò, non è necessario partizionare da DOS o Windows: i programmi
di partizionamento Linux serviranno egregiamente allo scopo.

Se si dispone di un disco IDE di grandi dimensioni e non si usa
l'indirizzamento LBA, non si usano dei driver addizionali (forniti a volte dai
costruttori) oppure non si usa un BIOS recente (successivo al 1998) che
supporta le estensioni per l'accesso ai dischi di grandi dimensioni, allora si
deve prestare molta attenzione a dove si posiziona la partizione di boot
Debian. In tale caso la partizione di boot dovrà infatti trovarsi entro i primi
1024 cilindri del disco (di solito circa 524 MB, senza traduzione da parte del
BIOS). Ciò potrebbe implicare lo spostamento di una partizione FAT o NTFS
esistente.

3.5.1.1. Ripartizionare senza perdite di dati partendo da DOS, Win-32 o OS/2

Uno dei casi d'installazione più comuni è partire da un sistema che contiene
già DOS (incluso Windows 3.1), Win32 (Windows 95, 98, NT, 2000, XP) o OS/2 e
aggiungere Debian sullo stesso disco, senza distruggere il sistema esistente.
Si noti che il programma d'installazione è in grado di ridimensionare i
filesystem FAT e NTFS normalmente usati da DOS e Windows. È sufficiente avviare
l'installatore e quando si deve partizionare il disco, scegliere il
partizionamento Manuale quindi selezionare la partizione da ridimensionare e
specificare la sua nuova dimensione. Quindi in molti casi non è necessario
usare il metodo descritto in seguito.

Prima di proseguire, si deve decidere come suddividere il disco. Il metodo
descritto in questa sezione suddividerà solamente in due una partizione. Una
conterrà il S.O. originale, l'altra potrà essere usata per Debian. Durante
l'installazione di Debian si può scegliere di usare la porzione del disco
riservata a Debian a propria discrezione, come partizione di swap o come
filesystem.

L'idea di fondo è spostare tutti i dati presenti nella partizione al suo inizio
prima di cambiare le dimensioni della partizione, in modo che non venga perso
nulla. È importante evitare operazioni che coinvolgano il disco tra lo
spostamento dei dati e il ripartizionamento, per minimizzare la possibilità che
un file venga scritto vicino alla fine della partizione, dato che questo
diminuirebbe lo spazio libero che potete ricavare da essa.

La prima cosa che serve è una copia di fips, ottenibile dalla directory tools/
del mirror Debian più vicino. Decomprimere l'archivio e copiare i file
RESTORRB.EXE, FIPS.EXE e ERRORS.TXT su un dischetto avviabile. Il dischetto può
essere reso avviabile usando il comando sys a: sotto DOS. fips è corredato da
un'ottima documentazione a cui sarebbe meglio dare un'occhiata. È
indispensabile leggerla se si utilizza un driver per la compressione del disco
o un disk manager. Creare il dischetto e leggere la documentazione prima di
deframmentare il disco.

Il passo successivo è spostare tutti i dati all'inizio della partizione; defrag
, incluso in DOS 6.0 e successivi, può farlo con facilità. Nella documentazione
di fips è presente un elenco di altri programmi in grado di svolgere questa
operazione. Attenzione: se si usa Windows 95 si deve lanciare defrag dal
sistema grafico e non da DOS, dato che DOS non lavora correttamente con VFAT,
usato da Windows 95 e successivi in quanto supporta i nomi di file lunghi.

Dopo aver eseguito la deframmentazione (che può richiedere parecchio tempo con
un disco di grandi dimensioni), riavviare la macchina con il dischetto creato
in precedenza e contenente fips inserito nel lettore. Digitare semplicemente a:
\fips e seguire le istruzioni.

Ci sono molti altri programmi per la gestione delle partizioni che possono
servire allo scopo se fips non fosse adatto alle proprie necessità.

3.5.1.2. Partizionare per l'uso in DOS

Se si partizionano dischi DOS o si modificano le dimensioni di partizioni DOS
con programmi Linux, si deve sapere che molti hanno avuto problemi a lavorare
con le partizioni FAT ottenute. Per esempio, sono stati riportati peggioramenti
delle prestazioni, problemi con scandisk o altri errori misteriosi in DOS o
Windows.

Apparentemente, ogni volta che si crea o si ridimensiona una partizione che
verrà usata in DOS è buona idea riempire di zero alcuni settori iniziali.
Questa operazione dovrebbe essere fatta, prima di lanciare il comando DOS
format, da Linux eseguendo questo comando:

# dd if=/dev/zero of=/dev/hdXX bs=512 count=4

3.6. Configurazione di hardware e sistema operativo prima dell'installazione

Questa sezione guida il lettore attraverso la riconfigurazione dell'hardware
che in alcuni casi potrebbe essere necessaria prima di installare Debian.
Generalmente si tratta di controllare e, nel caso, di modificare le
impostazioni del firmware del proprio sistema. Il «firmware» è il software
essenziale usato dall'hardware. Ne viene fatto un utilizzo critico durante il
processo di bootstrap (che segue l'accensione). Verranno anche evidenziati
problemi noti con hardware particolare che potrebbero incidere
sull'affidabilità di Debian GNU/Linux.

3.6.1. Invocare il menu di configurazione del BIOS

Il BIOS fornisce le funzioni di base necessarie al boot della macchina e
permette al sistema operativo di accedere all'hardware. Il sistema
probabilmente è dotato di un apposito menu di configurazione del BIOS. Prima di
iniziare l'installazione è necessario assicurarsi che il BIOS sia configurato
correttamente, non farlo potrebbe causare blocchi intermittenti o
l'impossibilità di installare Debian.

Il resto della sezione è copiato dalla http://www.faqs.org/faqs/pc-hardware-faq
/part1/, precisamente dalla risposta a alla domanda «come entrare nel menu di
configurazione del CMOS?». Il modo per accedere al menu di configurazione del
BIOS (o «CMOS») dipende da chi ha scritto il software:

AMI BIOS

    Premere il tasto Canc durante il POST (power on self test) [fase di test
    successiva all'accensione della macchina NdT]

Award BIOS

    Premere Ctrl+Alt+Esc o il tasto Canc durante il POST

DTK BIOS

    Premere il tasto Esc durante il POST

IBM PS/2 BIOS

    Premere Ctrl+Alt+Ins dopo Ctrl+Alt+Canc

Phoenix BIOS

    Premere Ctrl+Alt+Esc, Ctrl+Alt+S o F1

Informazioni su come invocare altre routine BIOS possono essere trovate in
http://www.tldp.org/HOWTO/Hard-Disk-Upgrade/install.html.

Alcune macchine Intel x86 non hanno un menu di configurazione nel BIOS.
Richiedono invece l'esecuzione di un programma apposito di configurazione. Se
non si dispone dei dischetti d'installazione o di diagnostica della macchina,
si può provare con un programma shareware o freeware. Provare a cercare in ftp:
//ftp.simtel.net/pub/simtelnet/msdos/.

3.6.2. Selezione del dispositivo di boot

Molti menu di configurazione del BIOS permettono di scegliere il dispositivo da
cui verrà fatto il bootstrap del sistema. Modificare le impostazioni affinché
venga cercato un sistema operativo avviabile prima su A: (il primo lettore di
dischetti), quindi opzionalmente sul primo lettore CD-ROM (può darsi figuri
come D: o E:), infine sul primo disco fisso, C:. Tali impostazioni
permetteranno di avviare il sistema da un dischetto o da un CD-ROM, i due modi
più comuni per installare Debian.

Se si dispone di un controller SCSI recente e un lettore CD collegato ad esso,
si dovrebbe essere in grado di avviare il sistema da CD-ROM. Tutto ciò che si
deve fare è abilitare il boot da CD nel BIOS del controller SCSI.

Un'altra possibilità molto comune è fare l'avvio da una memoria di massa USB
(spesso chiamata penna USB o chiavetta USB). Alcuni BIOS possono fare
direttamente l'avvio da dispositivi USB mentre altri no, potrebbe essere
necessario configurare il BIOS in modo che faccia l'avvio da «Disco rimovibile»
o da «USB-ZIP» per fare l'avvio dal dispositivo USB.

Di seguito sono forniti alcuni suggerimenti su come configurare l'ordine di
avvio. Ricordarsi di ripristinare l'ordine originale una volta conclusa
l'installazione di Linux, in modo da continuare ad avviare la macchina dal
disco fisso.

3.6.2.1. Modifica dell'ordine di avvio su macchine IDE

 1. All'accensione del computer premere i tasti per entrare nella utility di
    configurazione del BIOS, spesso si utilizza il tasto Canc. Si consulti la
    documentazione dell'hardware per conoscere la giusta combinazione di tasti.

 2. Cercare nella utility di configurazione dove si imposta la sequenza
    d'avvio. La sua posizione dipende dal BIOS, si deve cercare un campo in cui
    sono elencati i dischi.

    Dei valori comuni sulle macchine IDE sono C, A, cdrom oppure A, C, cdrom.

    C è il disco fisso e A è il lettore dei dischetti.

 3. Modificare la sequenza di avvio in modo da dare precedenza al CD-ROM oppure
    al lettore dei dischetti. Di solito è possibile scorrere le scelte
    possibili con i tasti Pag su oppure Pag giù.

 4. Salvare le modifiche. Sullo schermo ci sono le istruzioni da seguire per
    rendere effettive le modifiche.

3.6.2.2. Modifica dell'ordine di avvio su macchine SCSI

 1. All'accensione del computer premere i tasti per entrare nella utility di
    configurazione SCSI.

    Si può avviare l'utility di configurazione SCSI dopo il controllo della
    memoria e dopo che è apparso sullo schermo il messaggio che indica come
    come avviare l'utility di configurazione del BIOS.

    La combinazione di tasti dipende dall'utility. Spesso si utilizza Ctrl+F2.
    Si consulti la documentazione dell'hardware per conoscere la giusta
    combinazione di tasti.

 2. Cercare nella utility di configurazione dove si imposta la sequenza
    d'avvio.

 3. Con l'utility fare in modo che l'ID SCSI del lettore CD sia il primo della
    lista.

 4. Salvare le modifiche. Sullo schermo ci sono le istruzioni da seguire per
    rendere effettive le modifiche. Spesso si deve premere F10.

3.6.3. Opzioni varie del BIOS

3.6.3.1. Impostazione del CD-ROM

Alcuni BIOS (ad esempio quelli Award) permettono di impostare automaticamente
la velocità del lettore CD. Si dovrebbe evitare di farlo e impostare piuttosto,
per dire, la velocità più bassa; se si ottengono dei messaggi d'errore seek
failed il problema potrebbe nascere da questo.

3.6.3.2. Memoria estesa contro memoria espansa

Se il sistema fornisce sia memoria estesa che espansa, impostatelo in modo che
ci sia quanta più memoria estesa e quanta meno memoria espansa possibile. Linux
infatti richiede la prima e non è in grado di usare la seconda.

3.6.3.3. Protezione dai virus

Disabilitare qualunque funzionalità di protezione dai virus fornita dal BIOS.
Se si dispone di una scheda di protezione dai virus o altro hardware speciale,
assicurarsi che sia disabilitato oppure rimuoverlo fisicamente mentre si
utilizza GNU/Linux, dato che non sono compatibili. Per giunta, grazie ai
permessi sul filesystem e alla memoria protetta del kernel, i virus su Linux in
pratica non esistono^[5].

3.6.3.4. La RAM shadow

La scheda madre potrebbe supportare la RAM shadow o il caching del BIOS, in tal
caso si possono vedere delle opzioni tipo «Video BIOS Shadow», «C800-CBFF
Shadow», ecc. Disabilitate tutte le impostazioni relative alla RAM shadow:
viene usata per accelerare l'accesso alle ROM della scheda madre e di alcuni
controller. Linux una volta avviato non usa queste ROM, che contengono
programmi a 16 bit, ma il suo software a 32 bit, più veloce. Disabilitare la
RAM shadow può renderne almeno una parte disponibile ai programmi come normale
memoria. Lasciarla abilitata d'altrocanto può ostacolare l'accesso di Linux ai
dispositivi hardware.

3.6.3.5. La «memory hole»

Se il BIOS presenta un'opzione tipo «15-16 MB Memory Hole», va disabilita.
Linux si aspetta di trovarci della memoria, se si dispone di RAM sufficiente.

Secondo un resoconto, pare ci siano schede madri Intel Endeavor che presentano
un'opzione chiamata «LFB» («Linear Frame Buffer»). Essa ha due valori
possibili: «Disabled» e «1 Megabyte». Deve essere impostata a «1 Megabyte». Se
disabilitata, il dischetto d'installazione non viene letto correttamente e il
sistema si blocca. Al momento della presente stesura non sappiamo cosa accada
con questa particolare scheda, sappiamo che funziona correttamente solo con
tale impostazione.

3.6.3.6. Gestione energetica avanzata (Advanced Power Management)

Se la scheda madre ha il supporto per l'Advanced Power Management (APM), deve
essere configurato in modo che esso controlli la gestione energetica.
Disabilitare le modalità doze, standby, suspend, nap e sleep. Disabilitare
inoltre il timer di spegnimento del disco fisso. Linux può assumere il
controllo di queste modalità e fare un lavoro migliore del BIOS.

3.6.4. Problemi hardware a cui prestare attenzione

Tastiere e BIOS USB.  Se non si dispone di una tastiera AT e si ha solo una
tastiera USB potrebbe essere necessario attivare nella configurazione del BIOS
l'emulazione di tastiera AT. Questa configurazione deve essere fatta solo se il
sistema d'installazione non riesce a usare la tastiera in modalità USB. Al
contrario (in particolare sui portatili) potrebbe essere necessario disattivare
il supporto per USB se la tastiera non risponde. Si consulti il manuale della
scheda madre cercando le voci «Legacy keyboard emulation» o «USB keyboard
support».


━━━━━━━━━━━━━━

^[5] Dopo l'installazione è possibile abilitare la protezione del Boot Sector,
se si vuole. La cosa non offre alcuna sicurezza aggiuntiva in Linux, ma se si
usa anche Windows potrebbe prevenire una catastrofe. Dopo aver installato il
boot manager non c'è alcun motivo di andare a toccare il Master Boot Record
(MBR).

Capitolo 4. Recupero dei supporti per l'installazione

Sommario

4.1. Set ufficiale di CD-ROM Debian GNU/Linux
4.2. Recupero dei file dai mirror Debian

    4.2.1. Dove trovare le immagini per l'installazione

4.3. Preparazione dei file per l'avvio da chiavetta USB

    4.3.1. Copia dei file -- il modo semplice
    4.3.2. Copia dei file -- il modo flessibile
    4.3.3. Avvio da chiavetta USB

4.4. Preparazione dei file per l'avvio da disco fisso

    4.4.1. Avvio dell'installatore da disco fisso con LILO o GRUB

4.5. Preparazione dei file per l'avvio TFTP da rete

    4.5.1. Attivazione di un server BOOTP
    4.5.2. Attivazione di un server DHCP
    4.5.3. Attivazione di un server TFTP
    4.5.4. Posizionamento delle immagini TFTP

4.6. Installazione automatizzata

    4.6.1. Installazione automatizzata usando l'Installatore Debian

4.1. Set ufficiale di CD-ROM Debian GNU/Linux

Da sempre il modo più semplice per installare Debian GNU/Linux è usare un set
ufficiale di CD-ROM Debian. Si può comprare il set da uno dei distributori (si
consulti la pagina dei distributori di CD); se invece si dispone di una
connessione veloce alla rete e di un masterizzatore è possibile scaricare le
immagini dei CD-ROM da uno dei mirror Debian e creare il proprio set (si
consultino le istruzioni nella pagina dei CD Debian). Se si possiede il set di
CD Debian e se è possibile avviare la macchina da CD, si può passare
direttamente a Capitolo 5, Avvio del sistema d'installazione; è stato fatto un
lavoro molto accurato per assicurare che i file necessari alla maggioranza
degli utenti si trovino sul CD. Nonostante l'insieme completo dei pacchetti
binari richieda parecchi CD è veramente raro che si abbia bisogno di pacchetti
presenti sul terzo CD o su uno dei CD successivi. È anche possibile usare la
versione su DVD che permette di risparmiare molto spazio sul proprio scaffale e
di evitare fastidiosi sparpagliamenti di CD.

Se la propria macchina non supporta l'avvio da CD ma si possiede un set di CD è
possibile usare una strategia alternativa come disco fisso, chiavetta USB,
avvio da rete, oppure caricare manualmente il kernel dal CD per avviare il
sistema di installazione. Sul CD ci sono anche i file necessari per l'avvio da
altri supporti. La struttura dell'archivio Debian in rete e quella delle
cartelle sul CD sono identiche, quindi i percorsi a specifici file necessari
per l'avvio forniti di seguito sono cercati all'interno della stessa directory
o sottodirectory sul proprio CD.

Una volta che l'installatore è partito, è in grado di recuperare tutti gli
altri file necessari dal CD.

Se non si possiede un set di CD è necessario scaricare i file dell'installatore
e copiarli su un disco fisso, una chiavetta USB, un computer in rete, in modo
da essere usati per avviare l'installatore.

4.2. Recupero dei file dai mirror Debian

Per scoprire qual è il mirror più vicino (e quindi probabilmente il più veloce)
si consulti l'elenco dei mirror Debian.

Quando si scaricano via FTP dei file da un mirror Debian assicurarsi di
scaricare in modalità binaria e non in modalità testo o automatica.

4.2.1. Dove trovare le immagini per l'installazione

Le immagini per l'installazione sono su tutti i mirror Debian nella directory
debian/dists/lenny/main/installer-i386/current/images/; in MANIFEST sono
elencate tutte le immagini e il loro scopo.

4.3. Preparazione dei file per l'avvio da chiavetta USB

Quando si utilizza l'avvio da una chiavetta USB sono disponibili due metodi
d'installazione. Il primo consiste nell'installazione completa da rete; il
secondo è copiare l'immagine di un CD sulla chiavetta USB e utilizzarla come
sorgente per i pacchetti (se possibile insieme a un mirror). Il secondo metodo
è quello più comune.

Con il primo metodo d'installazione è necessario scaricare l'immagine
dell'installatore dalla directory netboot (nella posizione specificata in
Sezione 4.2.1, «Dove trovare le immagini per l'installazione») e utilizzare il
«modo flessibile» spiegato in seguito per copiare i file sulla chiavetta USB.

Le immagini per l'installazione con il secondo metodo possono essere trovate
nella directory hd-media e per copiarle sulla chiavetta USB si può usare il
«modo semplice» oppure il «modo flessibile». Per questo metodo d'installazione
è necessario anche scaricare l'immagine del CD. L'immagine per l'installazione
e l'immagine del CD devono appartenere allo stesso rilascio di
debian-installer; se non corrispondono, si possono avere degli errori^[6]
durante l'installazione.

Per preparare la chiavetta USB è necessario un sistema GNU/Linux con supporto
USB già funzionante. Con gli attuali sistemi GNU/Linux la chiavetta USB
dovrebbe essere riconosciuta appena viene inserita. Se questo non accade,
controllare che il modulo del kernel usb-storage sia stato caricato.
All'inserimento, la chiavetta USB viene mappata su un device con nome /dev/sdX,
dove «X» è una lettera nell'intervallo a-z. È possibile vedere su quale device
è stata mappata la chiavetta USB usando il comando dmesg dopo averla inserita.
Per scrivere sulla chiavetta potrebbe essere necessario disattivare la
protezione dalla scrittura.

Avvertimento

La procedura descritta in questa sezione distrugge qualunque cosa sia presente
sul device, fare attenzione a usare il nome corretto per il device della
chiavetta USB. Se si usa il device sbagliato, potrebbe accadere, per esempio,
di perdere tutte le informazioni su un disco fisso.

Notare che la chiavetta USB deve essere da almeno 256 MB (è possibile fare
anche installazioni più piccole seguendo Sezione 4.3.2, «Copia dei file -- il
modo flessibile»).

4.3.1. Copia dei file -- il modo semplice

C'è un file all-in-one hd-media/boot.img.gz che contiene non solo tutti i file
dell'installatore (kernel compreso) ma anche syslinux e il suo file di
configurazione.

Notare che, nonostante la sua comodità, questo metodo ha lo svantaggio che la
dimensione logica del device è limitata a 256 MB anche quando la capacità della
chiavetta USB è superiore. Per poter ripristinare la capacità reale della
chiavetta USB è necessario ripartizionarla e creare dei nuovi filesystem. Un
altro svantaggio è che sulla chiavetta USB non è possibile copiare l'immagine
di un CD completo, si possono copiare solo le immagini businesscard e netinst.

Per utilizzare questa immagine è sufficiente estrarla direttamente sulla
chiavetta USB:

# zcat boot.img.gz > /dev/sdX

Poi montare la chiavetta USB (mount /dev/sdX /mnt), che adesso avrà un
filesystem FAT, e copiarci l'immagine ISO netinst o businesscard Debian. Infine
smontare la chiavetta (umount /mnt).

4.3.2. Copia dei file -- il modo flessibile

Se si preferisce avere più flessibilità o semplicemente si vuole capire cosa si
sta facendo si deve usare questo metodo per scrivere i file sulla chiavetta.
Uno dei vantaggi di questo metodo è quello che se la chiavetta USB è
sufficientemente capiente, è possibile copiarci l'immagine di un CD completo.

4.3.2.1. Partizionamento della chiavetta USB

Verrà spiegato come preparare la chiavetta per usare solo la prima partizione
anziché l'intero dispositivo.

Nota

Poiché la maggior parte delle chiavette USB viene venduta con una singola
partizione FAT16 già configurata, probabilmente non è necessario ripartizionare
o riformattare la chiavetta. Per ripartizionare ugualmente la chiavetta usare
cfdisk o un qualsiasi altro programma di partizionamento per creare una
partizione FAT16 e poi crearci un filesystem usando:

# mkdosfs /dev/sdX1

Fare attenzione a usare il nome di device della chiavetta USB. Il comando
mkdosfs è contenuto nel pacchetto Debian dosfstools.

Per far partire il kernel dopo aver avviato da un chiavetta USB è necessario
mettere un bootloader sulla chiavetta. Nonostante il fatto che qualsiasi
bootloader (p.e. lilo) dovrebbe funzionare è più comodo usare syslinux dato che
utilizza una partizione FAT16 e può essere riconfigurato semplicemente
modificando un file di testo. Qualsiasi sistema operativo con supporto per il
filesystem FAT può essere usato per fare delle modifiche alla configurazione
del bootloader.

Per collocare syslinux sulla partizione FAT16 della chiavetta USB installare i
pacchetti syslinux e mtools ed eseguire:

# syslinux /dev/sdX1

Di nuovo fare attenzione a usare il nome corretto del device. La partizione non
deve essere montata quando si avvia SYSLINUX, la procedura scrive il settore di
avvio sulla partizione e crea il file ldlinux.sys che contiene il codice del
bootloader.

4.3.2.2. Aggiunta dell'immagine dell'installatore

Montare la partizione (mount /dev/sdX1 /mnt) e copiare i seguenti file con
l'immagine dell'installatore sulla chiavetta:

  ● vmlinuz (kernel)

  ● initrd.gz (immagine del ramdisk iniziale)

È possibile sceglie se usare la versione dell'installatore tradizionale o
quella grafica. Quest'ultima può essere trovata nella sottodirectory gtk. Se si
vuole rinominare questi file ricordarsi che syslinux può gestire solo nomi di
file in formato DOS (8.3).

Poi è necessario creare il file di configurazione syslinux.cfg, che deve
contenere almeno le seguenti due righe:

default vmlinuz
append initrd=initrd.gz

Per utilizzare l'installatore grafico si deve aggiungere video=vesa:ywrap,mtrr
vga=788 alla seconda riga.

Se si è utilizzato un'immagine hd-media, adesso si deve copiare un'immagine ISO
Debian (businesscard, netinst o l'immagine di un CD completo; assicurarsi di
sceglierne una che entra) sulla chiavetta. Una volta finita la copia, smontare
la chiavetta USB (umount /mnt).

4.3.3. Avvio da chiavetta USB

Avvertimento

Se il proprio sistema rifiuta di partire dalla chiavetta, la chiavetta potrebbe
contenere un MBR (master boot record) non valido. Per risolvere questo problema
usare il comando install-mbr contenuto nel pacchetto mbr:

# install-mbr /dev/sdX

4.4. Preparazione dei file per l'avvio da disco fisso

L'installatore può essere fatto partire usando i file d'avvio scritti su una
partizione già esistente del disco fisso, lanciandoli da un altro sistema
operativo o richiamando un bootloader direttamente dal BIOS.

Usando questo metodo è possibile realizzare una installazione completa
puramente da rete evitando tutte le noie dei supporti rimovibili come la
ricerca e la masterizzazione delle immagini dei CD o la lotta con troppi e
inaffidabili dischetti.

L'installatore non può essere avviato usando file su un filesystem NTFS.

4.4.1. Avvio dell'installatore da disco fisso con LILO o GRUB

Questa sezione spiega come aggiungere o sostituire una installazione di Linux
esistente usando LILO o GRUB.

All'avvio entrambi i bootloader supportano il caricamento in memoria non solo
del kernel ma anche di un'immagine del disco. Questo RAM disk può essere usato
come filesystem di root dal kernel.

Copiare i seguenti file dagli archivi Debian in una directory del proprio disco
fisso, per esempio /boot/newinstall/.

  ● vmlinuz (kernel)

  ● initrd.gz (immagine del ramdisk)

Infine, per configurare il bootloader procedere con Sezione 5.1.3, «Avvio di
Linux usando LILO o GRUB».

4.5. Preparazione dei file per l'avvio TFTP da rete

Se la propria macchina è connessa a una rete locale allora è possibile avviarla
tramite TFTP da un'altra macchina. Se si vuole avviare il sistema
d'installazione da un'altra macchina è necessario che i file d'avvio siano
contenuti in particolari directory di questa macchina e che sia configurata per
gestire l'avvio della propria macchina.

È necessario attivare un server TFTP e, per più macchine un server DHCP o un
server BOOTP.

BOOTP è un protocollo IP che comunica a un computer qual è il proprio indirizzo
IP e dove può recuperare dalla rete un'immagine per l'avvio. Il DHCP (Dynamic
Host Configuration Protocol) è una estensione più flessibile ma compatibile
all'indietro di BOOTP. Alcuni sistemi possono essere configurati solo tramite
DHCP.

Il TFTP (Trivial File Transfer Protocol) è usato per fornire l'immagine di
avvio al client. Teoricamente si può usare un qualsiasi server, su qualsiasi
architettura che implementi questo protocollo. Negli esempi di questa sezione
sono presentati i comandi per SunOS 4.x, SunOS 5.x (noti come Solaris) e GNU/
Linux.

Nota

Per usare il metodo di avvio PXE (Pre-boot Execution Environment) di TFTP è
necessario un server TFTP con supporto per tsize. Su Debian GNU/Linux questo
tipo di server è contenuto nei pacchetti atftpd e tftpd-hpa; si consiglia l'uso
di quest'ultimo.

4.5.1. Attivazione di un server BOOTP

Per GNU/Linux sono disponibili due server BOOTP. Il primo è bootpd di CMU,
l'altro è un server DHCP: dhcpd di ISC. Questi server sono rispettivamente
contenuti nei pacchetti Debian GNU/Linux bootp e dhcp3-server.

Per usare bootpd di CMU è necessario togliere i commenti (o aggiungere) la
relativa riga in /etc/inetd.conf. Su Debian GNU/Linux è possibile usare
update-inetd --enable bootps e poi /etc/init.d/inetd reload per fare questa
operazione. Solo nel caso in cui il proprio server BOOTP non sia Debian, la
riga in questione dovrebbe essere simile a questa:

bootps  dgram  udp  wait  root  /usr/sbin/bootpd  bootpd -i -t 120

Adesso è necessario creare il file /etc/bootptab. Questo file ha lo stesso
formato criptico dei file printcap, termcap e disktab di BSD. Vedere la pagina
di manuale di bootptab per maggiori informazioni. Per bootpd di CMU è
necessario conoscere qual è l'indirizzo hardware (MAC) del client. Questo è un
esempio di /etc/bootptab:

client:\
  hd=/tftpboot:\
  bf=tftpboot.img:\
  ip=192.168.1.90:\
  sm=255.255.255.0:\
  sa=192.168.1.1:\
  ha=0123456789AB:

È necessario cambiare almeno l'opzione «ha» che specifica l'indirizzo hardware
del client. L'opzione «bf» specifica quale file deve essere recuperato dal
client tramite TFTP; si consulti Sezione 4.5.4, «Posizionamento delle immagini
TFTP» per ulteriori dettagli.

Al contrario l'impostazione di BOOTP con dhcpd di ISC è veramente semplice
poiché tratta i client BOOTP come un caso moderatamente speciale dei client
DHCP. Alcune architetture richiedono una complessa configurazione dei client
per l'avvio con BOOTP, se si possiede una di queste leggere la sezione
Sezione 4.5.2, «Attivazione di un server DHCP». In caso contrario per
proseguire è sufficiente aggiungere la direttiva allow bootp al blocco di
configurazione della subnet a cui appartiene il client e riavviare dhcpd usando
/etc/init.d/dhcpd3-server restart.

4.5.2. Attivazione di un server DHCP

Un server DHCP libero è dhcpd di ISC. In Debian GNU/Linux si raccomanda il
pacchetto dhcp3-server. Segue un esempio del file di configurazione per questo
server (di solito /etc/dhcp3/dhcpd.conf):

option domain-name "example.com";
option domain-name-servers ns1.example.com;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
server-name "servername";

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.200 192.168.1.253;
  option routers 192.168.1.1;
}

host clientname {
  filename "/tftpboot/tftpboot.img";
  server-name "servername";
  next-server servername;
  hardware ethernet 01:23:45:67:89:AB;
  fixed-address 192.168.1.90;
}

In questo esempio c'è una macchina servername che fa da server DHCP, da server
TFTP e da gateway di rete. Sicuramente è necessario cambiare le opzioni
domain-name, il nome del server e anche l'indirizzo hardware del client. Il
valore dell'opzione filename deve essere il nome del file che verrà recuperato
tramite TFTP.

Dopo aver modificato il file di configurazione di dhcpd riavviarlo con /etc/
init.d/dhcpd3-server restart.

4.5.2.1. Abilitare l'avvio PXE nella configurazione di DHCP

Questo è un altro esempio di dhcp.conf che usa il metodo PXE (Pre-boot
Execution Environment) di TFTP.

option domain-name "example.com";

default-lease-time 600;
max-lease-time 7200;

allow booting;
allow bootp;

# The next paragraph needs to be modified to fit your case
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.200 192.168.1.253;
  option broadcast-address 192.168.1.255;
# the gateway address which can be different
# (access to the internet for instance)
  option routers 192.168.1.1;
# indicate the dns you want to use
  option domain-name-servers 192.168.1.3;
}

group {
  next-server 192.168.1.3;
  host tftpclient {
# tftp client hardware address
  hardware ethernet  00:10:DC:27:6C:15;
  filename "pxelinux.0";
 }
}

Notare che con l'avvio PXE, il nome del file client pxelinux.0 è il bootloader,
non l'immagine del kernel (si consulti Sezione 4.5.4, «Posizionamento delle
immagini TFTP»).

4.5.3. Attivazione di un server TFTP

Per avere un server TFTP pronto all'uso è necessario assicurarsi che tftpd sia
attivo. Di solito viene attivato da una riga simile a questa in /etc/
inetd.conf:

tftp dgram udp wait nobody /usr/sbin/tcpd in.tftpd /tftpboot

Solitamente i pacchetti Debian impostano correttamente il server durante
l'installazione.

Nota

Storicamente i server TFTP hanno usato /tftpboot come directory dalla quale
servire le immagini. Invece, i pacchetti Debian GNU/Linux potrebbero usare una
directory diversa in modo da essere conformi al Filesystem Hierarchy Standard.
Per esempio tftpd-hpa usa /var/lib/tftpboot; potrebbe essere necessario
modificare gli esempi presenti in questa sezione in base alla propria
configurazione.

Cercare all'interno del file /etc/inetd.conf la directory usata come argomento
di in.tftpd e prenderne nota^[7], sarà necessaria in seguito. Se è stato
necessario modificare /etc/inetd.conf si deve passare la nuova configurazione
al processo inetd in esecuzione, su una macchina Debian eseguire /etc/init.d/
inetd reload; su macchine diverse si deve scoprire qual è l'ID del processo
inetd ed eseguire kill -HUP pid-di-inetd.

4.5.4. Posizionamento delle immagini TFTP

Spostare le immagini TFTP di cui si ha bisogno (come descritto in
Sezione 4.2.1, «Dove trovare le immagini per l'installazione») nella directory
delle immagini di avvio per TFTP. Potrebbe essere necessario fare un link da
questa directory al file che tftpd dovrà utilizzare per l'avvio di un
particolare client. Sfortunatamente il nome del file è stabilito dal client
TFTP e non esiste uno standard.

Per l'avvio PXE tutte le operazioni necessarie sono già state fatte in netboot/
netboot.tar.gz. Estrarre questo tarball nella directory delle immagini di avvio
tftpd, assicurarsi che il server dhcp sia configurato per passare pxelinux.0
come file da avviare a tftpd.

4.6. Installazione automatizzata

È possibile effettuare installazioni su parecchi computer attraverso procedure
completamente automatizzate. I pacchetti Debian adatti a questo scopo sono fai
(che usa un server di installazione), replicator, systemimager, autoinstall e
lo stesso Installatore Debian.

4.6.1. Installazione automatizzata usando l'Installatore Debian

L'Installatore Debian supporta le installazioni automatizzate tramite dei file
di preconfigurazione. Un file di preconfigurazione può essere caricato dalla
rete o da un supporto rimovibile ed è usato per rispondere alle domande che
sarebbero normalmente poste durante il processo d'installazione.

La documentazione completa sulla preconfigurazione comprende anche un esempio
funzionante, che è possibile modificare, si trova in Appendice B, Installazione
automatica tramite preconfigurazione.


━━━━━━━━━━━━━━

^[6] Il messaggio d'errore che più frequentemente viene mostrato è che non è
possibile trovare i moduli del kernel. Questo vuol dire che la versione dei
moduli del kernel negli udeb inclusi nell'immagine del CD è diversa dalla
versione del kernel in uso.

^[7] Tutte le versioni di in.tftpd disponibili in Debian registrano le
richieste TFTP sul log di sistema e alcune versioni supportano l'opzione -v per
aumentare la verbosità. In caso di problemi d'avvio, si raccomanda di
verificare i messaggi nel log poiché sono un ottimo punto di partenza per la
diagnosi della causa degli errori.

Capitolo 5. Avvio del sistema d'installazione

Sommario

5.1. Avvio dell'installatore su Intel x86

    5.1.1. Avvio da CD-ROM
    5.1.2. Avvio da Windows
    5.1.3. Avvio di Linux usando LILO o GRUB
    5.1.4. Avvio da chiavetta USB
    5.1.5. Avvio con TFTP
    5.1.6. La schermata di avvio

5.2. Accessibilità

    5.2.1. Display braille USB
    5.2.2. Display braille seriali
    5.2.3. Hardware di sintesi vocale
    5.2.4. Altri dispositivi
    5.2.5. Temi a contrasto elevato

5.3. Parametri di avvio

    5.3.1. Parametri dell'Installatore

5.4. Risoluzione dei problemi del processo d'installazione

    5.4.1. Affidabilità dei CD-ROM
    5.4.2. Configurazione dell'avvio
    5.4.3. Problemi comuni di installazione su Intel x86
    5.4.4. Interpretazione dei messaggi di avvio del kernel
    5.4.5. Segnalazione di problemi con l'installazione
    5.4.6. Invio dei rapporti di installazione

5.1. Avvio dell'installatore su Intel x86

Avvertimento

Se sul proprio sistema è già installato un qualsiasi altro sistema operativo e
si desidera conservarlo (configurazione in dual boot), è necessario accertarsi
che siano stati correttamente spenti prima di avviare l'installatore.
L'installazione di un sistema operativo mentre un altro è in ibernazione (è
stato sospeso su disco) può provocare la perdita o il danneggiamento dello
stato del sistema operativo sospeso e causare problemi quando viene riavviato.

Nota

Le istruzioni per l'avvio della versione grafica dell'installatore sono in
Sezione D.6, «Installatore grafico».

5.1.1. Avvio da CD-ROM

Il metodo più semplice per la maggior parte degli utenti è di servirsi dei CD
Debian. Se si possiedono i CD Debian e se la macchina in uso supporta l'avvio
da CDROM, bene! Si può semplicemente configurare il sistema perché avvii da
CDROM, come descritto in Sezione 3.6.2, «Selezione del dispositivo di boot»,
inserire il CD, riavviare e procedere con il prossimo capitolo.

Notare che alcuni lettori di CD possono richiedere dei driver particolari,
quindi potrebbero non essere accessibili ai primi passi della procedura
d'installazione. Se in effetti la procedura standard non funzionasse sul
computer in uso, questo capitolo contiene alcune informazioni su kernel
alternativi e altri metodi d'installazione che potrebbero funzionare.

Anche se non fosse possibile avviare il computer da CDROM, sarà probabilmente
possibile installare i componenti di Debian e i pacchetti da CDROM. Basterà
avviare la macchina con un altro supporto, come il dischetto e, al momento
dell'installazione del sistema operativo, del sistema di base e dei pacchetti
aggiuntivi, fare puntare la procedura di installazione al CDROM.

Nel caso si riscontrino altri problemi durante l'avvio, si consulti
Sezione 5.4, «Risoluzione dei problemi del processo d'installazione».

5.1.2. Avvio da Windows

Per avviare l'installatore da Windows è necessario usare come supporto per
l'installazione un CD-ROM/DVD-ROM oppure una chiavetta USB come descritto in
Sezione 4.1, «Set ufficiale di CD-ROM Debian GNU/Linux» e Sezione 4.3,
«Preparazione dei file per l'avvio da chiavetta USB».

Se per l'installazione si utilizza un CD-ROM o DVD-ROM, è possibile che il
programma di pre-installazione sia lanciato automaticamente. Se Windows non lo
avvia, oppure se si usa una chiavetta USB, è possibile farlo partire
manualmente accedendo al dispositivo ed eseguendo setup.exe.

Una volta avviato il programma, verranno poste alcune domande preliminari e il
sistema verrà preparato per l'avvio dell'installatore Debian GNU/Linux.

5.1.3. Avvio di Linux usando LILO o GRUB

Per avviare l'installatore dall'hard disk si devono prima scaricare e
posizionare i file necessari come descritto in Sezione 4.4, «Preparazione dei
file per l'avvio da disco fisso».

Se si vuole usare il disco fisso solo per l'avvio e poi scaricare tutto il
resto dalla rete si dovrebbe scaricare il file netboot/debian-installer/i386/
initrd.gz e il relativo kernel netboot/debian-installer/i386/linux. Questo
permette di ripartizionare il disco fisso da cui è stato avviato
l'installatore, anche se questa operazione deve essere fatta con molta
attenzione.

In alternativa, se si vuole lasciare intatta una partizione già esistente sul
disco, si può scaricare il file hd-media/initrd.gz e il relativo kernel e
copiare un'immagine iso di un CD (o di un DVD) sul disco (assicurandosi che il
nome termini in .iso). In questo modo l'installatore si avvia dal disco e
l'installazione avviene usando l'immagine del CD senza la necessità della rete.

Per usare LILO si devono essenzialmente configurare due cose in /etc/lilo.conf:

  ● far caricare all'avvio initrd.gz dell'installatore;

  ● fare in modo che il kernel vmlinuz usi un RAM disk come partizione di root.

Questo è un esempio di /etc/lilo.conf:

image=/boot/newinstall/vmlinuz
       label=newinstall
       initrd=/boot/newinstall/initrd.gz

Per maggiori dettagli si consultino le pagine di manuale di initrd(4) e
lilo.conf(5). Lanciare lilo e riavviare.

La procedura per usare GRUB è abbastanza simile. Trovare il file menu.lst nella
directory /boot/grub/ (oppure in /boot/boot/grub/) e aggiungere una voce per
l'Installatore, per esempio (supponendo che /boot sia sulla prima partizione
del primo disco del sistema):

title  New Install
root   (hd0,0)
kernel /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz

D'ora in poi non ci sono differenze fra GRUB e LILO.

5.1.4. Avvio da chiavetta USB

Una volta che tutto è stato preparato seguendo Sezione 3.6.2, «Selezione del
dispositivo di boot» e Sezione 4.3, «Preparazione dei file per l'avvio da
chiavetta USB» si deve inserire la chiavetta USB in uno qualsiasi dei
connettori USB liberi e riavviare la macchina. Il sistema si dovrebbe avviare e
presentare il prompt boot:. Adesso si possono inserire dei parametri opzionali
oppure premere Invio.

5.1.5. Avvio con TFTP

L'avvio da rete richiede una connessione di rete e un boot server TFTP (DHCP,
RARP o BOOTP).

Il metodo di installazione che supporta l'avvio dalla rete è descritto in
Sezione 4.5, «Preparazione dei file per l'avvio TFTP da rete».

Esistono diversi modi per fare l'avvio da TFTP su i386.

5.1.5.1. Schede di rete (NIC) o schede madri con supporto PXE

È possibile che la scheda di rete o la scheda madre supporti la funzione
d'avvio PXE (PXE è una reimplementazione fatta da Intel (tm) di TFTP), in
questo caso si dovrebbe essere in grado di configurare il BIOS in modo da fare
l'avvio dalla rete.

5.1.5.2. Schede di rete con Network BootROM

È possibile che la propria scheda di rete supporti la funzione d'avvio TFTP.

5.1.5.3. Etherboot

Il progetto etherboot fornisce dischetti d'avvio e bootrom per l'avvio TFTP.

5.1.6. La schermata di avvio

Quando l'installatore parte viene mostrata una schermata con il logo di Debian
e un menu:

Installer boot menu

Install
Graphical install
Advanced options       >
Help

Press ENTER to boot or TAB to edit a menu entry

La voce del menu «Installazione grafica» potrebbe non essere disponibile,
dipende dal metodo di installazione in uso.

Per procedere con una installazione normale, selezionare la voce
«Installazione» o «Installazione grafica» usando i tasti cursore sulla tastiera
oppure il primo carattere (evidenziato) e premere Invio per far partire
l'installatore.

Con la voce «Opzioni avanzate» si accede a un secondo menu dal quale è
possibile far partire l'installatore nelle modalità esperto, ripristino o per
le installazioni automatiche.

Se si desidera oppure si ha la necessità di aggiungere dei parametri di avvio
per l'installatore o per il kernel, premere Tab. Questo fa mostrare il comando
di avvio predefinito relativo alla voce del menu attualmente selezionata e
permette di inserire ulteriori opzioni. Nelle schermate di aiuto (vedi sotto)
sono elencate alcune delle opzioni più comuni. Premere Invio per avviare
l'installatore con le proprie opzioni; con Esc si ritorna al menu di avvio
annullando tutte le modifiche fatte.

Con «Aiuto» viene mostrata la prima schermata di aiuto nella quale è mostrata
una panoramica di tutte le altre schermate di aiuto. Notare che una volta
richiamate le schermate di aiuto non è possibile ritornare al menu principale.
Comunque i comandi elencati nelle schermate F3 e F4 sono equivalenti a quelli
presenti nel menu. In tutte le schermate di aiuto è presente il prompt di avvio
dal quale è possibile inserire il comando:

Press F1 for the help index, or ENTER to boot:

Dal prompt di avvio si può premere Invio per avviare l'installatore con le
opzioni predefinite oppure inserire un particolare metodo di avvio e,
opzionalmente, i parametri di avvio. Un certo numero di parametri di avvio
possono essere trovati nelle varie schermate di aiuto; se si aggiunge dei
parametri di avvio alla riga di comando, assicurarsi di inserire prima il
metodo di avvio (quello predefinito è install) e uno spazio prima del primo
parametro (per esempio, install fb=false).

Nota

A questo punto si suppone che la mappa di tastiera attiva abbia una
disposizione inglese-americano. Questo vuol dire che se la propria tastiera ha
una disposizione diverso (specifico per la propria lingua), può accadere che
mentre si inseriscono i parametri i caratteri che appaiono sullo schermo siano
diversi da quelli che ci si aspetta. Su Wikipedia è presente uno schema della
disposizione delle tastiere americane che può essere usato come riferimento per
trovare i tasti giusti da usare.

Nota

Se si utilizza un sistema il cui BIOS è configurato per usare una console
seriale, potrebbe essere impossibile vedere lo splash screen iniziale durante
l'avvio dell'installatore; anche il prompt di avvio potrebbe risultare
invisibile. La stessa cosa potrebbe accadere se l'installazione avviene tramite
un dispositivo di controllo da remoto che fornisce una interfaccia testuale
alla console VGA. Degli esempi di questo tipo di dispositivi sono le console
testuali «integrated Lights Out» (iLO) della Compaq e «Integrated Remote
Assistant» (IRA) della HP.

Per saltare la schermata grafica di avvio si può premere alla cieca Esc per
avere il prompt di avvio testuale, oppure (sempre alla cieca) «H» seguito da
Invio in modo da selezionare l'opzione «Aiuto» descritta in precedenza. Dopo
aver premuto i tasti dovrebbe essere visibile il prompt. Per evitare che
l'installatore usi il framebuffer per il resto dell'installazione si deve
aggiungere fb=false al prompt di avvio, come descritto nel testo di aiuto.

5.2. Accessibilità

Alcuni utenti potrebbero aver bisogno di particolari supporti perché, per
esempio, hanno una disabilità visiva. I display braille USB vengono rilevati
automaticamente, ma molte altre funzionalità per l'accessibilità devono essere
attivate manualmente. Sulle macchine che lo permettono, il menu d'avvio emette
un bip quando è pronto per ricevere la pressione dei tasti. L'attivazione di
alcune delle funzionalità per l'accessibilità può essere fatta utilizzando i
parametri d'avvio. Notare che sulla maggioranza delle architetture il boot
loader interpreta la tastiera come una tastiera QWERTY.

5.2.1. Display braille USB

I display braille USB dovrebbero essere rilevati automaticamente; viene
attivata la versione testuale dell'Installatore e il supporto per il display
braille verrà installato sul sistema finale. È sufficiente premere Invio al
menu d'avvio. Una volta avviato brltty è possibile scegliere una tavola braille
tramite il menu preferenze.

5.2.2. Display braille seriali

I display braille seriali non possono essere rilevati automaticamente (infatti
questa operazione potrebbe danneggiarli). Quindi è necessario aggiungere il
parametro d'avvio brltty=driver,porta,tavola per indicare a brltty quale driver
utilizzare. driver deve essere sostituito con il codice a due lettere del
driver adatto al proprio terminale (si veda l'elenco dei codici dei driver).
porta deve essere sostituito dal nome della porta alla quale è collegato il
display, il valore predefinito è ttyS0. tavola è il nome della tavola braille
da usare (si veda l'elenco dei codici delle tavole), la tavola predefinita è
quella inglese. Notare che la tavola può essere cambiata in seguito tramite il
menu preferenze.

5.2.3. Hardware di sintesi vocale

Il supporto per l'hardware di sintesi vocale non è disponibile con la versione
grafica dell'Installatore. Quindi è necessario evitare di scegliere la voce
«Graphical install» dal menu d'avvio. I dispositivi di sintesi vocale non
possono essere rilevati automaticamente, è necessario aggiungere il parametro
speakup.synth=driver per indicare a speakup quale driver utilizzare. driver
deve essere sostituito con il codice del driver adatto al proprio dispositivo
(si veda l'elenco dei codici dei driver). La versione testuale
dell'Installatore è automaticamente selezionata e il supporto per le
periferiche di sintesi vocale verrà automaticamente installato sul sistema
finale.

5.2.4. Altri dispositivi

Alcuni dispositivi per l'accessibilità sono delle schede da inserire
all'interno della macchina in grado di leggere il testo direttamente dalla
memoria video. Per farle funzionare è necessario disabilitare il supporto per
il framebuffer tramite il parametro d'avvio fb=false. Purtroppo questo riduce
il numero di lingue utilizzabili.

5.2.5. Temi a contrasto elevato

Gli utenti ipovedenti possono usare l'installatore con un tema a contrasto
elevato che lo rende più leggibile. Per attivarlo, aggiungere theme=dark in
coda ai parametri d'avvio.

5.3. Parametri di avvio

I parametri di avvio sono dei parametri per il kernel Linux che di solito sono
usati per gestire correttamente le periferiche. Nella maggior parte dei casi il
kernel recupera automaticamente le informazioni sulle periferiche ma in alcuni
casi è necessario aiutarlo un po'.

La prima volta che si avvia il sistema provare a usare i parametri di avvio
predefiniti (cioè senza impostare alcun parametro) e vedere se funziona
correttamente. Se non funziona si può riavviare e aggiungere qualsiasi
parametro necessario per il riconoscimento del proprio hardware.

Delle informazioni su molti parametri di avvio possono essere trovate nel Linux
BootPrompt HOWTO, che contiene utili consigli anche per l'hardware più
misterioso. Questa sezione del manuale contiene solo un riassunto delle parti
più salienti, alcuni «trucchi» sono stati inseriti in Sezione 5.4, «Risoluzione
dei problemi del processo d'installazione».

All'inizio del processo d'avvio il kernel mostra il messaggio

Memory:dispk/totalek available

totale è la quantità di RAM in kilobyte. Se questo valore non coincide con la
quantità di RAM installata si deve usare il parametro mem=ram, dove ram è la
quantità di RAM presente, è possibile usare i suffissi «k» per kilobyte e «m»
per megabyte. Per esempio sia mem=65536k che mem=64m indicano 64 MB di RAM.

Generalmente se l'avvio è effettuato con una console seriale il kernel
riconosce questa tecnica. Se al computer su cui si vuole fare l'installazione
sono collegati una scheda video e una tastiera potrebbe essere necessario
passare console=device al kernel, dove device è il device seriale usato, di
solito qualcosa di simile a ttyS0.

5.3.1. Parametri dell'Installatore

Il sistema d'installazione riconosce alcuni parametri aggiuntivi^[8] che
possono essere molto utili.

Un parte dei parametri dispone di una «abbreviazione» che permette di
accorciare un po' la riga di comando contenente le opzioni da passare al kernel
e di semplificare l'inserimento dei parametri. Per i parametri che hanno
un'abbreviazione, l'abbreviazione è riportata fra parentesi accanto alla forma
normale (lunga). Gli esempi in questo manuale usano normalmente
l'abbreviazione.

debconf/priority (priority)

    Questo parametro imposta la priorità oltre la quale sono mostrati i
    messaggi.

    Il valore predefinito è priority=high. Questo vuol dire che sono mostrati i
    messaggi con priorità alta (high) e critica (critical) ma i messaggi con
    priorità media (medium) e bassa (low) sono saltati. Se durante
    l'installazione si verificano dei problemi l'installatore cambia la
    priorità a seconda delle necessità.

    Se si aggiunge priority=medium come parametro d'avvio viene mostrato il
    menu d'installazione e si ottiene un controllo più elevato
    sull'installazione. Quando si usa priority=low sono mostrati tutti i
    messaggi (equivale al metodo d'avvio esperto). Con priority=critical il
    sistema d'installazione mostra solo i messaggi critici e cerca di portare
    avanti l'installazione senza troppe domande.

DEBIAN_FRONTEND

    Questo parametro controlla il tipo di interfaccia utente usata
    dall'installatore. Attualmente i possibili valori sono:

      ● DEBIAN_FRONTEND=noninteractive

      ● DEBIAN_FRONTEND=text

      ● DEBIAN_FRONTEND=newt

      ● DEBIAN_FRONTEND=gtk

    L'interfaccia predefinita è DEBIAN_FRONTEND=newt. Nel caso di installazione
    con una console seriale può essere preferibile usare DEBIAN_FRONTEND=text.
    Di solito sui supporti d'installazione è disponibile solo l'interfaccia
    newt. Sulle sole architetture che supportano la versione grafica
    dell'installatore è disponibile anche l'interfaccia gtk.

BOOT_DEBUG

    Impostando questo parametro a 2 si forza il processo d'avvio
    dell'installatore ad essere più prolisso. Impostando il parametro a 3 si
    attivano delle shell in punti strategici del processo d'avvio (uscire dalle
    shell per continuare il processo d'avvio).

    BOOT_DEBUG=0

        Questo è il valore predefinito.

    BOOT_DEBUG=1

        Più informazioni del solito.

    BOOT_DEBUG=2

        Parecchie informazioni per il debug.

    BOOT_DEBUG=3

        Delle shell sono attivate in vari punti del processo d'avvio per
        consentire un accurato debug. Chiudere la shell per continuare il
        processo.

INSTALL_MEDIA_DEV

    Il valore del parametro è il percorso al device da cui caricare
    l'installatore. Per esempio INSTALL_MEDIA_DEV=/dev/floppy/0.

    Il dischetto d'avvio normalmente effettua la scansione di tutti i dischetti
    alla ricerca del dischetto root, con questo parametro si può cambiare
    questo comportamento in modo da limitare la scansione a solo un device.

lowmem

    Può essere usato per forzare l'installatore a un livello di soglia per il
    modulo «low memory» più alto di quello predefinito in base alla memoria
    disponibile. I valori possibili sono 1 e 2. Consultare Sezione 6.3.1.1,
    «Controllo della memoria disponibile e modalità «low memory»».

debian-installer/framebuffer (fb)

    Su alcune architetture si usa il framebuffer del kernel per fornire
    l'installazione in più lingue. Se sul proprio sistema il framebuffer crea
    problemi è possibile disabilitarlo usando il parametro fb=false. Dei
    sintomi di questo problema sono dei messaggi d'errore riguardo bterm o
    bogl, lo schermo nero oppure un blocco entro pochi minuti dall'inizio
    dell'installazione.

    Si può anche usare l'argomento video=vga16:off per disabilitare l'uso del
    framebuffer da parte del kernel. Problemi di questo tipo sono stati
    segnalati sui Dell Inspiron con schede Mobile Radeon.

debian-installer/theme (theme)

    Un tema determina l'aspetto dell'interfaccia utente dell'installatore
    (colori, icone, ecc.); i temi disponibili variano al variare
    dell'interfaccia. Attualmente entrambe le interfacce newt e gtk dispongono
    solo del tema «dark», adatto agli utenti con problemi visivi.
    L'impostazione usando il parametro theme=dark all'avvio del sistema.

netcfg/disable_dhcp

    Normalmente il debian-installer tenta di configurare la rete via DHCP. Se
    il tentativo ha successo non si ha la possibilità di verificare ed
    eventualmente modificare le impostazioni, è possibile fare la
    configurazione manuale della rete solo se DHCP fallisce.

    Se nella propria rete locale è presente un server DHCP ma si vuole evitare
    di usarlo, per esempio perché fornisce risposte sbagliate, si può usare il
    parametro netcfg/disable_dhcp=true per evitare la configurazione della rete
    con DHCP e inserire le informazioni manualmente.

hw-detect/start_pcmcia

    Da impostare a false per evitare l'avvio dei servizi PCMCIA che, in qualche
    caso, possono causare dei problemi. Alcuni portatili sono famosi per questo
    malfunzionamento.

disk-detect/dmraid/enable (dmraid)

    Da impostare a true per attivare il supporto per i dischi Serial ATA RAID
    (conosciuti anche come ATA RAID, BIOS RAID o falsi RAID) nell'installatore.
    Notare che attualmente questo supporto è sperimentale, ulteriori
    informazioni possono essere trovate nel Debian Installer Wiki.

preseed/url (url)

    Specifica l'url del file di preconfigurazione da scaricare e da usare nelle
    installazioni automatiche. Si veda Sezione 4.6, «Installazione
    automatizzata».

preseed/file (file)

    Specifica il percorso del file di preconfigurazione da caricare e da usare
    nelle installazioni automatiche. Si veda Sezione 4.6, «Installazione
    automatizzata».

preseed/interactive

    Da impostare a true per visualizzare le domande anche se preconfigurate,
    può essere utile per effettuare delle prove e per il debug di un file di
    preconfigurazione. Notare che non influenza i parametri passati come
    parametri d'avvio, per questi parametri occorre usare una sintassi
    speciale. Si veda Sezione B.5.2, «Uso della preconfigurazione per
    modificare i valori predefiniti» per maggiori dettagli.

auto-install/enable (auto)

    Rimanda le domande che normalmente sono poste prima che sia possibile fare
    la preconfigurazione fino a quando non viene configurata la rete. Si vedano
    in Sezione B.2.3, «Modalità «auto»» i dettagli su come usare questo
    parametro per automatizzare l'installazione.

finish-install/keep-consoles

    Durante le installazioni da console seriale o di gestione, normalmente le
    console virtuali (da VT1 a VT6) vengono disabilitate in /etc/inittab.
    Impostare questa opzione a true per evitare che questo accada.

cdrom-detect/eject

    Normalmente, prima di riavviare, debian-installer espelle automaticamente
    il supporto ottico usato durante l'installazione. Questa operazione può
    essere superflua nel caso in cui il sistema non faccia l'avvio automatico
    da CD e in alcuni casi può essere addirittura inopportuna, per esempio
    quando il lettore non è in grado di richiudere il carrello da solo e
    l'utente non può farlo manualmente perché non è fisicamente presente. Molti
    dei lettori sottili con caricatore a slot non possono ricaricare
    automaticamente il supporto.

    Da impostare a false per disattivare l'espulsione automatica, però si deve
    fare attenzione che il sistema non faccia nuovamente l'avvio dal lettore CD
    dopo l'installazione iniziale.

debian-installer/allow_unauthenticated

    Normalmente l'installatore richiede che i repository siano autenticati con
    una chiave gpg conosciuta. Per disabilitare questa autenticazione si può
    impostare questo parametro a true. Attenzione: insicuro, non raccomandato.

mouse/protocol

    Con l'interfaccia gtk (la versione grafica dell'installatore) gli utenti
    possono impostare quale protocollo del mouse usare tramite questo
    parametro. I valori supportati sono^[9]: PS/2, IMPS/2, MS, MS3, MouseMan e
    MouseSystems. Nella maggior parte dei casi il protocollo predefinito
    dovrebbe funzionare correttamente.

mouse/device

    Con l'interfaccia gtk (la versione grafica dell'installatore) gli utenti
    possono indicare quale device usare per il mouse impostando questo
    parametro. Questa funzione è utile se il mouse è collegato a una porta
    seriale. Esempio: mouse/device=/dev/ttyS1.

mouse/left

    Con l'interfaccia gtk (la versione grafica dell'installatore) gli utenti
    possono indicare che usano il mouse con la mano sinistra impostando questo
    parametro a true.

directfb/hw-accel

    Con l'interfaccia gtk (ovvero la versione grafica dell'installatore)
    l'accelerazione hardware di directfb è disabilitata; impostare questo
    parametro a true per attivarla.

rescue/enable

    Da impostare a true per entrare in modalità di ripristino anziché
    effettuare una normale installazione. Si consulti Sezione 8.7, «Recupero di
    un sistema danneggiato».

5.3.1.1. Uso dei parametri di avvio per rispondere alle domande

Eccetto alcune eccezioni, la risposta a qualsiasi domanda posta durante
l'installazione può essere impostata dal prompt boot, però questo è realmente
utile solo in casi particolari. Le istruzioni su come impostare queste risposte
possono essere trovate in Sezione B.2.2, «Uso dei parametri di avvio per la
preconfigurazione»; seguono anche alcuni esempi.

debian-installer/locale (locale)

    Può essere usato per impostare lingua e paese per l'installazione. Funziona
    solo se il «locale» specificato è supportato da Debian. Per esempio con
    locale=de_CH si imposta il tedesco come lingua e la Svizzera come paese.

anna/choose_modules (modules)

    Può essere usato per forzare il caricamento automatico dei componenti
    dell'installatore che normalmente non sono caricati. Per esempio, alcuni
    dei moduli opzionali che possono risultare utili sono openssh-client-udeb
    (per poter usare scp durante l'installazione) e ppp-udeb (si veda
    Sezione D.5, «Installazione di Debian GNU/Linux utilizzando «PPP over
    Ethernet» (PPPoE)»).

netcfg/disable_dhcp

    Da impostare a true per disabilitare il DHCP e forzare la configurazione
    statica della rete.

mirror/protocol (protocol)

    Normalmente l'installatore usa il protocollo http per scaricare i file dai
    mirror Debian e non è possibile cambiare protocollo in ftp quando
    l'installazione avviene con priorità normale. Se si imposta questo
    parametro con il valore ftp, si forza l'installatore a usare questo
    protocollo. Notare che non si può scegliere un mirror ftp dall'elenco, il
    nomehost deve essere inserito manualmente.

tasksel:tasksel/first (tasks)

    Può essere usato per scegliere task che non sono disponibili nel normale
    elenco dei task, per esempio il task kde-desktop. Per ulteriori
    informazioni si veda Sezione 6.3.5.2, «Selezione e installazione dei
    pacchetti».

5.3.1.2. Passaggio di parametri ai moduli del kernel

Se i driver sono compilati nel kernel, il passaggio dei parametri avviene come
descritto nella documentazione del kernel. Invece, se i driver sono compilati
come moduli, ciò non è possibile in quanto la modalità con cui questi vengono
caricati durante l'installazione è leggermente diversa rispetto a come vengono
caricati da un sistema installato. Per ovviare a ciò si deve usare una sintassi
particolare riconosciuta dall'installatore, il quale assicura il salvataggio
dei parametri nei file di configurazione corretti e quindi il loro uso nel
momento in cui i moduli vengono caricati. Oltre a ciò, i parametri vengono
propagati automaticamente anche nella configurazione del sistema installato.

Oggigiorno la necessità di passare dei parametri ai moduli è molto rara;
infatti nella maggioranza dei casi il kernel è in grado di riconoscere
l'hardware presente e di usare dei valori predefiniti corretti. Purtroppo, in
alcune situazioni, potrebbe ancora esserci il bisogno di impostare manualmente
i parametri.

La sintassi da usare per impostare i parametri dei moduli è:

nome_modulo.nome_parametro=valore

Se è necessario passare più parametri a uno stesso modulo o a più moduli
diversi, è sufficiente ripetere la stessa sintassi. Per esempio, per impostare
una vecchia scheda di rete 3Com in modo che usi il connettore BNC (coassiale) e
l'IRQ 10 si deve passare:

3c509.xcvr=3 3c509.irq=10

5.3.1.3. Moduli del kernel in blacklist

Potrebbe essere necessario mettere in blacklist un modulo per impedire che
venga caricato automaticamente dal kernel o da udev. Un motivo per questa
operazione può essere l'incompatibilità fra il modulo e l'hardware. Inoltre,
alcune volte, il kernel elenca due driver diversi per lo stesso device, questo
può causare il cattivo funzionamento del device se c'è un conflitto fra i
driver o se viene caricato prima quello sbagliato.

Si può aggiungere un modulo alla blacklist con questa sintassi: nome_modulo
.blacklist=yes. Questo causa l'inserimento del modulo nella blacklist /etc/
modprobe.d/blacklist.local sia durante l'installazione che nel sistema al
termine dell'installazione.

Si noti che un modulo potrebbe essere caricato comunque dal sistema
d'installazione. Si può evitare che questo avvenga eseguendo l'installazione in
modalità esperto e deselezionando il modulo nell'elenco dei moduli che viene
mostrato durante le fasi di riconoscimento dell'hardware.

5.4. Risoluzione dei problemi del processo d'installazione

5.4.1. Affidabilità dei CD-ROM

Qualche volta, in particolare con vecchi lettori CD-ROM, potrebbe fallire
l'avvio dell'installatore da CD-ROM. L'installatore potrebbe non riconoscere il
CD-ROM, persino se l'avvio è avvenuto con successo da CD-ROM, oppure dare degli
errori di lettura durante l'installazione.

Esistono parecchie cause per questi problemi. Possiamo elencare solo i problemi
più comuni e fornire dei suggerimenti generici su come risolverli, lasciando
all'utente la soluzione dei dettagli.

Ci sono due semplici operazioni da fare come primi tentativi.

  ● Se non funziona l'avvio da CD-ROM, verificare che questo sia inserito
    correttamente e che non sia sporco.

  ● Se l'installatore non riesce a riconoscere un CD-ROM, provare con l'opzione
    Rilevare ed eseguire il mount del CD-ROM una seconda volta. Alcuni dei
    problemi legati al DMA con i lettori CD-ROM più vecchi sono stati risolti
    in questo modo.

Se dopo queste operazioni continua a non funzionare, provare i suggerimenti
riportati nelle prossime sezioni; la maggior parte dei suggerimenti, non tutti,
sono validi per CD-ROM e DVD ma per semplicità è usato solo il termine CD-ROM.

Se non si riesce ad avviare l'installazione da CD-ROM si può provare con uno
degli altri metodi d'installazione disponibili.

5.4.1.1. Problemi comuni

  ● Alcuni dei lettori CD-ROM più vecchi non supportano la lettura dei CD
    masterizzati ad alta velocità con i masterizzatori moderni.

  ● Anche se il sistema è in grado di fare l'avvio dal CD-ROM, questo non vuol
    necessariamente dire che anche Linux supporta il lettore CD-ROM (o, più
    correttamente, il controller a cui è collegato il lettore).

  ● Alcuni dei lettori più vecchi non funzionano correttamente quando è attivo
    l'«accesso diretto alla memoria» (DMA).

5.4.1.2. Come analizzare e forse risolvere questi problemi

Se non si riesce a fare l'avvio da CD-ROM, provare i seguenti suggerimenti.

  ● Verificare che il BIOS supporti l'avvio da CD-ROM (su sistemi vecchi non è
    sempre possibile) e che il lettore sia in grado di leggere il supporto che
    si sta usando.

  ● Se si utilizza una immagine ISO scaricata, verificare la checksum MD5
    dell'immagine sia uguale a quella riportata nel file MD5SUMS presente nella
    stessa posizione da dove l'immagine è stata scaricata.

    $ md5sum debian-testing-i386-netinst.iso
    a20391b12f7ff22ef705cee4059c6b92  debian-testing-i386-netinst.iso

    Successivamente, verificare anche la checksum MD5 del CD-ROM masterizzato.
    Il comando seguente dovrebbe funzionare, facendo uso della dimensione
    dell'immagine per leggere il numero corretto di byte dal CD-ROM.

    $ dd if=/dev/cdrom | \
    > head -c `stat --format=%s debian-testing-i386-netinst.iso` | \
    > md5sum
    a20391b12f7ff22ef705cee4059c6b92  -
    262668+0 records in
    262668+0 records out
    134486016 bytes (134 MB) copied, 97.474 seconds, 1.4 MB/s

Se, dopo aver avviato l'installatore in modo corretto, il CD-ROM non viene
riconosciuto, può essere utile provare più volte. Se si dispone di più lettori
CD-ROM provare a cambiare il lettore con un altro. Se non funziona oppure se il
CD-ROM è riconosciuto ma si verificano degli errori in lettura provare quanto
suggerito in seguito. Per seguire questi suggerimenti è necessaria una
conoscenza minima di Linux. Prima di eseguire qualsiasi comando passare alla
seconda console virtuale (VT2) e attivare una shell.

  ● Passare alla VT4 oppure visualizzare il contenuto di /var/log/syslog
    (usando l'editor nano) per controllare la presenza di messaggi di errore.
    Poi verificare anche l'output di dmesg.

  ● Controllare nell'output di dmesg se il lettore CD-ROM è stato riconosciuto;
    si dovrebbe vedere qualcosa di simile (non necessariamente queste righe
    sono consecutive):

    Probing IDE interface ide1...
    hdc: TOSHIBA DVD-ROM SD-R6112, ATAPI CD/DVD-ROM drive
    ide1 at 0x170-0x177,0x376 on irq 15
    hdc: ATAPI 24X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(33)
    Uniform CD-ROM driver Revision: 3.20

    Se non si vede qualcosa di simile, è probabile che il controller a cui è
    collegato il CD-ROM non sia riconosciuto o supportato. Se si conosce qual è
    il driver necessario al controller si può provare a caricarlo manualmente
    usando modprobe.

  ● Verificare che in /dev/ esista un device per il lettore CD-ROM.
    Nell'esempio precedente dovrebbe essere /dev/hdc; ci potrebbe essere anche
    /dev/cdrom.

  ● Usare il comando mount per verificare che il CD-ROM sia già stato montato;
    altrimenti provare a montarlo manualmente:

    $ mount /dev/hdc /cdrom

    Controllare se si verificano degli errori dopo questo comando.

  ● Verificare che il DMA sia attivo:

    $ cd /proc/ide/hdc
    $ grep using_dma settings
    using_dma      1       0       1       rw

    Il valore «1» nella prima colonna dopo using_dma vuol dire che è attivo; in
    questo caso provare a disabilitarlo con:

    $ echo -n "using_dma:0" >settings

    Assicurarsi di essere nella directory del device che corrisponde al lettore
    CD-ROM.

  ● Se durante l'installazione si verificano dei problemi, provare a
    controllare l'integrità del CD-ROM usando l'opzione nella parte bassa del
    menu principale dell'installatore. Questa opzione può essere usata come
    test generico sull'affidabilità della lettura del CD-ROM.

5.4.2. Configurazione dell'avvio

Se si hanno problemi come blocchi del kernel durante il processo d'avvio, la
mancata individuazione delle periferiche presenti oppure il non corretto
riconoscimento dei driver, la prima cosa da controllare sono i parametri di
avvio, si consulti Sezione 5.3, «Parametri di avvio».

Spesso i problemi possono essere risolti staccando le periferiche esterne e
riprovando l'avvio. I modem interni, le schede audio e i dispositivi
Plug-n-Play possono essere particolarmente problematici.

Se sulla macchina è presente parecchia memoria (più di 512 MB) e l'installatore
si blocca durante l'avvio del kernel potrebbe essere necessario inserire un
parametro d'avvio per limitare la quantità di memoria visibile dal kernel, per
esempio con mem=512m.

5.4.3. Problemi comuni di installazione su Intel x86

Si possono verificare dei problemi con l'installazione abbastanza comuni che
possono essere risolti o evitati passando particolari parametri di avvio
all'installatore.

Alcuni sistemi hanno dischetti con i «DCL invertiti». Se si ottengono errori in
lettura, anche se il dischetto è buono, si può provare ad usare il parametro
floppy=thinkpad.

Su alcuni sistemi, ad esempio IBM PS/1 o ValuePoint (che hanno dischi ST-506),
il disco IDE potrebbe non essere riconosciuto correttamente. Anche in questo
caso si provi prima senza parametri per vedere se il disco IDE viene
riconosciuto correttamente. In caso non succeda, stabilire la geometria del
disco (cilindri, testine e settori) e passare il parametro hd=cilindri,testine,
settori.

Con le macchine molto vecchie il kernel si può bloccare su Checking 'hlt'
instruction..., in questo caso si deve passare il parametro d'avvio no-hlt che
disabilita questo test.

Alcuni sistemi (in particolare i portatili) hanno una risoluzione nativa che
non è nel rapporto 4:3 (cioè non è per esempio 800x600 o 1024x768) potrebbero
presentare uno schermo vuoto dopo il caricamento dell'installatore. Se si
verifica questo caso provare ad aggiungere il parametro di avvio vga=788^[10].
Se questo non funziona provare ad aggingere il parametro di avvio fb=false.

Se lo schermo mostra strane figure durante l'avvio del kernel (per esempio è
completamente bianco, completamente nero o pieno di pixel colorati, allora sul
sistema potrebbe essere montata una scheda video che ha dei problemi a passare
correttamente nella modalità framebuffer. In questo caso si può usare il
parametro d'avvio fb=false per disabilitare la console framebuffer. A causa
delle limitate funzionalità della console l'installazione può avvenire solo in
un insieme ridotto di lingue, si consulti Sezione 5.3, «Parametri di avvio» per
i dettagli.

5.4.3.1. Blocchi del sistema durante la configurazione di PCMCIA

Alcuni dei modelli portatili prodotti da Dell sono noti per bloccarsi quando il
riconoscimento dei dispositivi PCMCIA tenta di accedere ad alcuni indirizzi
hardware, anche altri portatili possono presentare dei problemi simili. Se si
riscontra questo problema e non si ha bisogno del supporto PCMCIA durante
l'installazione allora si può disabilitarlo usando il parametro d'avvio
hw-detect/start_pcmcia=false. Una volta che l'installazione è stata completata
è possibile configurare PCMCIA in modo da escludere l'intervallo di risorse che
causa i problemi.

In alternativa si può avviare l'installatore in modalità esperto. In questa
modalità viene richiesto l'inserimento dell'intervallo delle risorse a seconda
delle necessità del proprio hardware. Per esempio, se si possiede uno dei
portatili Dell citati sopra si deve inserire exclude port 0x800-0x8ff. Esiste
un elenco degli intervalli delle risorse più comuni nella sezione System
resource settings del PCMCIA HOWTO. Si noti che non si devono riportare le
virgole, se ci sono, quando si inseriscono questi valori nell'installatore.

5.4.3.2. Blocco del sistema durante il caricamento dei moduli USB

Il kernel cerca di installare i moduli USB e i driver per le tastiere USB per
supportare anche alcune tastiere USB non standard. Purtroppo esistono dei
sistemi USB non standard che bloccano il caricamento dei driver. Una soluzione
può essere disattivare il controller USB dal BIOS della scheda madre. Un'altra
possibilità è passare il parametro d'avvio nousb.

5.4.4. Interpretazione dei messaggi di avvio del kernel

Durante la sequenza d'avvio è possibile vedere molti messaggi simili a can't
find XXX, XXX not present, can't initialize XXX o anche this driver release
depends on XXX. La maggior parte di questi messaggi sono innocui, compaiono
perché il kernel usato dal sistema di installazione è stato compilato per
funzionare su macchine con periferiche anche molto diverse. Ovviamente nessun
computer ha tutte le possibili periferiche e quindi il sistema operativo si può
lamentare di non aver trovato delle periferiche che effettivamente non ci sono.
Si può anche assistere a delle brevi pause, sono causate dall'attesa di una
risposta da parte di un dispositivo non presente sul sistema. Se si pensa che
il tempo per il boot sia troppo lungo, in seguito si può creare un kernel
personalizzato (si veda Sezione 8.6, «Compilazione di un nuovo kernel»).

5.4.5. Segnalazione di problemi con l'installazione

Se si riesce a passare la fase di avvio iniziale ma non si può completare
l'installazione, la voce Salvare i log per il debug del menu potrebbe tornare
utile. Essa salverà gli errori dai log di sistema e delle informazioni sulla
configurazione dall'installatore su un dischetto oppure permetterà di
scaricarle tramite un browser web. Queste informazioni potrebbero fornire
indizi utili a capire che cosa sia andato storto e come rimediare. Se si vuole
inviare una segnalazione di bug è bene allegare anche queste informazioni.

Altri messaggi relativi all'installazione possono essere trovati in /var/log/
durante l'installazione e in /var/log/installer/ una volta che il computer è
stato avviato con il sistema appena installato.

5.4.6. Invio dei rapporti di installazione

Se non si riesce a risolvere qualche problema si invii un rapporto di
installazione. Si incoraggia l'invio del rapporto anche quando l'installazione
avviene con successo, in questo modo possiamo reperire quante più informazioni
possibili sulle diverse configurazioni hardware.

Notare che il rapporto di installazione viene pubblicato nel BTS (Bug Tracking
System) di Debian e inoltrato in una mailing list pubblica; si raccomanda di
usare un indirizzo email tenendo bene in mente che diventa di dominio pubblico.

Nel caso si riesca ad avere un sistema Debian funzionante il modo più semplice
per inviare un rapporto d'installazione è installare i pacchetti
installation-report e reportbug (aptitude install installation-report reportbug
), configurare reportbug come spiegato in Sezione 8.5.2, «Invio di email
all'esterno del sistema» ed eseguire il comando reportbug installation-reports.

In alternativa è possibile di usare il seguente modello per i rapporti
d'installazione e poi di inviarlo come segnalazione di bug verso lo
pseudopacchetto installation-reports all'indirizzo <submit@bugs.debian.org>.

Package: installation-reports

Boot method: <Come è stata avviata l'installazione? Da un CD? Da un
      dischetto? Dalla rete?>
Image version: <Inserire l'URL da dove si è recuperato l'immagine>
Date: <Giorno e ora di installazione>

Machine: <Descrizione della macchina (pe, IBM Thinkpad R32)>
Processor: <Tipo di processore>
Memory: <Quantità di memoria RAM>
Partitions: <L'output di «df -Tl»; è preferibile la tabella delle partizioni
      in formatto grezzo>

Output of lspci -knn (or lspci -nn): <L'output del comando «lspci -knn»
      (oppure di «lspci -nn»)>

Base System Installation Checklist: <Inserire nella casellina una «O» se
      quel passo ha funzionato, una «E» se si sono verificati degli errori
      oppure lasciare la casella in bianco se il passo non è stato eseguito.>
[O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it

Initial boot:           [ ] <Primo avvio del sistema>
Detect network card:    [ ] <Riconoscimento della scheda di rete>
Configure network:      [ ] <Configurazione della rete>
Detect CD:              [ ] <Riconoscimento del CD>
Load installer modules: [ ] <Caricamento dei moduli dell'installatore>
Detect hard drives:     [ ] <Riconoscimento dei dischi fissi>
Partition hard drives:  [ ] <Partizionamento dei dischi fissi>
Install base system:    [ ] <Installazione del sistema di base>
Clock/timezone setup:   [ ] <Impostazione di orologio e fuso orario>
User/password setup:    [ ] <Impostazione di utente e password>
Install tasks:          [ ] <Installazione dei task>
Install boot loader:    [ ] <Installazione del boot loader>
Overall install:        [ ] <Installazione nel suo complesso>

Comments/Problems:
<Descrizione dettagliata dell'installazione compresi dettagli, commenti
      e idee che si hanno sul sistema di installazione.>

Nella segnalazione di bug si deve descrivere qual è il problema e, nel caso che
il blocco sia dovuto al kernel, si deve inserire l'ultimo messaggio del kernel
visibile. Descrivere anche i passi fatti e che hanno evidenziato il problema.


━━━━━━━━━━━━━━

^[8] Con gli attuali kernel (2.6.9 e successivi) si possono usare 32 opzioni
sulla riga di comando e 32 opzioni d'ambiente. Nel caso si superino questi
limiti il kernel si blocca.

^[9] Si veda la pagina man di directfbrc(5) per ulteriori informazioni.

^[10] Il parametro vga=788 attiva il framebuffer VESA con risoluzione di
800x600. Con questa impostatio sarà possibile proseguire ma probabilmente non
alla risoluzione ottimale per il proprio sistema. Un elenco delle risoluzioni
supportate può essere ottenuto usando vga=ask, ma si deve sapere che questo
elenco potrebbe non essere completo.

Capitolo 6. Uso dell'Installatore Debian

Sommario

6.1. Come funziona l'Installatore
6.2. Introduzione ai componenti
6.3. Uso dei singoli componenti

    6.3.1. Impostazione dell'Installatore Debian e configurazione dell'hardware
    6.3.2. Partizionamento e selezione del punto di mount
    6.3.3. Installazione del sistema base
    6.3.4. Impostazione di utenti e password
    6.3.5. Installazione di altri programmi
    6.3.6. Rendere avviabile il sistema
    6.3.7. Completamento dell'installazione
    6.3.8. Varie

6.4. Caricare i firmware mancanti

    6.4.1. Preparazione del supporto
    6.4.2. Firmware sul sistema installato

6.1. Come funziona l'Installatore

L'Installatore Debian consiste di un certo numero di componenti dedicati a
eseguire i passi dell'installazione. Ogni componente esegue il proprio compito,
ponendo domande all'utente per quanto necessario a svolgere il proprio lavoro.
Alle domande stesse sono date delle priorità e la priorità delle domande da
porre è impostata all'avvio dell'installatore.

Quando si esegue un'installazione predefinita, solo le domande essenziali (ad
alta priorità) saranno poste. Ne risulta un processo di installazione altamente
automatizzato e con poca interazione da parte dell'utente. I componenti sono
eseguiti automaticamente in sequenza; quali componenti siano eseguiti dipende
principalmente dal metodo di installazione usato e dall'hardware.
L'installatore userà valori predefiniti per le domande che non sono poste.

Se si verifica un problema, l'utente vedrà una schermata di errore e il menu
dell'installatore potrebbe essere visualizzato allo scopo di selezionare una
azione alternativa. Se non si presentano problemi, l'utente non vedrà mai il
menu dell'installatore ma risponderà semplicemente alle domande per ciascun
componente, di volta in volta. Le notifiche degli errori gravi sono impostate a
priorità «critica» in modo che l'utente sia sempre avvertito.

Alcune delle impostazioni predefinite usate dall'installatore possono essere
influenzate passando argomenti di avvio quando debian-installer è avviato. Se,
per esempio, si desiderasse forzare la configurazione statica della rete (DHCP
è usato in modo predefinito, se disponibile), si potrebbe aggiungere il
parametro di avvio netcfg/disable_dhcp=true. Si veda Sezione 5.3.1, «Parametri
dell'Installatore» per le opzioni disponibili.

Gli utenti esperti potrebbero trovarsi più comodi con un'interfaccia guidata da
menu, dove ciascun passo è controllato dall'utente piuttosto che da un
installatore che esegua automaticamente, in sequenza, ciascun passo. Per usare
l'installatore in modalità manuale, guidata da menu, aggiungere l'argomento di
avvio priority=medium.

Se l'hardware richiede di passare opzioni ai moduli del kernel man mano che
sono installati, sarà necessario avviare l'installatore in modalità «expert»
(esperto). Ciò può essere fatto sia usando il comando expert per avviare
l'installatore, sia aggiungendo il parametro di avvio priority=low. La modalità
«expert» fornisce il controllo totale su debian-installer.

Per questa architettura il debian-installer supporta due diverse interfacce
utente: una a caratteri e una grafica. L'interfaccia a caratteri è quella
normalmente utilizzata a meno che si scelga «Graphical install» dal menu
iniziale. Per ulteriori informazioni sull'installatore grafico si veda
Sezione D.6, «Installatore grafico».

Nell'ambiente d'installazione a caratteri non è supportato l'uso del mouse.
Questi sono i tasti che si possono usare per navigare all'interno delle varie
finestre di dialogo. I tasti Tab o freccia destra muovono «avanti» e i tasti
Shift+Tab o freccia sinistra muovono «indietro» tra i bottoni e le selezioni
visualizzati. I tasti freccia su e giù selezionano elementi diversi all'interno
di una lista scorrevole, oltre a scorrere la lista stessa. Inoltre, nelle liste
lunghe, è possibile digitare una lettera per fare in modo che la lista si
posizioni direttamente nella sezione con gli elementi che cominciano con la
lettera digitata, ed è possibile usare i tasti Pagina-Su e Pagina-Giù per
scorrere la lista attraverso le sezioni. La barra di spazio seleziona un
elemento quale una casella di spunta. Usare Invio per attivare le scelte.

I messaggi di errore e i log sono reindirizzati alla quarta console. È
possibile accedere a questa console premendo i tasti Alt+F4 (tenere premuto il
tasto Alt di sinistra mentre si preme il tasto funzione F4); si torna indietro
al processo principale dell'installatore con i tasti Alt+F1.

Questi messaggi possono essere trovati anche in /var/log/syslog. Dopo
l'installazione, questo file di log è copiato su /var/log/installer/syslog del
nuovo sistema. Altri messaggi di installazione possono essere trovati in /var/
log/ durante l'installazione, e in /var/log/installer/ dopo che il computer è
stato riavviato nel sistema installato.

6.2. Introduzione ai componenti

Ecco una lista dei componenti dell'installatore con una breve descrizione della
funzione di ciascun componente. Dettagli che potrebbe essere necessario
conoscere usando un particolare componente si trovano in Sezione 6.3, «Uso dei
singoli componenti».

main-menu

    Mostra all'utente la lista dei componenti durante il funzionamento
    dell'installatore e avvia un componente quando è selezionato. Le domande di
    main-menu sono impostate a priorità media, pertanto se la priorità è
    impostata ad alta o critica (alta è quella preimpostata), il menu non sarà
    visibile. D'altra parte, se si verifica un errore che richieda intervento,
    la priorità della domanda può essere temporaneamente degradata in modo da
    consentire di risolvere il problema, e in tal caso il menu potrebbe
    apparire.

    È possibile tornare al menu principale selezionando ripetutamente il
    bottone Indietro fino a uscire a ritroso dal componente attualmente in
    esecuzione.

localechooser

    Consente all'utente di selezionare opzioni di localizzazione per
    l'installazione e per il sistema installato: lingua, nazione e locale.
    L'installatore visualizzerà i messaggi nella lingua selezionata, a meno che
    la traduzione per quella lingua non sia completa, nel qual caso alcuni
    messaggi potrebbero essere visualizzati in inglese.

kbd-chooser

    Visualizza una lista di tastiere dalla quale l'utente sceglie il modello
    che corrisponde alla propria.

hw-detect

    Rileva automaticamente la maggior parte dell'hardware, incluse schede di
    rete, lettori di dischi e PCMCIA.

cdrom-detect

    Cerca e monta un CD di installazione di Debian.

netcfg

    Configura le connessioni di rete del computer in modo che esso possa
    comunicare su internet.

iso-scan

    Cerca immagini ISO (file .iso) su i dischi fissi.

choose-mirror

    Presenta una lista di archivi mirror di Debian. L'utente può scegliere la
    sorgente dei suoi pacchetti di installazione.

cdrom-checker

    Verifica l'integrità di un CD-ROM. In questo modo l'utente può assicurarsi
    che il CD-ROM di installazione non sia corrotto.

lowmem

    Lowmem cerca di rilevare sistemi con poca memoria e, in tal caso, applica
    diversi accorgimenti per rimuovere dalla memoria parti non necessarie di
    debian-installer (alle spese di alcune funzionalità).

anna

    Anna's Not Nearly APT. Installa i pacchetti che sono stati scaricati dal
    mirror prescelto o dal CD.

clock-setup

    Aggiorna l'orologio di sistema e determina se l'orologio è impostato su UTC
    oppure no.

tzsetup

    Seleziona il fuso orario in base alla località scelta in precedenza.

partman

    Consente all'utente di partizionare i dischi collegati al sistema, di
    creare i file system sulle partizioni selezionate e di collegarli a punti
    di mount. Sono inoltre incluse interessanti funzionalità come una modalità
    completamente automatica o il supporto LVM. Questo è lo strumento di
    partizionamento preferito in Debian.

partitioner

    Consente all'utente di partizionare dischi collegati al sistema. È scelto
    un programma di partizionamento appropriato all'architettura del computer.

partconf

    Visualizza una lista di partizioni e crea i file system sulle partizioni
    selezionate secondo le istruzioni dell'utente.

lvmcfg

    Aiuta l'utente nella configurazione di LVM (Logical Volume Manager).

mdcfg

    Consente all'utente di configurare RAID (Redundant Array of Inexpensive
    Disks) Software. Questo RAID Software è generalmente superiore agli
    economici controllori RAID IDE (pseudo hardware) che si trovano nelle
    schede madri più recenti.

base-installer

    Installa l'insieme dei pacchetti di base che consentono al computer di
    funzionare sotto Linux dopo il riavvio.

user-setup

    Imposta la password di root e aggiunge un utente normale.

apt-setup

    Configura apt, quasi automaticamente, in base al supporto usato dal
    programma d'installazione.

pkgsel

    Usa tasksel per selezionare e installare altri programmi.

os-prober

    Rileva i sistemi operativi attualmente installati nel computer e passa
    queste informazioni a bootloader-installer, che può offrire la possibilità
    di aggiungere i sistemi operativi rilevati al menu del programma di avvio.
    In questo modo l'utente può scegliere facilmente, all'avvio, quale sistema
    operativo attivare.

bootloader-installer

    Diversi programmi d'installazione dei boot loader ognuno dei quali installa
    un programma di avvio sul disco rigido, necessario al computer per avviarsi
    con Linux senza usare un floppy o un CD-ROM. Molti programmi di avvio
    consentono all'utente di scegliere un sistema operativo alternativo ogni
    volta che il computer si avvia.

shell

    Consente all'utente di eseguire una shell da menu o nella seconda console.

save-logs

    Fornisce all'utente un modo per registrare informazioni su un dischetto, in
    rete, su un disco rigido o altri supporti quando si verificano problemi, in
    modo da riportare accuratamente, in un secondo momento, problemi software
    dell'installatore agli sviluppatori Debian.

6.3. Uso dei singoli componenti

In questa sezione è descritto ogni componente dell'installatore in dettaglio. I
componenti sono stati raggruppati in fasi che siano identificabili dagli
utenti. Essi sono presentati nell'ordine in cui appaiono durante
l'installazione; quali moduli siano davvero usati dipende dal metodo di
installazione usato e dall'hardware.

6.3.1. Impostazione dell'Installatore Debian e configurazione dell'hardware

Supponiamo che l'installatore Debian sia avviato e di trovarsi davanti alla sua
prima schermata. A questo punto, le funzionalità di debian-installer sono
ancora limitate. Esso non conosce molto riguardo l'hardware, la lingua
preferita o addirittura i compiti che dovrebbe eseguire. Non ci si deve
preoccupare, il debian-installer è abbastanza intelligente, può sondare
automaticamente l'hardware, localizzare il resto dei suoi componenti e
aggiornare se stesso ad un sistema di installazione capace. Naturalmente, è
ancora necessario aiutare debian-installer con qualche informazione che esso
non può determinare automaticamente (come selezionare la lingua preferita, la
mappa della tastiera o il mirror di rete preferito).

Si noterà che debian-installer esegue il rilevamento dell'hardware diverse
volte durante questa fase. La prima volta è finalizzata specificamente
all'hardware necessario a caricare i componenti dell'installatore (ad es. il
CD-ROM o la scheda di rete). Poiché non tutti i driver possono essere
disponibili durante questa prima esecuzione, è necessario ripetere il
rilevamento dell'hardware più avanti, nel processo.

Durante la rilevazione dell'hardware il debian-installer verifica se i driver
per i dispositivi hardware presenti nel sistema richiedono il caricamento di un
firmware. Se è richiesto un firmware ma questo non è disponibile viene mostrato
un messaggio che permette di caricare il firmware mancante da un supporto
removibile. Si veda Sezione 6.4, «Caricare i firmware mancanti» per maggiori
dettagli.

6.3.1.1. Controllo della memoria disponibile e modalità «low memory»

Una delle prime cosa che fa il debian-installer è controllare la quantità di
memoria disponibile. Se la memoria è limitata questo componente effettua delle
modifiche al processo d'installazione sperando che siano sufficienti per
consentire l'installazione di Debian GNU/Linux sul proprio sistema.

La prima misura che l'installatore prende per ridurre l'uso della memoria è la
disabilitazione delle traduzioni, questo vuol dire che l'installazione può
essere effettuata solo in lingua inglese. Ovviamente è possibile localizzare il
sistema dopo aver completato l'installazione.

Se questo non è sufficiente, l'installatore riduce ulteriormente l'uso della
memoria caricando solo i componenti essenziali per completare un'installazione
basilare. Questo riduce le funzionalità del sistema d'installazione, rimane
comunque disponibile la funzione per caricare manualmente i componenti
aggiuntivi, ma è necessario prestare attenzione al fatto che a ogni componente
selezionato corrisponde un aumento dell'occupazione della memoria che potrebbe
comportare il fallimento dell'installazione.

Quando l'installatore funziona in modalità «low memory» si raccomanda la
creazione di una partizione di swap relativamente grande (64-128 MB). La
partizione di swap viene usata come memoria virtuale e quindi aumenta la
quantità di memoria disponibile sul sistema. L'installatore attiva la
partizione di swap nelle primissime fasi del processo d'installazione. Notare
che un uso pesante dello swap può ridurre le prestazioni del sistema e comporta
un'elevata attività da parte del disco.

Nonostante queste misure problemi come blocchi del sistema, errori inaspettati
o processi terminati dal kernel perché il sistema esaurisce la memoria
(segnalato con messaggi «Out of memory» sul VT4 e nel syslog), rimangono
comunque possibili.

Per esempio, è noto che la creazione di un file system ext3 molto grande
fallisce nella modalità «low memory» se l'area di swap non è sufficientemente
grande. Se anche un'area di swap più grande non risolve, creare un file system
ext2 (questo è uno dei componenti essenziali dell'installatore) e, dopo aver
completato l'installazione, modificare la partizione da ext2 in ext3.

È possibile forzare l'installatore a utilizzare un livello di soglia più alto
di quello calcolato in base alla memoria disponibile tramite il parametro
d'avvio «lowmem» come descritto in Sezione 5.3.1, «Parametri dell'Installatore»
.

6.3.1.2. Selezione delle opzioni di localizzazione

Nella maggior parte dei casi le prime domande a cui si risponde riguardano le
opzioni relative alla localizzazione da usare per l'installazione e sul sistema
installato. Le opzioni di localizzazione sono la lingua, la nazione e i locale.

La lingua scelta viene usata per resto del processo d'installazione che
prosegue fornendo, se disponibili, i dialoghi tradotti. Se per la lingua scelta
non esiste una traduzione, il programma d'installazione prosegue usando la
lingua predefinita, cioè l'inglese.

La nazione scelta verrà usata in seguito durante il processo d'installazione
per selezionare il fuso orario predefinito e il mirror Debian più vicino alla
propria posizione geografica. Lingua e nazione sono usate per impostare il
valore predefinito per il locale e per guidare la scelta della tastiera.

Per prima cosa viene chiesto di scegliere la lingua che si preferisce. I nomi
delle lingue sono elencati in inglese (sulla sinistra) e nella lingua stessa
(sulla destra); i nomi sulla destra sono mostrati usando i caratteri corretti.
L'elenco è ordinato in base ai nomi in inglese. La prima voce dell'elenco
consente di usare il locale «C» anziché una lingua. La scelta del locale «C»
comporta che l'installazione proseguirà in inglese e che il sistema installato
non avrà supporto per la localizzazione dato che non verrà installato il
pacchetto locales.

Se si sceglie una lingua che è riconosciuta come lingua ufficiale per più di un
paese^[11] verrà mostrato un elenco di quei paesi. Per selezionare un paese non
presente nell'elenco, scegliere Altro (l'ultima voce dell'elenco); verrà
mostrato un elenco dei continenti e, selezionando un continente, appare
l'elenco dei paesi appartenenti a quel continente.

Se la lingua scelta è associata a un solo paese, verrà automaticamente
selezionato quel paese. In questo caso è possibile scegliere un paese diverso
solo abbassando il livello di priorità di debconf a medio e ripetendo la scelta
della lingua dal menu principale dell'installatore.

In base alla lingua e alla nazione selezionate viene scelto un locale
predefinito. Se l'installazione avviene con priorità media o bassa, è possibile
scegliere un locale diverso da quello predefinito e aggiungere altri locale da
generare sul sistema installato.

6.3.1.3. Selezione della tastiera

Spesso le tastiere sono adattate ai caratteri usati dalla lingua. Selezionare
una disposizione della tastiera che corrisponda alla tastiera in uso oppure
selezionarne uno simile nel caso che la disposizione della propria tastiera non
sia presente. Una volta completata l'installazione del sistema è possibile
scegliere la disposizione della tastiera fra un numero maggiore di possibilità
(eseguire kbdconfig da root una volta completata l'installazione).

Selezionare la tastiera che si desidera e poi premere Invio. Usare i tasti
cursore per spostare l'evidenziazione, si trovano nella stessa posizione su
tutte le tastiere, anche quelle con layout adattato alla lingua. Una tastiera
«estesa» è una tastiera con i tasti da F1 a F10 nella fila di tasti più in
alto.

6.3.1.4. Ricerca dell'immagine ISO del Debian Installer

Quando si effettua un'installazione con il metodo hd-media c'è una fase in cui
è necessario cercare e montare un'immagine ISO del Debian Installer per poter
recuperare i file necessari all'installazione mancanti. Questo è esattamente il
compito svolto dal componente iso-scan.

Al primo tentativo iso-scan monta automaticamente tutti i dispositivi a blocchi
(per esempio le partizioni) su cui è presente un filesystem conosciuto e poi
ricerca i file con estensione .iso (o .ISO). Da notare che la prima scansione
avviene solo sui file presenti nella directory root e nel primo livello di
sottodirectory (cioè riesce a trovare /qualcosa.iso e /data/qualcosa.iso ma non
/data/tmp/qualcosa.iso). Una volta trovata un'immagine ISO, iso-scan ne
verifica il contenuto per determinare se l'immagine è un'immagine Debian
valida, nel caso non lo sia viene cercata un'altra immagine.

Se il precedente tentativo di ricerca di un'immagine ISO dell'installatore
fallisce, iso-scan chiede se si vuole effettuare un'altra ricerca più
approfondita. In questo passo la ricerca avviene anche nelle sottodirectory
anziché nel solo livello più alto del filesystem.

Se iso-scan non trova un'immagine iso dell'installatore si deve riavviare il
vecchio sistema operativo e verificare se il nome dell'immagine è corretto
(cioè se finisce con .iso), se l'immagine è su un filesystem visibile da
debian-installer e se l'immagine è compromessa (verificandone la checksum). Gli
utenti più esperti possono fare tutti questi controlli, senza riavviare la
macchina, usando la seconda console.

6.3.1.5. Configurazione della rete

Appena si accede a questo passo il sistema rileva se sono presenti più schede
di rete e viene chiesto di scegliere quale device dovrà essere l'interfaccia di
rete primaria, cioè quale si vuole usare per l'installazione. A questo punto le
altre interfacce non vengono configurate, sarà possibile farlo una volta
completata l'installazione; si veda la pagina man interfaces(5).

Il debian-installer cerca di configurare l'interfaccia di rete automaticamente
usando DHCP. Se il tentativo ha successo la configurazione è finita, un
eventuale fallimento può essere causato da diversi fattori che vanno dal cavo
di rete scollegato a una configurazione di DHCP sbagliata oppure all'assenza
nella propria rete di un server DHCP. I messaggi d'errore nella quarta console
possono essere utili per scoprire il motivo del fallimento. Comunque viene
chiesto se si vuole riprovare oppure se si vuole procedere con la
configurazione manuale. Capita che i server DHCP siano estremamente lenti nel
rispondere, quindi se si è sicuri che il sistema funziona fare un nuovo
tentativo.

La configurazione manuale della rete richiede parecchie informazioni sulla
propria rete, le più importanti sono indirizzo IP, maschera di rete, gateway,
indirizzi dei name server e nome host. Inoltre, se è presente un'interfaccia di
rete wireless, sono richiesti ESSID wireless e una chiave WEP. Rispondere alle
domande usando le informazioni in Sezione 3.3, «Informazioni necessarie».

Nota

Alcuni dettagli tecnici che potrebbero essere utili: il programma assume che
l'indirizzo IP della rete sia il risultato dell'operazione AND fra i bit
dell'indirizzo IP del sistema e la maschera di rete, che l'indirizzo di
broadcast predefinito sia il risultato dell'operazione OR fra l'indirizzo IP
del sistema e la negazione della maschera di rete e cerca anche di indovinare
qual è il gateway. Se non si dispone di queste informazioni, si può provare a
usare i valori presentati come predefiniti, comunque, se necessario, è
possibile cambiarli modificando /etc/network/interfaces una volta completata
l'installazione.

6.3.1.6. Configurazione dell'orologio

Come prima cosa l'installatore cerca di connettersi a un time server su
Internet (tramite il procollo NTP) per impostare correttamente l'ora sul
sistema. Se non riesce, l'installatore assume come valide la data e l'ora
ottenute dall'orologio di sistema. Non è possibile impostare manualmente l'ora
del sistema durante il processo d'installazione.

In base al paese scelto all'inizio dell'installazione potrebbe essere mostrato
l'elenco dei soli fusi orari pertinenti a quel paese; se nel paese è presente
un solo fuso orario, non viene chiesto nulla e il sistema userà quel fuso
orario.

Se per qualsiasi motivo si vuole impostare un fuso orario che non è legato al
paese scelto, si hanno due possibilità.

 1. Il modo più semplice è scegliere un fuso orario diverso una volta finita
    l'installazione e avviato il nuovo sistema. Il comando da usare è:

    # dpkg-reconfigure tzdata

 2. In alternativa il fuso orario può essere impostato all'inizio
    dell'installazione passando il parametro time/zone=valore all'avvio del
    sistema d'installazione. Ovviamente il valore deve essere un fuso orario
    valido, per esempio Europe/London o UTC.

Nel caso di installazioni automatiche è possibile preconfigurare anche il fuso
orario.

6.3.2. Partizionamento e selezione del punto di mount

A questo punto, dopo che il rilevamento dell'hardware è stato eseguito per
l'ultima volta, debian-installer dovrebbe trovarsi alla sua massima potenza,
personalizzato per le esigenze dell'utente e pronto a fare un po' di lavoro
vero. Come suggerisce il titolo di questa sezione, il compito principale dei
prossimi pochi componenti ricade nel partizionamento dei dischi, nella
creazione dei file system, nell'assegnazione dei punti di mount e nella
configurazione, se necessaria, delle opzioni a essi strettamente correlate come
i dispositivi RAID, LVM o cifrati.

Se non si ha confidenza con il partizionamento, o si desidera conoscere più
particolari, si veda Appendice C, Partizionare per Debian.

In primo luogo è data l'opportunità di partizionare automaticamente un intero
disco oppure il solo spazio libero disponibile. Ciò è chiamato partizionamento
«guidato». Se non si desidera usare l'autopartizionamento si deve scegliere
Manuale dal menu.

6.3.2.1. Partizionamento guidato

Con il partizionamento guidato si hanno tre possibilità: creare le partizioni
direttamente sull'hard disk (il metodo classico) oppure tramite il Logical
Volume Management (LVM) oppure tramite LVM cifrato^[12].

Nota

La possibilità di usare LVM (cifrato o no) potrebbe non essere disponibile su
tutte le architetture.

Quando si usa LVM o LVM cifrato, l'installatore crea gran parte delle
partizioni all'interno di una partizione più grande; il vantaggio di questa
operazione è che in seguito le partizioni interne possono essere ridimensionate
abbastanza facilmente. Per LVM cifrato la partizione più grande non è leggibile
senza conoscere la passphrase, questo fornisce un livello di sicurezza maggiore
per i propri dati personali.

Quando si usano volumi LVM cifrati, l'installatore cancella automaticamente il
contenuto del disco scrivendovi dati casuali. Questo incrementa la sicurezza
(rendendo impossibile riconoscere le parti del disco usate e assicurando la
cancellazione di tutte le tracce delle precedenti installazioni) ma può
richiedere molto tempo, a seconda della dimensione del disco.

Nota

Se si sceglie il partizionamento guidato con LVM o LVM cifrato è necessario
effettuare alcune modifiche alla tabella delle partizioni del disco scelto
durante la configurazione del LVM. Queste modiche cancellano i dati presenti
sul disco e non è possibile annullare l'operazione, però viene richiesta la
conferma di qualsiasi modifica prima di eseguire la scrittura sul disco.

Se si sceglie il partizionamento guidato (classico, LVM o LVM cifrato)
dell'intero disco viene prima chiesto di scegliere il disco che si vuole usare,
verificare che nell'elenco appaiano tutti i dischi e assicurarsi di scegliere
quello corretto. L'ordine con cui appaiono i dischi può essere diverso da
quello a cui si è abituati; la dimensione del disco può essere utile per
identificare i diversi dischi.

Tutti i dati sul disco scelto possono andare persi, però viene richiesta la
conferma di qualsiasi modifica prima di eseguire la scrittura sul disco. Con il
metodo di partizionamento classico è possibile annullare qualsiasi modifica
fino alla fine; quando si usa i metodi LVM (cifrato o no) questo non è
possibile.

Poi è possibile scegliere uno degli schemi elencati nella tabella seguente.
Tutti gli schemi hanno pro e contro, alcuni dei quali sono discussi in
Appendice C, Partizionare per Debian. Si consiglia l'uso del primo schema se si
hanno dei dubbi su quale scegliere. Inoltre si deve tener presente che il
partizionamento guidato ha bisogno di quantità minima di spazio libero per
funzionare, se sul disco non è presente circa 1 GB di spazio (dipende dallo
schema scelto), il partizionamento guidato non funziona.

┌─────────────────────────────────────┬───────────┬───────────────────────────┐
│      Schema di partizionamento      │  Spazio   │     Partizioni create     │
│                                     │  minimo   │                           │
├─────────────────────────────────────┼───────────┼───────────────────────────┤
│Tutti i file in una partizione       │600MB      │/, swap                    │
├─────────────────────────────────────┼───────────┼───────────────────────────┤
│Partizione /home separata            │500MB      │/, /home, swap             │
├─────────────────────────────────────┼───────────┼───────────────────────────┤
│Partizioni /home, /usr, /var e /tmp  │1GB        │/, /home, /usr, /var, /tmp,│
│separate                             │           │swap                       │
└─────────────────────────────────────┴───────────┴───────────────────────────┘

Se si sceglie il partizionamento guidato con LVM (cifrato o no), l'installatore
crea una partizione /boot separata. Le altre partizioni, compresa la partizione
di swap, sono create all'interno della partizione LVM.

Dopo la selezione dello schema, la schermata successiva mostrerà la nuova
tabella delle partizioni, comprese le informazioni sulla formattazione delle
partizioni e dove saranno montate.

L'elenco delle partizioni dovrebbe assomigliare a questo:

  IDE1 master (hda) - 6.4 GB WDC AC36400L
        #1 primary   16.4 MB  B f ext2       /boot
        #2 primary  551.0 MB      swap       swap
        #3 primary    5.8 GB      ntfs
           pri/log    8.2 MB      FREE SPACE

  IDE1 slave (hdb) - 80.0 GB ST380021A
        #1 primary   15.9 MB      ext3
        #2 primary  996.0 MB      fat16
        #3 primary    3.9 GB      xfs        /home
        #5 logical    6.0 GB    f ext3       /
        #6 logical    1.0 GB    f ext3       /var
        #7 logical  498.8 MB      ext3
        #8 logical  551.5 MB      swap       swap
        #9 logical   65.8 GB      ext2

Questo esempio mostra due dischi IDE divisi in parecchie partizioni; il primo
disco dispone anche di un po' di spazio libero. In ogni riga che corrisponde a
una partizione è riportato numero, tipo, dimensione, flag opzionali, file
system e mout point (se assegnato) della partizione. Nota: questa particolare
impostazione non può essere realizzata usando il partizionamento guidato poiché
mostra delle variazioni che possono essere realizzate solo con il
partizionamento manuale.

Con questo si conclude la parte guidata del partizionamento. Se si è
soddisfatti della tabella delle partizioni appena creata si può selezionare
Terminare il partizionamento e scrivere i cambiamenti sul disco dal menu per
scrivere la nuova tabella delle partizioni (come descritto alla fine di questa
sezione). Invece se il risultato non è soddisfacente si può scegliere Annullare
i cambiamenti alle partizioni ed eseguire un nuovo partizionamento guidato o
modificare i cambiamenti proposti usando la stessa procedura (descritta in
seguito) per il partizionamento manuale.

6.3.2.2. Partizionamento manuale

Se si sceglie di partizionare manualmente viene mostrata una schermata simile
alla precedente ma con la tabella delle partizioni esistente e senza i mount
point. Come configurare manualmente la tabella delle partizioni e l'uso delle
partizioni nel nuovo sistema sono argomenti trattati nel seguito di questa
sezione.

Se si sceglie un disco nuovo, su cui non è presente nessuna partizione o su cui
non c'è spazio libero, viene chiesto se si vuole creare una nuova tabella delle
partizioni (questa operazione è necessaria per poter creare delle nuove
partizioni). Come conseguenza a questa operazione, sotto il disco selezionato,
appare una nuova riga intitolata «FREE SPACE» (spazio libero).

Quando si seleziona dello spazio libero viene data la possibilità di creare una
nuova partizione; è necessario rispondere a poche domande sulla sua dimensione,
il tipo (primaria o logica) e la posizione (all'inizio o alla fine dello spazio
libero). Poi è visualizzato un dettagliato resoconto della nuova partizione.
L'opzione più importante è Usato come:, infatti determina se la partizione deve
avere un file system oppure se deve essere usata come swap, in RAID software,
con LVM, con un file system cifrato oppure se non deve essere utilizzata.
Inoltre è possibile specificare altre opzioni come il punto di mount, le
opzioni di mount e il flag avviabile; queste opzioni sono visualizzate in base
all'uso che si intende fare della partizione. Se i valori predefiniti non sono
di proprio gradimento si possono cambiare, per esempio selezionando l'opzione
Usato come: si può cambiare il file system per la partizione compresa la
possibilità di usare la partizione come swap, in RAID software, con LVM o non
utilizzarla affatto. Un'altra comoda funzionalità è la possibilità di copiare i
dati da una partizione esistente. Conclusa la configurazione della partizione
si può selezionare Preparazione di questa partizione completata per ritornare
alla schermata principale di partman.

Per cambiare qualcosa sulle partizioni si deve selezionare la partizione, in
questo modo appare il menu di configurazione della partizione; è la stessa
schermata usata per la creazione di una nuova partizione dalla quale è
possibile modificare le stesse impostazioni. Una delle funzioni possibili, ma
non ovvia, è la possibilità di ridimensionare la partizione selezionando la
voce in cui è mostrata la dimensione della partizione. Il ridimensionamento
funziona almeno sui file system fat16, fat32, ext2, ext3 e swap. Questo menu
consente anche di cancellare una partizione.

Devono essere creare almeno due partizioni: una per il file system di root (che
verrà montato come /) e una per l'area di swap. Se non si dichiara un file
system di root partman impedisce l'avanzamento dell'installazione.

Le capacità di partman possono essere estese con altri moduli per
l'installatore che però dipendono dall'architettura del sistema. Perciò se non
tutte le funzionalità promesse sono disponibili si deve verificare che tutti i
moduli necessari siano stati caricati (per esempio partman-ext3, partman-xfs o
partman-lvm).

Quando si è soddisfatti della tabella delle partizioni, selezionare Terminare
il partizionamento e scrivere i cambiamenti sul disco dal menu. Verrà
presentato un breve riepilogo delle modifiche fatte sui dischi e verrà chiesto
di confermare la creazione dei file system.

6.3.2.3. Configurazione di device multidisco (RAID software)

Se nel proprio sistema ci sono più dischi fissi^[13] si può usare mdcfg per
configurare i dischi in modo da incrementare le prestazioni e/o migliorare
l'affidabilità dei dati. Il risultato è un Multidisk Device (o almeno la sua
variante più famosa, il RAID software).

Un MD è un insieme di partizioni localizzate su dischi differenti e combinate
insieme per formare un dispositivo logico. Questo device può quindi essere
usato come una normale partizione (cioè lo si può partizionare con partman, si
può assegnargli un mount point, ecc.).

I benefici che è possibile ricavare dipendono dal tipo di dispositivo MD che si
intende creare. Attualmente quelli supportati sono:

RAID0

    Lo scopo di RAID0 sono le prestazioni. RAID0 divide tutti i dati entranti
    in strisce e le distribuisce in modo uniforme su tutti i dischi. Questo può
    incrementare la velocità delle operazioni di lettura/scrittura, ma in caso
    di rottura di uno dei dischi si perdono tutti i dati (infatti parte delle
    informazioni sono sui dischi integri e l'altra parte era sul disco rotto).

    Un uso tipico di RAID0 è una partizione per l'editing video.

RAID1

    Adatto nelle situazioni in cui l'affidabilità è la necessità primaria.
    Consiste di più partizioni (di solito due) della stessa dimensione e ogni
    partizione contiene esattamente gli stessi dati. Questo comporta tre cose:
    se uno dei dischi si rompe i dati rimangono disponibili sugli altri dischi,
    è possibile usare solo una parte della capacità dei dischi (in particolare
    la dimensione della partizione più piccola in RAID), incremento delle
    prestazioni dato che la lettura dei dati è bilanciata sui dischi, per
    esempio su un file server il numero delle letture è superiore a quello
    delle scritture.

    Nell'array è possibile inserire anche un disco di scorta che in caso di
    rottura di uno degli altri dischi lo rimpiazza.

RAID5

    È un buon compromesso fra velocità, affidabilità e ridondanza dei dati.
    RAID5 divide tutti i dati entranti in strisce e le distribuisce in modo
    uniforme su tutti i dischi (come con RAID0) tranne uno. Diversamente da
    RAID0, con RAID5 sono calcolate le informazioni sulla parità che poi sono
    scritte sul disco rimanente. Il disco di parità non è fisso (questo è vero
    per RAID4) ma viene cambiato periodicamente in modo che anche le
    informazioni di parità sono distribuite uniformemente su tutti i dischi.
    Quando un disco si rompe la parte mancante dei dati può essere calcolata
    usando le altre parti dei dati e le informazioni di parità. RAID5 deve
    essere composto da almeno tre partizioni attive, inoltre nell'array si può
    avere anche un disco di scorta che nel caso di rottura di un disco
    rimpiazza il disco rotto.

    Come si può notare il RAID5 ha un grado di affidabilità simile al RAID1 con
    minor richiesta di ridondanza. D'altra parte le operazioni di scrittura
    possono essere un po' più lente rispetto al RAID0 a causa del calcolo delle
    informazioni di parità.

RAID6

    Simile a RAID5 con l'eccezione che utilizza due dispositivi per la parità
    anziché uno.

    Un array RAID6 può sopravvivere alla rottura di due dischi.

RAID10

    RAID10 combina lo striping (come in RAID0) e il mirroring (come in RAID1).
    Vengono create n copie dei dati in arrivo che sono distribuite fra le
    partizioni in modo che nessuna copia dei dati sia scritta sullo stesso
    dispositivo. Il valore predefinito per n è 2, ma può essere cambiato in
    modalità esperto. Il numero di partizioni usato deve essere almeno n.
    RAID10 può distribuire le copie usando diversi layout. Il layout
    predefinito prevede copie vicine. Con le copie vicine, tutte le copie hanno
    lo stesso offset sui dischi. Invece le copie lontane hanno offset diversi.
    Le copie offset copiano l'intera striscia, non la singola copia.

    RAID10 può essere usato per avere affidalibità e ridondanza senza lo
    svantaggio di dover calcolare la parità.

Riassumendo:

┌──────┬─────────┬─────────┬───────────┬──────────────────────────────────────┐
│      │ Numero  │Device di│ Resiste a │                                      │
│ Tipo │minimo di│ scorta  │rotture del│          Spazio disponibile          │
│      │ device  │         │  disco?   │                                      │
├──────┼─────────┼─────────┼───────────┼──────────────────────────────────────┤
│      │         │         │           │La dimensione della partizione più    │
│RAID0 │2        │no       │no         │piccola moltiplicata per il numero di │
│      │         │         │           │device in RAID.                       │
├──────┼─────────┼─────────┼───────────┼──────────────────────────────────────┤
│RAID1 │2        │Opzionale│sì         │La dimensione della partizione più    │
│      │         │         │           │piccola in RAID                       │
├──────┼─────────┼─────────┼───────────┼──────────────────────────────────────┤
│      │         │         │           │La dimensione della partizione più    │
│RAID5 │3        │Opzionale│sì         │piccola moltiplicata per il numero di │
│      │         │         │           │device in RAID meno 1.                │
├──────┼─────────┼─────────┼───────────┼──────────────────────────────────────┤
│      │         │         │           │La dimensione della partizione più    │
│RAID6 │4        │Opzionale│sì         │piccola moltiplicata per il numero di │
│      │         │         │           │device in RAID meno 2.                │
├──────┼─────────┼─────────┼───────────┼──────────────────────────────────────┤
│      │         │         │           │La somma di tutte le partizioni diviso│
│RAID10│2        │Opzionale│sì         │per il numero di pezzi per copia (il  │
│      │         │         │           │numero predefinito è 2)               │
└──────┴─────────┴─────────┴───────────┴──────────────────────────────────────┘

Se si desidera conoscere tutto ciò che c'è da sapere sul RAID software si
consulti il Software RAID HOWTO.

Per creare un device MD si devono marcare le partizioni da usare in RAID
(questo si può fare con partman, nel menu Impostazioni della partizione
scegliere Usato come: → volume fisico per il RAID).

Nota

Assicurarsi che il sistema si possa avviare con lo schema di partizionamento
che si intende applicare. In generale per utilizzare il file system di root (/)
in RAID è necessario creare un file system separato per /boot. La maggior parte
dei boot loader (compresi lilo e grub) supportano il RAID1 in mirror (non in
strisce), quindi una soluzione può essere usare RAID5 per / e RAID1 per /boot.

Avvertimento

Il supporto per MD è un'aggiunta al sistema d'installazione relativamente
recente. Si potrebbero verificare dei problemi con alcuni dei livelli RAID in
combinazione con alcuni bootloader se si prova a usare un device MD per il file
system di root (/). Gli utenti più esperti possono aggirare alcuni di questi
problemi eseguendo alcuni passi dell'installazione manualmente tramite una
shell.

Poi nel menu principale di partman si deve selezionare Configurare il RAID
software (questo menu appare solo dopo aver marcato almeno una partizione come
volume fisico per il RAID). Nella prima schermata di mdcfg selezionare Creare
un device multidisk (MD), viene presentato un elenco dei tipi di device MD
supportati dal quale scegliere. Quello che segue dipende dal tipo di device MD
scelto.

  ● RAID0 è semplice, viene mostrato l'elenco delle partizioni RAID disponibili
    e l'unica cosa da fare è scegliere le partizioni con le quali si vuole
    comporre il device MD.

  ● RAID1 è leggermente più complesso. Prima viene chiesto il numero di
    partizioni attive e il numero di partizioni di scorta per il nuovo device
    MD. Poi è necessario scegliere dall'elenco delle partizioni RAID
    disponibili quali saranno quelle attive e quali saranno quelle di scorta.
    Il numero totale di partizioni deve coincidere con quello specificato in
    precedenza. Se durante la selezione si compie un errore e si sceglie un
    numero sbagliato di partizioni debian-installer non permette di proseguire
    con l'installazione fino a quando non si corregge questo errore.

  ● La procedura di configurazione di RAID5 è simile a quella per RAID1 con una
    eccezione, è necessario usare almeno tre partizioni attive.

  ● Anche RAID6 ha una procedura di configurazione simile a quella per RAID1
    con un'eccezione: sono necessarie almeno quattro partizioni.

  ● Infine anche RAID10 ha una procedura di configurazione simile a quella per
    RAID1 tranne quando viene eseguita in modalità esperto. Infatti, in tale
    modalità, debian-installer chiede il layout che può essere n (per le copie
    vicine), f (per le copie lontane) oppure o (per copie in offset). La
    seconda parte è il numero di copie dei dati da fare. Deve essere almeno
    uguale al numero di dispositivi attivi in modo che tutte le copie siano
    scritte su dischi diversi.

È possibile avere diversi tipi di MD contemporaneamente. Per esempio, se si
dedicano al MD 3 hard disk da 200 GB, ciascuno con due partizioni da 100 GB, si
possono combinare le prime partizioni di tutti e tre i dischi in un RAID0 (come
partizione veloce da 300 GB per l'editing video) e usare le altre tre
partizioni (2 attive e 1 di scorta) in RAID1 (come partizione da 100 GB più
affidabile per la /home).

Dopo aver preparato i device MD a proprio piacimento si può Terminare mdcfg e
tornare a partman per creare i filesystem sui nuovi device MD e per assegnare i
normali attributi, per esempio il mount point.

6.3.2.4. Configurazione del Logical Volume Manager (LVM)

Se si lavora con i computer come amministratore di sistema o come utente
«esperto» sicuramente si conoscerà la situazione in cui qualche partizione del
disco (di solito quella più importante) è quasi completamente occupata, mentre
altre partizioni sono abbondantemente sottoutilizzate che si gestisce spostando
i dati, facendo dei link simbolici, ecc.

Per evitare la situazione descritta sopra si può usare un Logical Volume
Manager (LVM). In poche parole con LVM si possono combinare le partizioni (i
volumi fisici nel gergo di LVM) in un disco virtuale (chiamato gruppo di volumi
) che poi può essere diviso in partizioni virtuali (i volumi logici). La cosa
importante è che i volumi logici (e ovviamente i gruppi di volumi sottostanti)
possono estendersi su più dischi fisici.

Quando ci si accorge che per la propria partizione /home si ha bisogno di più
degli attuali 160 GB si può semplicemente aggiungere un disco da 300 GB al
computer, unirlo al gruppo di volumi esistente e infine ridimensionare il
volume logico che contiene il filesystem /home; adesso gli utenti avranno a
disposizione una nuova partizione da 460 GB. Questo esempio è stato
semplificato al massimo. Se ancora non si è letto LVM HOWTO si consiglia di
farlo.

La configurazione di LVM con il debian-installer è abbastanza semplice e
completamente supportata da partman. Come prima cosa si devono marcare le
partizioni da usare come volumi fisici per LVM, questo si può fare dal menu
Impostazioni della partizione scegliendo Usato come: → volume fisico per LVM.

Poi, tornando al menu principale di partman, sarà visibile una nuova voce
Configurare il Logical Volume Manager. Quando viene selezionata è richiesto di
confermare (se presenti) le modifiche alla tabella delle partizioni ancora in
sospeso e poi è mostrato il menu di configurazione del LVM. Prima del menu è
mostrato un riepilogo della configurazione del LVM. Il contenuto del menu
dipende dal contesto quindi mostra solo le azioni valide. Le azioni possibili
sono:

  ● Mostra dettagli di configurazione: mostra struttura, nomi e dimensioni del
    volume logico e altre informazioni

  ● Creare i gruppi di volumi

  ● Creare un volume logico

  ● Cancellare i gruppi di volumi

  ● Cancellare il volume logico

  ● Estendere il gruppo di volumi

  ● Ridurre il gruppo di volumi

  ● Terminare: ritorna al menu principale di partman

Usare le voci nel menu per creare un gruppo di volumi e poi per creare dei
volumi logici al suo interno.

Al rientro nel menu principale di partman tutti i volumi logici sono elencati
come se fossero delle normali partizioni (e devono essere trattati come tali).

6.3.2.5. Configurazione di volumi cifrati

debian-installer consente di preparare delle partizioni cifrate; ogni file
scritto su partizioni di questo tipo viene immediatamente salvato sul device
usando un formato cifrato. L'accesso ai dati cifrati è permesso solo dopo aver
inserito la passphrase scelta alla creazione della partizione cifrata. Questa
funzionalità è utile per proteggere i dati sensibili nel caso di furto del
proprio portatile o del proprio disco fisso, il ladro potrebbe avere accesso
fisico al disco fisso ma senza conoscere la passphrase corretta, i dati sul
disco risultano essere una sequenza casuale di caratteri.

Le partizioni più importanti da cifrare sono: la partizione home, in cui
risiedono i dati privati, e la partizione di swap, in cui durante la normale
attività potrebbero essere temporaneamente memorizzati dei dati sensibili.
Ovviamente nulla vieta di cifrare qualsiasi altra partizione. Per esempio in /
var i database server, i mail server o i print server salvano i propri dati,
oppure /tmp è usata da vari programmi per memorizzare dei file temporanei
potenzialmente importanti. Si potrebbe anche voler cifrare l'intero sistema;
l'unica partizione che deve rimanere non cifrata è la /boot perché, al momento,
non c'è modo di caricare il kernel da una partizione cifrata.

Nota

Le prestazioni di una partizione cifrata sono inferiori rispetto a quelle di
una partizione tradizionale perché i dati devono essere decifrati o cifrati a
ogni lettura o scrittura. L'impatto sulle prestazioni dipende dalla velocità
della CPU, dal cifrario scelto e dalla lunghezza della chiave.

Per usare la cifratura è necessario creare una nuova partizione dopo aver
selezionato dello spazio libero dal menu principale di partizionamento.
Un'altra possibilità è selezionare una partizione esistente (per esempio una
normale partizione, un volume logico di LVM o un volume RAID). Dal menu
Impostazioni della partizione si deve scegliere volume fisico per la cifratura
come valore del campo Usato come:. Il menu cambia in modo da visualizzare le
opzioni relative a come cifrare la partizione.

debian-installer supporta più metodi di cifratura. Il metodo predefinito è
dm-crypt (incluso nei nuovi kernel Linux e in grado di ospitare volumi fisici
per LVM), l'altro metodo è loop-AES (più vecchio e manutenuto separatamente dai
sorgenti del kernel Linux). Se non esistono ragioni impellenti per fare
altrimenti si raccomanda di utilizzare il metodo predefinito.

Prima vediamo quali sono le opzioni disponibili quando si sceglie Device-mapper
(dm-crypt) come metodo di cifratura. Come al solito: quando si hanno dei dubbi
si accettino i valori predefiniti, poiché sono stati attentamente scelti in
funzione della sicurezza del sistema finale.

Cifratura: aes

    Questa opzione permette di scegliere l'algoritmo di cifratura (cifrario) da
    usare per cifrare i dati nella partizione. Attualmente debian-installer
    supporta i seguenti cifrari a blocchi: aes, blowfish, serpent e twofish.
    Non rientra fra gli obiettivi di questo documento discutere le qualità dei
    vari algoritmi, comunque può essere utile sapere che nel 2000 l'American
    National Institute of Standards and Technology ha scelto AES come
    l'algoritmo standard per la protezione delle informazioni sensibili nel
    21-esimo secolo.

Dimensione della chiave: 256

    Si può specificare la lunghezza della chiave di cifratura. Generalmente una
    chiave più lunga aumenta la forza della cifratura, d'altra parte
    all'aumento della lunghezza della chiave corrisponde un impatto negativo
    sulle prestazioni. Le lunghezze disponibili per la chiave dipendono dal
    cifrario.

Algoritmo di IV: cbc-essiv:sha256

    In crittografia il Vettore di Inizializzazione o IV è usato per garantire
    che applicando l'algoritmo di cifratura sullo stesso testo in chiaro e con
    la stessa chiave si ottenga sempre un unico testo cifrato. Lo scopo è di
    impedire a un aggressore di dedurre informazioni cercando sequenze che si
    ripetono nei dati cifrati.

    Fra le alternative proposte quella predefinita (cbc-essiv:sha256) è
    attualmente la meno vulnerabile ai tipi di attacco conosciuti. Si può usare
    una delle alternative solo dovendo garantire la compatibilità con altri
    sistemi già installati che non sono in grado di usare degli algoritmi più
    recenti.

Chiave di cifratura: Passphrase

    Adesso si deve scegliere il tipo di chiave di cifratura per la partizione.

    Passphrase

        La chiave di cifratura viene calcolata^[14] sulla base di una
        passphrase che di dovrà inserire successivamente durante il processo
        d'installazione.

    Chiave casuale

        Una nuova chiave di cifratura viene generata partendo da dati casuali
        ogni volta che si prova ad attivare la partizione cifrata. In altre
        parole: ad ogni riavvio del sistema il contenuto della partizione è
        perso perché la chiave è cancellata dalla memoria. (Ovviamente si più
        provare a indovinare la chiave con un attacco di forza bruta ma, a meno
        dell'esistenza di una falla sconosciuta nel cifrario, è un risultato
        che non si ottiene nella durata della nostra esistenza).

        Le chiavi casuali sono particolarmente utili per le partizioni di swap,
        infatti non è necessario dover ricordare la passphrase o eliminare i
        dati sensibili dalla partizione di swap prima di spegnere la macchina.
        Purtroppo ciò significa che non si può usare la funzionalità
        «suspend-to-disk» offerta dai kernel Linux più recenti dato che è
        impossibile (durante l'avvio di ripristino) recuperare i dati
        memorizzati nella partizione di swap.

Cancellare i dati: sì

    Determina se il contenuto di questa partizione debba essere sovrascritto
    con dei dati casuali prima di impostare la cifratura. Si raccomanda questa
    operazione perché altrimenti un aggressore potrebbe essere in grado di
    riconoscere quali parti della partizione sono in uso e quali no. Inoltre
    questo rende più complesso il ripristino di qualsiasi dato rimasto dalle
    precedenti installazioni^[15].

Scegliendo Metodo di cifratura: → Loopback (loop-AES), il menu varia per
mostrare le seguenti opzioni:

Cifratura: AES256

    Per loop-AES, diversamente da dm-crypt, le scelte relative al cifrario e
    alla lunghezza della chiave sono dipendenti fra loro, per cui vanno fornite
    contemporaneamente. Si vedano le sezioni precedenti su cifrario e lunghezza
    della chiave per ulteriori informazioni.

Chiave di cifratura: File chiave (GnuPG)

    Adesso si deve scegliere il tipo di chiave di cifratura per la partizione.

    File chiave (GnuPG)

        La chiave di cifratura è generata partendo da dei dati casuali durante
        l'installazione. Inoltre la chiave viene cifrata con GnuPG, quindi per
        poterla usare sarà necessario inserire la passphrase corretta (in
        seguito, durante il processo d'installazione, verrà richiesto di
        sceglierne una).

    Chiave casuale

        Si veda la sezione precedente sulle chiavi casuali.

Cancellare i dati: sì

    Si veda la sezione precedente sulla cancellazione dei dati.

Dopo aver scelto i parametri per le partizioni cifrate, tornare al menu
principale di partizionamento. Adesso è presente una nuova voce di menu con
nome Configurare volumi cifrati. Dopo averla selezionata viene chiesto di
confermare la cancellazione dei dati nelle partizioni marcate per essere
ripulite e di confermare altre cose come la scrittura della nuova tabella delle
partizioni. Se la partizione è di grandi dimensioni questa operazione potrebbe
richiedere un po' di tempo.

Poi viene chiesto di inserire la passphrase per ognuna delle partizioni
configurate. Una buona passphrase dovrebbe essere di almeno 8 caratteri,
dovrebbe essere composta da lettere, numeri e altri caratteri e non dovrebbe
contenere parole che si possono trovare in un dizionario né informazioni
personali (come la data di nascita, hobby, nomi di animali domestici, nomi di
familiari o parenti, ecc.).

Avvertimento

Prima di inserire qualsiasi passphrase si deve essere sicuri che la tastiera
sia configurata correttamente e che i caratteri generati siano quelli che ci si
aspetta. Se non si è sicuri si può passare sulla seconda console virtuale e
fare delle prove. Ciò garantisce di non avere sorprese in seguito, per esempio
inserendo la passphrase con una tastiera qwerty configurata con una
disposizione azerty. Questa situazione può avere più cause. Forse durante
l'installazione si è cambiato la disposizione della tastiera, oppure la
disposizione della tastiera non era stata ancora configurata quando si è
inserito la passphrase per il file system di root.

Se per creare le chiavi di cifratura si fossero scelti metodi diversi dalla
passphrase, le chiavi verrebbero create adesso. Dato che duranti i primi passi
dell'installazione il kernel potrebbe non aver accumulato entropia sufficiente
il processo potrebbe richiedere parecchio tempo. Il processo può essere
velocizzato generando entropia: cioè premendo dei tasti a caso, passando alla
shell nella seconda console virtuale per causare traffico di rete o con i
dischi (scaricando dei file, inviando dei file di grosse dimensioni in /dev/
null, ecc.). Questa operazione deve essere ripetuta per ogni partizione da
cifrare.

Dopo essere ritornati al menu di partizionamento principale si vedranno tutti i
volumi cifrati come altre partizioni e possono essere configurati come se
fossero delle partizioni tradizionali. L'esempio seguente mostra due volumi
diversi; il primo è cifrato via dm-crypt, il secondo via loop-AES.

Volume cifrato (sda2_crypt) - 115.1 GB Linux device-mapper
     #1 115.1 GB  F ext3

Loopback (loop0) - 515.2 MB AES256 keyfile
     #1 515.2 MB  F ext3

Adesso è il momento di assegnare i punti di mount ai volumi ed eventualmente
modificare il tipo di file system se quello predefinito non è adatto ai propri
scopi.

Fare attenzione agli identificatori fra parentesi (in questo esempio (
sda2_crypt e loop0) e dei punti di mount che si assegnano ai volumi. Queste
informazioni sono necessarie in seguito, durante l'avvio del nuovo sistema. Le
differenze fra il processo d'avvio tradizionale e quello con la crittazione
verranno spiegate successivamente in Sezione 7.2, «Montare volumi cifrati».

Quando si è soddisfatti dello schema di partizionamento si può proseguire con
l'installazione.

6.3.3. Installazione del sistema base

Nonostante questa fase sia la meno problematica, richiede una parte
significativa del tempo di installazione perché scarica, verifica e scompatta
l'intero sistema base. Se si possiede un computer lento o una connessione di
rete lenta, ciò potrebbe richiedere un certo tempo.

Durante l'installazione del sistema di base i messaggi relativi all'estrazione
e alla configurazione dei pacchetti sono rediretti su tty4. È possibile
accedere a questo terminale premendo Alt+F4; per tornare al terminale con il
processo d'installazione principale premere Alt+F1.

I messaggi relativi all'estrazione e alla configurazione dei pacchetti generati
durante questa fase sono salvati anche in /var/log/syslog. Quando
l'installazione avviene tramite una console seriale questo è l'unico posto in
cui è possibile vederli.

Come parte dell'installazione viene installato un kernel Linux. Usando la
priorità predefinita il programma d'installazione sceglie il kernel che meglio
si adatta al proprio hardware. Nelle modalità con priorità più bassa è
possibile scegliere uno dei kernel fra quelli disponibili.

6.3.4. Impostazione di utenti e password

Dopo aver installato il sistema di base, l'installatore permette di configurare
l'account «root» e/o un account per il primo utente. Si possono creare altri
account utente una volta completata l'installazione.

6.3.4.1. Impostazione della password di root

L'account di root viene anche chiamato superutente; è un utente che aggira
tutte le protezioni di sicurezza del sistema, deve quindi essere usato solo per
le operazioni di amministrazione del sistema, e per il minor tempo possibile.

Qualsiasi password creata dovrebbe contenere almeno 6 caratteri, con lettere
maiuscole e minuscole, cifre e segni di interpunzione. Durante l'impostazione
della password di root si deve fare ancora più attenzione, dato che è l'account
con i maggiori poteri. Evitare le parole che si trovano nei dizionari e non
usare informazioni personali che possano essere indovinate.

Se qualcuno dice che gli serve la password di root, si dev'essere estremamente
cauti. Non la si dovrebbe mai fornire a nessuno, a meno che non si stia
amministrando una macchina con più di un amministratore di sistema.

6.3.4.2. Creazione di un utente normale

Il sistema a questo punto chiederà se si vuole creare un account per un utente
normale, da usare per le attività quotidiane personali, per le quali non si
deve assolutamente usare l'account di root.

Perché no? Una ragione per evitare di usare i privilegi di root è che è molto
facile fare dei danni irreparabili. Un'altra è che si può essere portati con
l'inganno ad attivare un cavallo di troia (o «trojan»), cioè un programma che
sfrutta i poteri di superutente per compromettere la sicurezza del sistema. Un
buon libro sull'amministrazione dei sistemi Unix coprirà questo argomento in
maggior dettaglio, vale la pena leggerne uno se non si conosce la questione.

Per prima cosa viene chiesto il nome completo dell'utente, poi viene chiesto un
nome per l'account, solitamente è sufficiente il proprio nome o qualcosa di
simile. Infine viene chiesta una password per l'account.

Se in qualsiasi momento dopo l'installazione si vuole creare un altro utente,
usare il comando adduser.

6.3.5. Installazione di altri programmi

A questo punto è disponibile un sistema usabile ma molto limitato. La maggior
parte degli utenti vuole installare altri programmi per adattare il sistema
alle proprie necessità, e il programma d'installazione consente di farlo. Se si
possiede un computer lento o una connessione di rete lenta, ciò potrebbe
richiedere molto più tempo rispetto all'installazione del sistema di base.

6.3.5.1. Configurazione di APT

Uno degli strumenti usati per installare i pacchetti su un sistema Debian GNU/
Linux è un programma chiamato apt-get, contenuto nel pacchetto apt^[16]. Si
possono usare anche altre interfacce per la gestione dei pacchetti come
aptitude e synaptic. Queste interfacce sono quelle consigliate ai nuovi utenti
poiché integrano alcune caratteristiche (ricerca dei pacchetti e verifica dello
stato) in un'interfaccia utente gradevole. Infatti il programma di gestione dei
pacchetti raccomandato è aptitude.

apt deve essere configurato indicando la posizione da cui può recuperare i
pacchetti. Il risultato di questa configurazione è scritto nel file /etc/apt/
sources.list che è possibile esaminare e modificare a proprio piacimento una
volta conclusa l'installazione.

Se l'installazione avviene alla priorità predefinita, l'installatore si occupa
automaticamente della maggior parte della configurazione basandosi sul metodo
d'installazione in uso e sulle scelte fatte nelle fasi iniziali
dell'installazione. Nella maggior parte dei casi l'installatore aggiunge
automaticamente un mirror per la sicurezza e, quando si installa la
distribuzione stabile, un mirror per accedere al servizio d'aggiornamento
«volatile».

Se l'installazione avviene a una priorità più bassa (cioè in modalità esperto),
è possibile scegliere da soli cosa fare, se installare i servizi
d'aggiornamento di sicurezza o volatile, oppure se aggiungere i pacchetti dalle
sezioni «contrib» e «non-free» dell'archivio.

6.3.5.1.1. Installazione da più di un CD o DVD

Si si installa da un CD o un DVD che fa parte di un set, l'installatore
richiede se si vuole eseguire l'analisi di altri CD o DVD. Se si dispone di
altri CD o DVD, è consigliabile effettuare l'analisi per permettere
all'installatore di usare anche i pacchetti su questi supporti.

Se non si dispone di altri CD o DVD, non è un problema: non sono necessari. Se
non si usa nemmeno un mirror in rete (come spiegato nella prossima sezione),
può accadere che sia impossibile installare tutti i pacchetti che fanno parte
dei task selezionabili nel prossimo passo dell'installazione.

Nota

I pacchetti sono inseriti nei CD (e DVD) in base alla loro popolarità. Questo
vuol dire che la maggior parte degli utenti usano solo i primi CD di un set e
che attualmente solo poche persone usano i pacchetti presenti nell'ultimo CD
del set.

Questo vuol anche dire che comprare o scaricare e masterizzare un set di CD
completo è solo uno spreco di soldi dato che la maggior parte di questi non
verrà mai usata. Nella maggior parte dei casi è consigliabile recuperare solo i
primi 3 degli 8 CD e installare qualsiasi ulteriore pacchetto da Internet
tramite un mirror. La stessa cosa vale per il set di DVD: il primo DVD, o forse
i primi 2 DVD, dovrebbero coprire la maggior parte delle necessità.

Una buona regola pratica è che per una normale installazione di un desktop (con
l'ambiente desktop GNOME) sono necessari solo i primi 3 CD. Per gli ambienti
desktop alternativi (KDE o Xfce), sono necessari anche altri CD. Il primo DVD è
sufficiente per tutti e tre gli ambienti desktop.

Se si analizzano più CD o DVD, l'installatore chiederà di cambiare disco quando
avrà bisogno dei pacchetti presenti in un CD/DVD diverso da quello presente nel
lettore. Notare che si possono analizzare solo CD e DVD appartenenti allo
stesso set; l'ordine con cui sono analizzati non ha importanza, comunque se si
procede in ordine crescente si riducono le possibilità di fare degli errori.

6.3.5.1.2. Uso di un mirror di rete

Una delle domande poste durante l'installazione riguarda se utilizzare oppure
no un mirror di rete come sorgente per i pacchetti. Nella maggior parte dei
casi la risposta predefinita è corretta, ma ci sono alcune eccezioni.

Se per l'installazione non si utilizza un CD, un DVD oppure l'immagine di un CD
/DVD, si raccomanda di usare un mirror di rete altrimenti si conclude
l'installazione con un sistema minimale. Tuttavia, se si dispone di una
connessione a Internet limitata, è consigliabile non scegliere il task desktop
nella prossima fase dell'installazione.

Se per l'installazione si utilizza un solo CD oppure l'immagine di un CD, non è
necessario usare un mirror ma è caldamente raccomandato farlo poiché un solo CD
contiene un numero abbastanza limitato di pacchetti. Però se si dispone di una
connessione a Internet limitata è consigliabile scegliere di non usare un
mirror, di completare l'installazione usando solo ciò che è disponibile sul CD
e di installare altri pacchetti in seguito (cioè dopo aver riavviato il nuovo
sistema).

Se per l'installazione si utilizza un DVD oppure l'immagine di un DVD, tutti i
pacchetti necessari durante l'installazione dovrebbero essere presenti nel
primo DVD. La stessa cosa vale se durante l'installazione si esegue l'analisi
dei CD come spiegato in precedenza. In questo caso l'uso di un mirror è
opzionale.

Un vantaggio dell'aggiunta di un mirror è che gli aggiornamenti rilasciati dopo
la creazione del set di CD/DVD, e inclusi in uno dei rilasci minori, diventano
disponibili per l'installazione, quindi si allunga la vita del proprio set di
CD/DVD senza compromettere la sicurezza o la stabilità del sistema installato.

In breve: la scelta di un mirror di rete è generalmente una buona idea, tranne
quando non si dispone di una buona connessione a Internet. Se la versione
attuale di un pacchetto è disponibile sul CD/DVD, l'installatore usa sempre
questo supporto. L'ammontare dei dati da scaricare quando si seleziona un
mirror dipende da

 1. quali task saranno scelti nel prossimo passo dell'installazione,

 2. quali pacchetti fanno parte di quei task,

 3. quali di questi pacchetti sono presenti sui CD o DVD analizzati e

 4. se da un mirror (sia un normale mirror per i pacchetti che un mirror con
    gli aggiornamenti per la sicurezza o di volatile) sono disponibili versioni
    dei pacchetti aggiornate rispetto a quelle sui CD o DVD.

Notare che il significato dell'ultimo punto è che anche quando si sceglie di
non usare un mirror di rete, alcuni pacchetti potrebbero essere comunque
scaricati da Internet qualora siano disponibili aggiornamenti di sicurezza o da
volatile e se questi servizi sono stati configurati.

6.3.5.2. Selezione e installazione dei pacchetti

Durante il processo d'installazione viene data l'opportunità di scegliere e
installare altri programmi. Anziché scegliere i singoli pacchetti fra gli oltre
22600 disponibili, in questa fase del processo d'installazione si possono
installare solo delle raccolte predefinite di programmi che permettono di
preparare rapidamente il proprio computer per diverse attività.

Così si avrà la possibilità di scegliere dei task (funzionalità) prima, e poi
aggiungervi in seguito più pacchetti singoli. Questi task rappresentano con
semplicità molti diversi lavori o cose che si intendano fare con il computer,
come «l'ambiente desktop», «il server web», o «il server di stampa»^[17].
Sezione D.2, «Spazio su disco necessario per i task» mostra lo spazio
necessario per ogni task disponibile.

Alcuni task possono essere preselezionati dal sistema d'installazione in base
alle caratteristiche del computer su cui si sta facendo l'installazione, se i
task preselezionati non fossero di proprio gradimento è possibile
deselezionarli. A questo punto dell'installazione è possibile anche non
installare alcun task.

Nota

Il task «Ambiente Desktop» installa l'ambiente desktop GNOME, a meno che non si
utilizzino dei CD speciali per KDE o Xfce/LXDE.

Durante l'installazione interattiva non è possibile scegliere un ambiente
desktop diverso. Però è possibile forzare debian-installer a installare
l'ambiente desktop KDE al posto di GNOME tramite la preconfigurazione (si veda
Sezione B.4.11, «Selezione dei pacchetti») oppure specificando desktop=kde" al
prompt boot all'avvio dell'installatore. In alternativa è possibile installare
un ambiente desktop più leggero quale Xfce o LXDE, usando desktop=xfce oppure
desktop=lxde.

Alcuni tipi di immagine per CD (businesscard, netinst e DVD) permettono anche
di scegliere l'ambiente desktop preferito dal menu d'avvio grafico. Selezionare
l'opzione «Advanced options» dal menu principale e poi «Alternative desktop
environments».

Notare che questo sistema funziona solo se i pacchetti necessari all'ambiente
desktop scelto sono disponibili; se l'installazione avviene con l'immagine
completa di un solo CD, sarà necessario scaricarli da un mirror dato che la
maggior parte dei pacchetti sono inclusi negli altri CD; se per l'installazione
si usa l'immagine di un DVD oppure un altro metodo, l'installazione di KDE,
Xfce o LXDE dovrebbe avvenire correttamente.

Con i diversi task di tipo server sono installati i seguenti programmi. DNS
server: bind9; File server: samba, nfs; Mail server: exim4, spamassassin,
uw-imap; Print server: cups; SQL database: postgresql; Web server: apache2.

Il task «Sistema standard» installa tutti i pacchetti con priorità «standard».
Questi includono molte delle utilità che comunemente sono disponibili su tutti
i sistemi Linux o Unix. Questo task dovrebbe rimanere selezionato a meno che
non si sappia esattamente cosa si sta facendo e si voglia un sistema realmente
minimale.

Dopo aver scelto i task da installare, premere Continuare; aptitude si occuperà
dell'installazione dei pacchetti che fanno parte dei task prescelti. Se un
programma ha bisogno di ulteriori informazioni dall'utente, queste informazioni
sono richieste durante l'installazione.

Nota

Con la normale interfaccia utente del programma d'installazione si può usare la
barra spaziatrice per selezionare e deselezionare un task.

Attenzione, il task Desktop può essere molto grosso. In particolare se
l'installazione avviene da un normale CD-ROM e in combinazione con un mirror
per i pacchetti che non sono sul CD-ROM, l'installatore potrebbe voler
recuperare parecchi pacchetti dalla rete. Se si dispone di una connessione a
Internet lenta, questa operazione potrebbe richiedere molto tempo. Non c'è modo
di arrestare l'installazione dei pacchetti una volta che è stata avviata.

Anche quando i pacchetti sono presenti sul CD-ROM, l'installatore potrebbe
comunque recuperare i pacchetti da un mirror se la versione del pacchetto
disponibile sul mirror è più recente di quella del pacchetto sul CD-ROM. Se si
installa la distribuzione stable, questo può accadere dopo un rilascio
intermedio (un aggiornamento del rilascio stable originale); se si installa la
distribuzione testing, questo accade se si usa un'immagine datata.

6.3.6. Rendere avviabile il sistema

Se si sta installando un terminale di lavoro senza disco, ovviamente, l'avvio
dal disco locale non è un'opzione valida e questo passo sarà saltato.

6.3.6.1. Rilevamento di altri sistemi operativi

Prima di installare un boot loader, l'installatore cerca di rilevare se sulla
macchina sono installati altri sistemi operativi. Se riconosce uno dei sistemi
operativi supportati, viene mostrato un avviso durante il passo d'installazione
del boot loader e il computer viene configurato in modo da avviare anche
l'altro sistema operativo oltre a Debian.

Si noti che l'avvio di più sistemi operativi su una singola macchina è ancora
materia oscura. Il supporto automatico per riconoscimento e configurazione del
boot loader per altri sistemi operativi varia con l'architettura e addirittura
con la sottoarchitettura. Nel caso non funzioni si deve consultare la
documentazione del boot manager per avere ulteriori informazioni.

6.3.6.2. Installazione del boot loader Grub sul disco fisso

Il principale boot loader per i386 è «grub». Grub è un boot loader robusto e
flessibile ed è una buona scelta sia per i nuovi utenti che per quelli più
esperti.

Grub viene installato nel Master Boot Record (MBR), cioè da dove può
controllare l'intero processo d'avvio. Ovviamente grub può essere installato
anche in posizioni diverse, si consulti il manuale di grub per ulteriori
informazioni.

Se non si vuole installare grub, premere il bottone Indietro per tornare al
menu principale e da lì scegliere quale boot loader si desidera usare.

6.3.6.3. Installazione del boot loader LILO sul disco fisso

Il secondo boot loader per i386 è «LILO». È un programma vecchio e molto
complesso che offre parecchie funzionalità, compresa la gestione dell'avvio per
DOS, Windows e OS/2. Se si hanno delle necessità particolari, leggere con
attenzione le istruzioni nella directory /usr/share/doc/lilo/; si veda anche il
LILO mini-HOWTO.

Nota

Attualmente l'installazione di LILO crea nel menu solo le voci per gli altri
sistemi operativi se questi possono essere caricati in catena. Questo vuol dire
che potrebbe essere necessario aggiungere manualmente le voci di menu per
avviare sistemi operativi come GNU/Linux e GNU/Hurd dopo l'installazione.

Il debian-installer offre tre scelte su dove installare il boot loader LILO:

Master Boot Record (MBR)

    In questo modo LILO ha il completo controllo sul processo d'avvio.

nuova partizione Debian

    Scegliere questa voce se si vuole usare un altro boot manager. LILO viene
    installato all'inizio della nuova partizione per Debian e funziona da boot
    loader secondario.

Altra scelta

    Utile per gli utenti più esperti che vogliono installare LILO da qualche
    altra parte, infatti viene chiesto dove installare. Si possono usare i
    tradizionali nomi dei device come /dev/hda o /dev/sda.

Se dopo l'esecuzione di questo passo non è più possibile avviare Windows 9x (o
DOS), è necessario usare un dischetto d'avvio per Windows 9x (MS-DOS) ed
eseguire il comando fdisk /mbr per reinstallare il master boot record di
MS-DOS; purtroppo dopo questa operazione è necessario usare un metodo
alternativo per avviare Debian.

6.3.6.4. Continua senza un boot loader

Questa opzione può essere usata per completare l'installazione senza che sia
necessariamente installato un boot loader, perché non ne esiste uno per
l'architettura/sottoarchitettura in uso oppure perché non lo si vuole
installare (per esempio si vuole usare il boot loader già esistente).

Se si pensa di configurare manualmente il proprio boot loader si deve
verificare in /target/boot il nome del kernel, sempre nella stessa directory si
deve vedere se c'è un initrd; se è presente probabilmente si dovrà configurare
il boot loader in modo che lo usi. Altre informazioni di cui si ha bisogno sono
il disco e la partizione scelta per il file system / e, se /boot è stata
installata su una partizione diversa, delle stesse informazioni anche per il
file system di /boot.

6.3.7. Completamento dell'installazione

Questo è l'ultimo passo del processo d'installazione di Debian durante il quale
l'installatore compie le ultime operazioni che consistono principalmente nel
mettere in ordine dopo il debian-installer.

6.3.7.1. Impostazione dell'orologio di sistema

Il programma d'installazione potrebbe chiedere se l'orologio del proprio
computer è impostato su UTC. Se possibile questa domanda non viene posta,
infatti il programma d'installazione determina se il sistema è impostato su UTC
analizzando quali altri sistemi operativi sono installati.

Nella modalità esperto è possibile scegliere se l'orologio del proprio computer
è impostato con UTC o no. I sistemi su cui viene usato (anche) Dos o Windows
sono normalmente regolati con l'ora locale, se si vuole un sistema dual-boot
scegliere l'ora locale invece di UTC.

A questo punto debian-installer cerca di salvare l'ora corrente nell'orologio
hardware del sistema. In base alla scelta appena fatta l'ora può essere UTC o
locale.

6.3.7.2. Riavvio del sistema

Viene richiesto di rimuovere il supporto (CD, dischetto, ecc.) usato per
avviare il programma d'installazione. Poi il sistema viene riavviato con il
nuovo sistema Debian.

6.3.8. Varie

I componenti elencati in questa sezione non sono normalmente coinvolti nel
processo d'installazione ma restano in attesa in background per aiutare
l'utente nel caso che qualcosa vada storto.

6.3.8.1. Salvataggio dei log d'installazione

Se l'installazione ha successo i file di log creati durante il processo
d'installazione sono automaticamente salvati in /var/log/installer/.

Scegliendo Salvare i log per il debug nel menu principale è possibile salvare i
file di log su un dischetto, in rete, su un disco fisso o su altri supporti.
Questo può essere utile se si verificano dei problemi durante l'installazione e
si desidera studiare i log su un altro sistema oppure allegarli a un resoconto
d'installazione.

6.3.8.2. Uso della shell e consultazione dei log

Esistono molti modi per poter usare una shell durante l'installazione. Su molti
sistemi, se l'installazione non avviene tramite una console seriale, il modo
più semplice per passare alla seconda console virtuale è premere Alt+F2^[18]
(oppure su una tastiera Mac Option+F2). Per ritornare al sistema
d'installazione premere Alt+F1.

Con la versione grafica dell'installatore si veda anche Sezione D.6.1, «Uso
dell'installatore grafico».

Se il cambio di console non funziona si può provare ad avviare una shell usando
la voce Avviare una shell del menu principale. Dalla maggior parte delle
finestre di dialogo si può tornare al menu principale usando una o più volte il
bottone Indietro. Per chiudere la shell e tornare al sistema d'installazione si
deve usare il comando exit.

A questo punto l'avvio è stato fatto da un RAM disk ed è disponibile un insieme
limitato delle utility Unix. Si può sapere quali programmi sono disponibili
usando il comando ls /bin /sbin /usr/bin /usr/sbin oppure digitando help. La
shell è un clone della Bourne shell chiamato ash che dispone di alcune funzioni
molto comode come il completamento automatico e lo storico dei comandi.

Per visualizzare o modificare dei file, utilizzare l'editor di testi nano. I
file con il log scritto dal sistema d'installazione si trovano all'interno
della directory /var/log.

Nota

Nonostante che dalla shell sia possibile effettuare qualsiasi operazione
fattibile con i comandi disponibili, l'uso della shell deve essere il più
possibile limitato solo nel caso qualcosa non funzioni e per il debug.

Le operazioni effettuate manualmente dalla shell potrebbero interferire con il
processo d'installazione e potrebbero comportare degli errori o
un'installazione incompleta. In particolare si deve usare sempre il menu, non
la shell, per attivare la partizione di swap.

6.3.8.3. Installazione dalla rete

Uno dei componenti più interessanti è la network-console. Permette di
effettuare la gran parte dell'installazione tramite la rete via SSH, il fatto
che sia usata la rete implica che è necessario eseguire i primi passi
dell'installazione dalla console, almeno fino al punto in cui viene configurata
la rete (è comunque possibile preconfigurare questa parte seguendo Sezione 4.6,
«Installazione automatizzata»).

Normalmente questo componente non è caricato nel menu d'installazione
principale e quindi deve essere esplicitamente richiesto. Se l'installazione
avviene da CD è necessario avviare l'installatore con priorità media o più
bassa altrimenti si può scegliere Caricare i componenti dell'installatore dal
CD-ROM dal menu d'installazione principale e nell'elenco dei componenti
addizionali scegliere network-console: Proseguire l'installazione in remoto
usando SSH. Se il caricamento ha successo nel menu principale appare una nuova
voce Proseguire l'installazione in remoto usando SSH.

Dopo la selezione della nuova voce, viene richiesta la password per connettersi
al sistema d'installazione; è tutto. Dovrebbe essere visibile una schermata con
le indicazioni per effettuare il login da remoto con l'utente installer e con
la stessa password appena inserita. Un altro importante dettaglio presente
nella schermata è il fingerprint del sistema. È necessario che il fingerprint
sia trasmesso in modo sicuro alla «persona che continuerà l'installazione da
remoto».

Se si desidera continuare con l'installazione locale si può premere Invio, in
questo modo si ritorna al menu principale dal quale poi è possibile selezionare
un altro componente.

Passando sull'altro sistema. È necessario configurare il proprio terminale in
modo che usi la codifica UTF-8, dato che è quella usata dal sistema
d'installazione. Senza questa configurazione l'installazione da remoto rimane
comunque possibile ma si possono verificare dei problemi di visualizzazione dei
bordi dei dialoghi e dei caratteri non-ascii. La connessione al sistema
d'installazione avviene semplicemente eseguendo il seguente comando:

$ ssh -l installer install_host

Dove install_host è il nome o l'indirizzo IP del computer che si sta
installando. Prima di effettuare il login viene mostrato il fingerprint del
sistema remoto e viene chiesto di confermare la sua correttezza.

Nota

Il server ssh nell'installatore usa una configurazione predefinita che non
prevede l'invio di pacchetti keep-alive. In linea di principio una connessione
verso un sistema in fase di installazione dovrebbe essere tenuta aperta
indefinitamente. Purtroppo, in alcune situazioni che dipendono dalla
configurazione della propria rete locale, la connessione potrebbe essere
interrotta dopo un certo periodo di inattività. Uno dei casi più comuni in cui
si può verificare questo problema è quando fra il client e il sistema che si
sta installando è presente una qualche forma di NAT (Network Address
Translation). La possibilità di riprendere l'installazione dopo che la
connessione è stata interrotta dipende dal punto a cui era l'installazione al
momento dell'interruzione.

È possibile evitare che la connessione sia interrotta aggiungendo l'opzione
-o ServerAliveInterval=valore all'apertura della connessione ssh oppure
aggiungendo la stessa opzione nel file di configurazione di ssh. Si noti che in
alcuni casi l'aggiunta di questa opzione potrebbe addirittura causare
l'interruzione della connessione (per esempio se i pacchetti keep-alive sono
spediti durante una breve indisponibilità della rete, dalla quale ssh poteva
recuperare) quindi deve essere usata solo quando necessario.

Nota

Se si esegue l'installazione su più computer, uno di seguito all'altro, può
capitare che abbiano lo stesso indirizzo IP o lo stesso nomehost e che ssh si
rifiuti di fare connessione. Il motivo è che hanno dei fingerprint diversi, e
questo è solitamente il segnale di un attacco spoofing. Se si è sicuri di non
essere vittime di un attacco allora si deve cancellare dal file ~/.ssh/
known_hosts la riga relativa al computer^[19] e poi provare nuovamente la
connessione.

Dopo il login viene presentata una schermata iniziale dalla quale si ha la
possibilità di Avviare il menu o di Aprire una shell. Scegliendo il menu viene
attivano il menu principale dal quale si può continuare l'installazione, con la
shell si può esaminare e forse anche correggere il sistema remoto.
Probabilmente servirà solo una connessione con il menu d'installazione,
comunque è possibile avviare altre sessioni per la shell.

Avvertimento

Dopo aver avviato l'installazione da remoto tramite SSH non si deve ritornare
alla sessione d'installazione che è attiva nella console locale. Questa
operazione potrebbe corrompere il database che contiene la configurazione del
nuovo sistema e quindi provocare il blocco dell'installazione oppure dei
problemi nel sistema una volta conclusa l'installazione.

6.4. Caricare i firmware mancanti

Come descritto in Sezione 2.2, «Dispositivi che richiedono un firmware», alcuni
dispositivi possono richiedere il caricamento di un firmware. Nella maggior
parte dei casi questi dispositivi non funzionano senza; qualche volta sono
attive solo alcune funzioni di base e il firmware è necessario per attivare le
funzionalità aggiuntive.

Quando un dispositivo richiede un firmware non disponibile, debian-installer
mostra una finestra di dialogo dando la possibilità di caricare il firmware
mancante. Se si utilizza questa opzione, debian-installer cerca all'interno dei
dispositivi disponibili i singoli file col firmware oppure i pacchetti
contenenti il firmware. Se la ricerca ha successo, il firmware verrà copiato
nella directory corretta (/lib/firmware) e il modulo con il driver verrà
ricaricato.

Nota

In quali dispositivi viene effettuata la ricerca e quali sono i filesystem
supportati dipendono dall'architettura, dal metodo d'installazione e dalla fase
dell'installazione. In particolare è molto probabile che durante le prime fasi
dell'installazione funzioni il caricamento dei firmware da dischetti o
chiavette USB con un filesystem FAT. Sulle architetture i386 e amd64 i firmware
possono anche essere caricati da una MMC o SD.

Notare che si può saltare il caricamento del firmware se il dispositivo può
funzionare senza oppure se il dispositivo non è necessario durante
l'installazione.

Avvertimento

Il supporto per il caricare il firmware continua a essere relativamente
semplice e verrà migliorato nelle future versioni dell'installatore.
Attualmente debian-installer non fornisce alcun avviso quando si sceglie di
caricare un firmware mancante ma non è possibile trovarlo. Segnalare qualsiasi
problema si verifichi, inviando un resoconto dell'installazione (si veda
Sezione 5.4.6, «Invio dei rapporti di installazione»).

6.4.1. Preparazione del supporto

Anche se in alcuni casi è possibile caricare il firmware da una partizione del
disco fisso, il metodo più comune per caricare il firmware è da un supporto
rimovibile come un dischetto o una chiavetta USB. I file o i pacchetti con il
firmware devono essere messi nella directory principale o in una directory con
nome /firmware del filesystem sul supporto. Si raccomanda l'uso di un
filesystem FAT dato che è quello supportato sino dalle prime fasi
dell'installazione.

Dei tarball contenenti i pacchetti con i firmware più comuni sono disponibili
da:

  ● http://cdimage.debian.org/cdimage/unofficial/non-free/firmware/

È sufficiente scaricare il tarball adatto al proprio rilascio e scompattarlo
nel filesystem del supporto.

Se il firmware di cui si ha bisogno non è incluso nel tarball, è possibile
scaricare gli specifici pacchetti con il firmware dalla sezione non-free
dell'archivio. La panoramica seguente dovrebbe elencare i principali pacchetti
con firmware disponibili ma non si garantisce che sia completa e potrebbe anche
contenere dei pacchetti senza firmware.

  ● http://packages.debian.org/search?keywords=firmware

È anche possibile copiare i singoli file con il firmware nel supporto. I
singoli firmware possono essere recuperati, per esempio, da altri sistemi già
installati oppure dal produttore dell'hardware.

6.4.2. Firmware sul sistema installato

Tutti i firmware caricati durante l'installazione verranno copiati sul sistema
installato; nella maggior parte dei casi quasto assicura che il dispositivo che
ha bisogno del firmware funzioni correttamente anche dopo aver riavviato il
sistema. Tuttavia, se il sistema installato utilizza una versione del kernel
diversa da quella usata per l'installazione c'è la possibilità che il firmware
non possa essere caricato a causa della differenza fra le versioni.

Se il firmware è stato caricato da un pacchetto, debian-installer installa il
pacchetto sul sistema finale e aggiunge automaticamente la sezione non-free
dell'archivio nel sources.list di APT. Questo ha il vantaggio che quando è
disponibile una nuova versione del firmware questo verrà aggiornato
automaticamente.

Se il caricamento del firmware è stato saltato durante l'installazione, i
dispositivi che hanno bisogno del firmware non funzioneranno fino a quando il
firmware (o il pacchetto) non verrà installato manualmente.

Nota

Se i firmware sono stati caricati da file singoli, i firmware verranno copiati
nel sistema installato ma non saranno aggiornati automaticamente a meno che,
una volta completata l'installazione, non venga installato (se disponibile) il
relativo pacchetto.


━━━━━━━━━━━━━━

^[11] In termini tecnici: per la lingua esistono più locale che si
differenziano in base al codice del paese.

^[12] Il sistema di installazione cifra il gruppo di volumi LVM con una chiave
AES a 256 bit tramite il supporto «dm-crypt» del kernel.

^[13] In verità si può creare un device MD anche usando delle partizioni che
risiedono sullo stesso disco, ma in questo modo non si ottiene alcun beneficio.

^[14] Usare una passphrase come chiave vuol dire che la partizione viene
configurata usando LUKS.

^[15] È comune ritenere che i tipi delle agenzie governative di tre lettere
siano in grado di ripristinare i dati anche dopo parecchie scritture del
supporto magneto-ottico.

^[16] Notare che il programma che installa effettivamente i pacchetti si chiama
dpkg. Comunque questo programma è qualcosa di più di uno strumento di basso
livello. apt-get è uno strumento di livello più elevato che richiamerà dpkg nel
modo più appropriato. È capace di recuperare i pacchetti da CD, dalla rete o da
qualsiasi altra sorgente; inoltre è in grado di installare altri pacchetti che
potrebbero essere necessari al corretto funzionamento del pacchetto che si sta
tentando di installare.

^[17] Si deve sapere che nel visualizzare quest'elenco, l'installatore sta
soltanto richiamando il programma tasksel; questo programma può essere eseguito
in qualunque momento dopo l'installazione per aggiungere (o rimuovere) più
pacchetti. Per la selezione manuale dei pacchetti si può usare il programma
aptitude. Se si cerca un singolo pacchetto specifico, dopo che l'installazione
è stata compiuta, semplicemente si deve avviare aptitude install pacchetto,
dove pacchetto è il nome del pacchetto che si sta cercando.

^[18] Il tasto Alt a sinistra della barra spaziatrice e il tasto funzione F2
devono essere premuti contemporaneamente.

^[19] Il seguente comando rimuove la riga esistente per un host: ssh-keygen -R
<nomehost|indirizzo IP>.

Capitolo 7. Avvio del nuovo sistema Debian

Sommario

7.1. Il momento della verità
7.2. Montare volumi cifrati

    7.2.1. dm-crypt
    7.2.2. loop-AES
    7.2.3. Risoluzione dei problemi

7.3. Accesso

7.1. Il momento della verità

Il primo avvio del sistema a piena potenza è ciò che gli ingegneri elettronici
chiamano la «prova del fumo».

Nel caso sia stata effettuata una installazione predefinita, la prima cosa che
viene mostrata all'avvio del sistema è il menu di grub o forse quello di lilo.
Alla prima voce nel menu corrisponde il nuovo sistema Debian; se durante
l'installazione è stata rilevata la presenza sul sistema anche di altri sistemi
(per esempio Windows) allora quest'altri sistemi operativi sono elencati nella
parte inferiore del menu.

Non ci si deve preoccupare se il sistema non si avvia correttamente. Infatti,
se l'installazione si è conclusa con successo, ci sono ottime probabilità che
ciò che blocca l'avvio del sistema con Debian sia solo un piccolo problema. In
molti casi questi problemi possono essere risolti senza ripetere
l'installazione; un modo per trovare una soluzione ai problemi di avvio è usare
la modalità di ripristino compresa nel sistema d'installazione (si veda
Sezione 8.7, «Recupero di un sistema danneggiato»).

Gli utenti che non conoscono Debian e Linux potrebbero aver bisogno di aiuto da
parte degli utenti più esperti. Si può ricevere un'aiuto on-line sui canali IRC
#debian o #debian-boot della rete OFTC oppure contattando la mailing list
debian-user. Inoltre si può inviare un resoconto dell'installazione seguendo le
indicazioni in Sezione 5.4.6, «Invio dei rapporti di installazione», si
raccomanda di descrivere il problema in modo chiaro e di riportare qualsiasi
messaggio visualizzato poiché potrebbe essere utile per la diagnosi del
problema.

Se sul sistema sono presenti altri sistemi operativi che non sono stati
rilevati oppure che sono stati rilevati ma non correttamente, si prega di
inviare un resoconto della propria installazione.

7.2. Montare volumi cifrati

Se durante l'installazione si creano dei volumi cifrati e si assegnano a dei
punti di mount allora, durante l'avvio, viene richiesto l'inserimento della
passphrase per ognuno di questi volumi. La procedura da seguire è leggermente
diversa fra dm-crypt e loop-AES.

7.2.1. dm-crypt

Le partizioni cifrate con dm-crypt sono mostrate durante l'avvio con un prompt
simile a questo:

Starting early crypto disks... part_crypt(starting)
Enter LUKS passphrase:

Nella prima riga la part è il nome della partizione sottostante, per esempio
sda2 o md0. Probabilmente adesso si vorrebbe conosce per quale volume si sta
inserendo la passphrase. Si tratta di /home? Oppure di /var? Certamente se nel
sistema esiste un solo volume cifrato la risposta è semplice, si deve inserire
la stessa passphrase usata durante la configurazione. Invece, se durante
l'installazione sono stati preparati più volumi cifrati, gli appunti presi
durante l'ultimo passo descritto in Sezione 6.3.2.5, «Configurazione di volumi
cifrati» risultano molto utili. Se non si hanno appunti su come sono mappati i
diversi part_crypt sui vari punti di mount allora si possono trovare nei file /
etc/crypttab e /etc/fstab del nuovo sistema.

Il prompt potrebbe essere leggermente diverso quando viene montato il file
system di root. Dipende da quale strumento è stato usato per la creazione
dell'initramfs per l'avvio del sistema. Il prossimo esempio si riferisce a un
initrd creato con initramfs-tools:

Begin: Mounting root file system... ...
Begin: Running /scripts/local-top ...
Enter LUKS passphrase:

Durante l'inserimento della passphrase non sono mostrati dei caratteri, nemmeno
degli asterischi. Se la passphrase inserita è sbagliata si hanno a disposizione
altri due tentativi, dopo il terzo tentativo il processo di avvio salta il
montaggio del volume e prosegue con il filesystem successivo. Si veda
Sezione 7.2.3, «Risoluzione dei problemi» per maggiori informazioni.

L'avvio prosegue normalmente dopo l'inserimento di tutte le passphrase.

7.2.2. loop-AES

Per le partizioni cifrate con loop-AES viene mostrato il seguente prompt
durante l'avvio:

Checking loop-encrypted file systems.
Setting up /dev/loopX (/mountpoint)
Password:

Durante l'inserimento della passphrase non sono mostrati dei caratteri, nemmeno
degli asterischi. Se la passphrase inserita è sbagliata si hanno a disposizione
altri due tentativi, dopo il terzo tentativo il processo di avvio salta il
montaggio del volume e prosegue con il filesystem successivo. Si veda
Sezione 7.2.3, «Risoluzione dei problemi» per maggiori informazioni.

Dopo aver inserito tutte le passphrase l'avvio prosegue in modo usuale.

7.2.3. Risoluzione dei problemi

Se alcuni dei volumi cifrati non sono stati montati perché è stata inserita una
passphrase sbagliata, è comunque possibile montarli manualmente al termine
dell'avvio. Si possono verificare diversi casi:

  ● Il primo caso riguarda la partizione root. Quando non è correttamente
    montata il processo di avvio si arresta ed è necessario riavviare la
    macchina per fare un nuovo tentativo.

  ● Il caso più semplice riguarda i volumi che contengono dati, come /home o /
    srv. Si possono montare manualmente al termine dell'avvio. Con loop-AES
    questa operazione richiede un solo comando:

    # mount /mount_point
    Password:

    dove /mount_point deve essere sostituito dalla directory specifica (per
    esempio /home). L'unica differenza rispetto a un normale mount è la
    richiesta di inserire la passphrase del volume.

    Con dm-crypt è leggermente più complesso. Prima si devono registrare i
    volumi con device mapper eseguendo:

    # /etc/init.d/cryptdisks start

    Questo esegue la scansione di tutti i volumi elencati in /etc/crypttab e
    dopo aver richiesto la passphrase crea i rispettivi file di device nella
    directory /dev. I volumi già registrati sono saltati, quindi è possibile
    ripetere più volte questo comando senza preoccupazioni. Se la registrazione
    avviene con successo è possibile montare i volumi nel modo consueto:

    # mount /mount_point

  ● Se alcuni dei volumi che contengono file non critici per il sistema non
    possono essere montati (/usr o /var) l'avvio dovrebbe continuare e dovrebbe
    essere possibile montare i volumi manualmente con la stessa procedura
    descritta al punto precedente. Inoltre è necessario anche (ri)avviare tutti
    i servizi che sono normalmente in esecuzione nel runlevel predefinito dato
    che, molto probabilmente, non sono partiti. Il modo più semplice per fare
    questa operazione è passare al primo runlevel e poi tornare indietro; dal
    prompt della shell eseguire:

    # init 1

    poi premere Control+D quando viene richiesta la password di root.

7.3. Accesso

Dopo il riavvio del sistema verrà mostrato il prompt di login. Accedere usando
il nome utente e la password che è stata scelti durante il processo
d'installazione. Il sistema è ora pronto per essere adoperato.

Se si fosse un nuovo utente si potrebbe voler esaminare la documentazione che è
già stata installata nel proprio sistema al momento in cui si inizia ad
adoperarlo. Attualmente ci sono diversi sistemi di documentazione, il lavoro
consiste nell'integrazione dei diversi tipi di documentazione. Ecco qualche
punto di partenza.

La documentazione allegata ai programmi che sono stati installati può essere
trova in /usr/share/doc/, all'interno di una sottodirectory chiamata come il
programma (oppure, più precisamente, come il pacchetto Debian che contiene il
programma). In alcuni casi, della documentazione molto più dettagliata è
contenuta in pacchetti separati e specializzati per la documentazione che non
vengono normalmente installati. Ad esempio, la documentazione sullo strumento
di gestione dei pacchetti apt può essere trova nei pacchetti apt-doc e
apt-howto.

Inoltre ci sono alcune cartelle speciali nella gerarchia di /usr/share/doc/.
Gli HOWTO di Linux sono installati nel formato .gz (compresso), in /usr/share/
doc/HOWTO/en-txt/. Dopo avere installato dhelp si troverà un indice adatto alla
navigazione della documentazione in /usr/share/doc/HTML/index.html.

Un modo semplice per consultare questi documenti tramite un browser testuale è
quello di eseguire i seguenti comandi:

$ cd /usr/share/doc/
$ w3m .

Il punto dopo il comando w3m indica di mostrare il contenuto della directory
corrente.

Se è installato un ambiente desktop grafico allora è anche possibile usare il
browser web di tale ambiente. Avviare il browser web dal menu applicazioni e
poi inserire /usr/share/doc/ nella barra degli indirizzi.

Si può anche usare info comando o man comando per consultare la documentazione
della maggior parte dei comandi disponibili dalla riga di comando. Digitando
help mostrerà un aiuto sui comandi della shell, scrivendo un comando seguito da
--help farà comparire un breve riassunto sull'uso del comando. Se il risultato
di un comando risultasse di essere passato oltre l'inizio dello schermo,
digitare | more dopo il comando affinché i risultati si fermino prima di
scorrere oltre la parte alta dello schermo. Per vedere un elenco di tutti i
comandi disponibili che cominciano con una data lettera, scrivere la lettera
seguita da due tabulatori.

Capitolo 8. Passi successivi e cosa fare adesso

Sommario

8.1. Arresto del sistema
8.2. Se non si conosce Unix
8.3. Orientarsi in Debian

    8.3.1. Sistema di gestione dei pacchetti Debian
    8.3.2. Gestione delle versioni alternative di una applicazione
    8.3.3. Gestione dei job di cron

8.4. Ulteriori letture e informazioni
8.5. Configurazione del sistema per la posta elettronica

    8.5.1. Configurazione predefinita della posta elettronica
    8.5.2. Invio di email all'esterno del sistema
    8.5.3. Configurazione del MTA (Mail Transport Agent) Exim4

8.6. Compilazione di un nuovo kernel

    8.6.1. Gestione dell'immagine del kernel

8.7. Recupero di un sistema danneggiato

8.1. Arresto del sistema

Per arrestare un sistema Linux non si deve riavviare la macchina con il
pulsante reset sul computer né spengere il computer. Linux dovrebbe essere
spento in modo controllato altrimenti si potrebbero perdere dei file e/o si
rischia di danneggiare il disco. In un ambiente desktop solitamente è
disponibile nel menu delle applicazioni l'opzione per il «log out» che permette
anche di spengere (o riavviare) il sistema.

In alternativa è possibile premere la combinazione di tasti Ctrl+Alt+Canc .
Come ultima possibilità, nel caso le combinazioni di tasti non funzionino o si
preferisca digitare dei comandi, si può fare il login come root ed eseguire uno
dei seguenti comandi poweroff, halt o shutdown -h now; usare reboot per
riavviare il sistema.

8.2. Se non si conosce Unix

Se non si ha familiarità con Unix probabilmente si dovrà uscire per comprare e
leggere qualche libro. Molte informazioni possono essere trovate anche nella
Debian Reference. Questo elenco di FAQ su Unix contiene parecchi documenti
UseNet di valore storico.

Linux è una realizzazione di Unix. Il Linux Documentation Project (LDP)
raccoglie parecchi HOWTO e libri online tutti riguardanti Linux. La maggior
parte di questi documenti può essere installata in locale; è sufficiente
installare il pacchetto doc-linux-html (la versione in formato HTML) o il
pacchetto doc-linux-text (la versione in formato ASCII) e poi cercare i
documenti in /usr/share/doc/HOWTO. Anche le versioni internazionali degli HOWTO
del LDP sono disponibili come pacchetti Debian.

8.3. Orientarsi in Debian

Debian è leggermente diversa dalle altre distribuzioni. Anche se si ha
familiarità con altre distribuzioni Linux, ci sono degli aspetti di Debian che
è necessario conoscere per mantenere il proprio sistema in ordine. Questo
capitolo contiene informazioni per orientarsi, non vuole essere un manuale su
come usare Debian ma solo una breve panoramica del sistema per i frettolosi.

8.3.1. Sistema di gestione dei pacchetti Debian

Il concetto più importante da apprendere è il sistema di pacchetti Debian.
Essenzialmente le principali parti del proprio sistema si devono considerare
sotto il controllo del sistema di pacchetti. Queste includono:

  ● /usr (a esclusione di /usr/local)

  ● /var (si può creare /var/local ed essere al sicuro)

  ● /bin

  ● /sbin

  ● /lib

Per esempio, se si sostituisce /usr/bin/perl con un altro funzionante, e poi si
aggiorna il pacchetto perl, il file che si è cambiato viene sovrascritto. Gli
esperti aggirano questo problema bloccando («hold») i pacchetti tramite
aptitude.

Uno dei migliori metodi di installazione è apt. Si può usare la versione a riga
di comando apt-get o la versione testuale a tutto schermo aptitude. Si noti che
apt permette anche di unire main, contrib e non-free in modo da avere sia la
versione con limitazioni a causa dell'esportazione che la versione normale dei
pacchetti.

8.3.2. Gestione delle versioni alternative di una applicazione

Le versioni alternative delle applicazioni sono gestite da update-alternatives.
Se si gestiscono più versioni delle applicazioni si consulti la pagina man di
update-alternatives.

8.3.3. Gestione dei job di cron

Qualsiasi job sotto la supervisione dell'amministrazione di sistema dovrebbe
essere all'interno di /etc dato che sono dei file di configurazione. Se si ha
un job di cron da eseguire quotidianamente, settimanalmente o mensilmente lo si
deve inserire in /etc/cron.{daily,weekly,monthly}, poi gli script in queste
directory sono richiamati da /etc/crontab ed eseguiti in ordine alfabetico in
modo da serializzarli.

Invece se si ha un job di cron che (a) deve essere eseguito da un utente
speciale oppure (b) deve essere eseguito a orari o con una frequenza
particolari si può usare /etc/crontab oppure (consigliato) /etc/cron.d/
whatever. Questi particolari file hanno anche una un campo aggiuntivo che
permette di stabilire l'account utente con cui viene eseguito il job di cron.

In entrambi i casi si deve semplicemente modificare i file e cron si accorgerà
automaticamente dei cambiamenti, non c'è bisogno di eseguire un comando
speciale. Per maggiori informazioni si consulti cron(8), crontab(5) e /usr/
share/doc/cron/README.Debian.

8.4. Ulteriori letture e informazioni

Se sono necessarie delle informazioni su un particolare programma si dovrebbe
prima provare con man programma oppure con info programma.

Molta documentazione è disponibile in /usr/share/doc. In particolare /usr/share
/doc/HOWTO e /usr/share/doc/FAQ contengono molte informazioni interessanti. Per
segnalare dei bug si consulti /usr/share/doc/debian/bug*. Per conoscere le
peculiarità di un programma specifiche per Debian si consulti /usr/share/doc/
(nome pacchetto)/README.Debian.

Il sito web Debian contiene una gran quantità di documentazione su Debian. In
particolare si consultino le FAQ di Debian GNU/Linux e la Debian Reference. Un
elenco della documentazione disponibile è disponibile nella pagina del progetto
di documentazione Debian. È la comunità Debian a supportare se stessa, per
iscriversi a una o più delle mailing list Debian si consulti la pagina d'
iscrizione alle mailing list. Infine gli archivi delle mailing list Debian
contengono una quantità enorme di informazioni su Debian.

Una fonte di informazioni su GNU/Linux è il Linux Documentation Project. Vi si
possono trovare gli HOWTO e i riferimenti ad altre informazioni molto preziose
sulle parti di un sistema GNU/Linux.

8.5. Configurazione del sistema per la posta elettronica

Oggi l'email è una parte molto importante nella vita di molte persone. Ci sono
molte opzioni da impostare; è molto importante che la posta sia configurata
correttamente per alcuni programmi di utilità Debian; in questa sezione sono
spiegati i concetti di base.

Un sistema di posta elettronica è composto da tre funzioni principali. La prima
è il Mail User Agent (MUA), cioè il programma usato dagli utenti per scrivere e
leggere la posta. Poi c'è un Mail Transfer Agent (MTA) che si occupa del
trasferimento dei messaggi da un computer a un altro. Infine c'è un Mail
Delivery Agent (MDA) che si occupa della consegna della posta in arrivo nelle
caselle degli utenti.

Queste tre funzioni possono essere svolte da programmi diversi ma possono
essere anche concentrate in uno o due programmi. È anche possibile che ognuna
di queste funzioni sia svolta da programmi diversi a seconda della tipologia di
posta.

Storicamente sui sistemi Linux e Unix un MUA molto popolare è mutt che, come la
maggioranza dei programmi Linux tradizionali, è testuale. Spesso viene usato in
combinazione con exim o sendmail come MTA e con procmail come MDA.

Con la crescente popolarità dei sistemi desktop grafici, l'uso di programmi di
posta elettronica grafici come evolution per GNOME, kmail per KDE o thunderbird
di Mozilla (in Debian è disponibile con nome icedove^[20]) sta diventando molto
comune. Questi programmi combinano le funzioni di MUA, MTA e MDA, ma possono
essere, e spesso sono, usati in combinazione con i tradizionali strumenti
Linux.

8.5.1. Configurazione predefinita della posta elettronica

Anche se si vuole usare un programma di posta grafico è importante che sul
proprio sistema Linux sia installato e configurato correttamente anche un MTA/
MDA tradizionale. Il motivo è che molte utilità in esecuzione sul sistema^[21]
usano la posta elettronica per inviare degli avvisi all'amministratore di
sistema su (potenziali) problemi o modifiche.

Per questa ragione i pacchetti exim4 e mutt fanno parte dell'installazione
predefinita (sono disponibili a meno che durante l'installazione non sia stato
deselezionato il task «standard»). exim4 combina MTA e MDA, inoltre è
relativamente piccolo e molto flessibile. Con la configurazione predefinita
gestisce soltanto la posta locale al sistema e le email indirizzate
all'amministratore (l'account root) sono consegnate all'utente normale creato
durante l'installazione^[22].

Alla consegna, le email di sistema vengono aggiunte a un file in /var/mail/
nome_account e possono essere lette con mutt.

8.5.2. Invio di email all'esterno del sistema

Come detto in precedenza, dopo l'installazione, il sistema Debian è configurato
solo per gestire la posta locale, non per l'invio e la ricezione della posta
verso e da altri sistemi.

Se si vuole che exim4 gestisca la posta esterna, si consulti la prossima
sezione nella quale sono illustrate le opzioni di configurazione disponibili.
Si consiglia di fare delle prove per essere sicuri che la posta sia inviata e
ricevuta correttamente.

Se si vuole usare un programma di posta grafico e un server di posta fornito
dal proprio ISP (Internet Service Provider) o dalla propria azienda, non è
necessario configurare exim4 per la gestione della posta esterna. È sufficiente
configurare il proprio programma grafico di posta preferito in modo che usi i
server corretti per inviare e ricevere le email (questa configurazione non
rientra nello scopo di questa guida).

Purtroppo, in questo caso, potrebbe essere necessario configurare i singoli
programmi di utilità per l'invio delle email. Una di queste utilità è reportbug
, un programma che semplifica l'invio di una segnalazione di bug nei pacchetti
Debian, infatti la sua configurazione predefinita si aspetta di poter usare
exim4 per la spedizione della segnalazione.

Per configurare reportbug in modo che usi un server di posta esterno usare il
comando reportbug --configure e rispondere «no» alla domanda se è disponibile
un MTA. Così facendo viene chiesto di specificare il server SMTP da usare per
inviare le segnalazioni di bug.

8.5.3. Configurazione del MTA (Mail Transport Agent) Exim4

Se si vuole che il proprio sistema gestisca anche posta elettronica esterna, è
necessario configurare il pacchetto exim4^[23]:

# dpkg-reconfigure exim4-config

Con questo comando (da root), viene chiesto se si vuole spezzare la
configurazione in più file. In caso di dubbi usare la risposta predefinita.

Poi vengono mostrati diversi scenari di posta molto comuni. Selezionare il tipo
di configurazione che meglio rispecchia le proprie esigenze.

sito internet

    Il sistema è connesso a una rete e la posta viene spedita e ricevuta
    direttamente con SMTP. Nelle schermate successive verranno poste altre
    domande per la configurazione, quali il nome di posta della macchina o un
    elenco di domini per i quali possa essere accettata o inoltrata la posta.

posta inviata tramite uno smarthost

    In questo scenario la posta in uscita viene inoltrata ad un'altra macchina
    chiamata «smarthost», che si occupa della reale consegna del messaggio ai
    destinatari. Uno smarthost di solito conserva la posta in arrivo
    indirizzata al computer destinatario, pertanto questo non dovrà essere
    permanentemente connesso alla rete. Ciò significa che bisognerà scaricare
    la posta dallo smarthost tramite programmi come fetchmail.

    In parecchi casi lo smarthost è il server di posta del proprio ISP, questa
    opzione è particolarmente adatta agli utenti dial-up. Lo smarthost può
    anche essere il server di posta aziendale oppure un altro sistema connesso
    alla propria rete.

posta inviata tramite uno smarthost; niente posta locale

    Questo scenario è simile al precedente ma con una eccezione: il sistema non
    è configurato per gestire posta per il dominio locale. La posta di sistema
    (cioè quella per l'amministratore) viene comunque gestita.

solo consegna locale

    Questa è la configurazione predefinita del proprio sistema.

nessuna configurazione per il momento

    Questa opzione può essere selezionata soltanto se si è assolutamente sicuri
    di ciò che si sta facendo. Fino a quando non viene configurato, il sistema
    di posta non funziona e non può spedire né ricevere messaggi inoltre
    potrebbero andare perse delle importanti segnalazioni da parte delle
    utilità di sistema.

Se nessuno di questi scenari rispecchiasse le proprie necessità, oppure se
servisse una configurazione più accurata, è necessario modificare, al termine
dell'installazione, i file di configurazione posti nella directory /etc/exim4.
Ulteriori informazioni su exim4 sono reperibili in /usr/share/doc/exim4; nel
file README.Debian.gz sono contenuti dei dettagli riguardo la configurazione di
exim4 e indica dove trovare altra documentazione.

Si noti che se non si dispone di un dominio ufficiale e si invia la propria
posta direttamente su Internet, può accadere che la propria posta sia rifiutata
dal server destinatario come misura anti-spam; si deve preferire l'uso del
server di posta del proprio ISP. Invece, se si invia direttamente la posta,
potrebbe interessare come usare un indirizzo email diverso da quello generato
automaticamente. Se si usa exim4 come MTA, è possibile aggiungere una voce in /
etc/email-addresses.

8.6. Compilazione di un nuovo kernel

Perché qualcuno dovrebbe compilarsi un nuovo kernel? Spesso non è necessario
dato che il kernel inserito in Debian gestisce la maggior parte delle
configurazioni. Inoltre Debian offre parecchi kernel alternativi, quindi si
dovrebbe come prima cosa controllare se fra i pacchetti con kernel alternativi
ce n'è uno che si adatta meglio al proprio hardware. Comunque può essere utile
compilare un nuovo kernel per poter:

  ● gestire hardware particolare o gestire conflitti hardware con kernel
    preconfezionati

  ● usare opzioni del kernel che non sono supportate dai kernel preconfezionati
    (per esempio il supporto per la memoria alta)

  ● ottimizzare il kernel rimuovendo i driver inutili in modo da velocizzare
    l'avvio del sistema

  ● creare un kernel monolitico al posto di uno modulare

  ● usare un kernel aggiornato o di sviluppo

  ● imparare cose nuove sui kernel linux

8.6.1. Gestione dell'immagine del kernel

Non ci si deve impaurire nel provare a compilare il kernel. È divertente e
utile.

Per compilare il kernel con il metodo seguito da Debian sono necessari alcuni
pacchetti: fakeroot, kernel-package, linux-source-2.6 e pochi altri che
probabilmente sono già installati (si consulti /usr/share/doc/kernel-package/
README.gz per l'elenco completo).

Questo metodo crea un .deb dai sorgenti del kernel e, se si hanno dei moduli
non-standard, crea anche un .deb di questi moduli sincronizzato con il
precedente. Questo è il miglior modo di gestire le immagini del kernel; in /
boot vengono inseriti il kernel, il file System.map e un log con le
configurazioni attive durante la compilazione.

Notare che non è obbligatorio compilare il kernel «alla Debian»; ma l'uso del
sistema di pacchetti per gestire il kernel è realmente più sicuro e più
semplice. In pratica si possono anche reperire i sorgenti del kernel
direttamente da Linus anziché da linux-source-2.6 e comunque usare il metodo di
compilazione con kernel-package.

Notare che è possibile trovare la documentazione completa sull'uso di
kernel-package in /usr/share/doc/kernel-package. Questa sezione contiene solo
un breve manuale introduttivo.

D'ora in avanti si suppone che si abbia il controllo completo della macchina e
che i sorgenti del kernel siano da qualche parte all'interno della propria home
directory^[24]. Si suppone anche che la versione del kernel sia 2.6.26.
Assicurarsi di trovarsi nella directory in cui si vuole scompattare i sorgenti
del kernel, estrarli usando tar xjf /usr/src/linux-source-2.6.26.tar.bz2 e
cambiare la directory corrente in linux-source-2.6.26 che è stata appena
creata.

Adesso si può configurare il kernel. Eseguire make xconfig se X11 è installato,
configurato e in esecuzione; altrimenti eseguire make menuconfig (è necessario
che sia installato il pacchetto libncurses5-dev). Prendersi tutto il tempo
necessario per leggere l'aiuto in linea e scegliere con attenzione; in caso di
dubbi di solito è consigliabile includere i driver dei dispositivi (il software
che gestisce le periferiche hardware come le schede Ethernet, i controller SCSI
e così via) se non si è sicuri. Attenzione: se non si capisce il significato
delle altre opzioni non legate a un hardware specifico si dovrebbero lasciare
al valore predefinito. Non ci si deve dimenticare di selezionare «Kernel module
loader» in «Loadable module support» (normalmente non è selezionato),
altrimenti il proprio sistema Debian rischia di avere dei seri problemi.

Ripulire i sorgenti e ripristinare i parametri di kernel-package usando
make-kpkg clean.

Adesso compilare il kernel con: fakeroot make-kpkg --initrd --revision=
custom.1.0 kernel_image. Il numero di versione «1.0» può essere cambiato
secondo le necessità; questo è semplicemente il numero di versione che si può
usare per tener traccia delle compilazioni del kernel. Allo stesso modo si può
inserire qualsiasi parola al posto di «custom» (p.e. il nome dell'host). La
compilazione del kernel richiede un po' di tempo, in base alla potenza della
macchina.

Finita la compilazione è possibile installare il proprio kernel personalizzato
come qualsiasi altro pacchetto. Da root eseguire dpkg -i ../linux-image-2.6.26-
subarchitecture_custom.1.0_i386.deb. La parte sottoarchitettura è opzionale e
indica la sottoarchitettura, per esempio «686», in base alle opzioni del kernel
sono state attivate. dpkg -i installa il kernel più alcuni file di supporto.
Per esempio sono installati i file System.map (utile per il debug del kernel) e
/boot/config-2.6.26 che contiene la configurazione. Il nuovo pacchetto con il
kernel è anche in grado di aggiornare automaticamente il bootloader in modo da
poter usare il nuovo kernel. Se si è creato anche un pacchetto con i moduli
allora è necessario installare anche questo pacchetto.

Adesso si deve riavviare il sistema: leggere attentamente tutti gli
avvertimenti che potrebbero apparire durante il passo precedente e poi eseguire
shutdown -r now.

Per ulteriori informazioni sui kernel Debian e sulla compilazione del kernel si
consulti il Debian Linux Kernel Handbook. Per ulteriori informazioni su
kernel-package si consulti l'eccellente documentazione in /usr/share/doc/
kernel-package.

8.7. Recupero di un sistema danneggiato

Purtroppo può capitare che qualcosa vada storto e il sistema che è stato
accuratamente installato non sia più avviabile. È possibile che si sia
danneggiata la configurazione del boot loader durante un aggiornamento oppure
che un nuovo kernel non si avvii oppure che dei raggi cosmici abbiano colpito
il disco fisso e alcuni bit in /sbin/init siano impazziti. A prescindere dalla
causa è necessario avere un sistema funzionante per riparare il sistema
originale, in questo caso può essere utile la modalità di ripristino.

Per attivare la modalità di ripristino inserire rescue al prompt boot: oppure
avviare usando il parametro rescue/enable=true. Verranno mostrate le prime
schermate dell'installatore con una nota in un angolo che indica si sta usando
la modalità di ripristino e non quella d'installazione. Il sistema non verrà
sovrascritto! La modalità di ripristino si avvale delle funzionalità per il
riconoscimento dell'hardware presenti nell'installatore in modo da garantire
che i dischi, i dispositivi di rete, ecc. siano disponibili mentre si cerca di
riparare il sistema.

Al posto del programma di partizionamento viene mostrato un elenco delle
partizioni sul sistema e viene chiesto di sceglierne una. Normalmente si
sceglie la partizione che contiene il filesystem di root che si vuole riparare.
Si possono scegliere le partizioni su device RAID e LVM ma anche quelle create
direttamente sui dischi.

Se possibile l'installatore fornisce una shell sul filesystem che si è scelto,
questa shell può essere usata per effettuare qualsiasi operazione necessaria al
ripristino. Per esempio, se si vuole reinstallare il boot loader GRUB nel
Master Boot Record del primo disco si deve inserire il comando grub-install '
(hd0)'.

Se l'installatore non è in grado di fornire una shell usabile nel file system
che si è scelto come root forse il file system è corrotto e dopo aver dato un
avviso viene invece fornita una shell nell'ambiente dell'installatore. In
questo ambiente non sono disponibili molti strumenti ma dovrebbero essere
comunque sufficienti per ripristinare il sistema. Il file system che era stato
scelto come quello di root viene invece montato sulla directory /target.

In entrambi i casi una volta chiusa la shell il sistema si riavvia
automaticamente.

Si noti che riparare dei sistemi danneggiati può essere molto complicato e
questo manuale non analizza tutti i particolari che si possono danneggiare e
come ripristinarli. Se non si sa cosa fare si consulti un esperto.


━━━━━━━━━━━━━━

^[20] In Debian thunderbird è stato rinominato icedove per un problema con la
licenza; i dettagli del problema non rientrano nello scopo di questo manuale.

^[21] Per esempio: cron, quota, logcheck, aide, ...

^[22] L'inoltro della posta indirizzata a root verso un utente normale si
configura in /etc/aliases. Se non è stato creato un utente normale, la posta
viene consegnata direttamente all'account root.

^[23] Ovviamente si può anche rimuovere exim4 e installare al suo posto altri
MTA/MDA.

^[24] Ci sono molti altri posti in cui è possibile estrarre i sorgenti del
kernel e compilare un kernel personalizzato, ma è molto più semplice se questa
operazione non richiede dei permessi speciali.

Appendice A. Installation Howto

Sommario

A.1. Preliminari
A.2. Avvio del programma d'installazione

    A.2.1. CDROM
    A.2.2. Chiavette USB
    A.2.3. Avvio da rete
    A.2.4. Avvio da disco fisso

A.3. Installazione
A.4. Invio di un resoconto d'installazione
A.5. E per finire...

Questo documento descrive come installare Debian GNU/Linux lenny su Intel x86
(«i386») con il nuovo debian-installer. È una guida rapida al processo
d'installazione che dovrebbe contenere tutte le informazioni necessarie per la
maggioranza delle installazioni. Quando possono essere utili maggiori
informazioni, è disponibile un collegamento alla spiegazione più dettagliata
nelle altri parti di questo documento.

A.1. Preliminari

Se durante l'installazione si scopre qualche bug, per favore si veda
Sezione 5.4.6, «Invio dei rapporti di installazione» per le istruzioni su come
segnalarlo. Se si hanno domande che non trovano risposta in questo documento,
chiedere sulla mailing-list debian-boot (debian-boot@lists.debian.org) o su IRC
(#debian-boot sulla rete OFTC).

A.2. Avvio del programma d'installazione

Il team debian-cd si occupa della creazione delle immagini dei CD del
debian-installer e le distribuisce sulla pagina Debian CD. Per ulteriori
informazioni su dove procurarsi i CD si consulti Sezione 4.1, «Set ufficiale di
CD-ROM Debian GNU/Linux».

Alcuni metodi d'installazione richiedono altre immagini oltre a quelle dei CD.
In Sezione 4.2.1, «Dove trovare le immagini per l'installazione» è spiegato
come trovare le immagini sui mirror Debian.

Nei prossimi paragrafi ci sono informazioni dettagliate su quali immagini usare
per ogni supporto d'installazione possibile.

A.2.1. CDROM

Esistono due immagini di CD per l'installazione da rete (netinst) che possono
essere usate per installare lenny con il debian-installer. Queste immagini sono
state create per fare l'avvio da CD per poi installare i pacchetti aggiuntivi
dalla rete, da qui il nome «installazione da rete». La differenza fra le due
immagini è che nell'immagine netinst completa sono inclusi i pacchetti
dell'installazione di base che invece devono essere scaricati nel caso si usi
l'immagine businesscard. Se si preferisce è possibile procurarsi l'immagine di
un CD completo che non necessita della rete per effettuare l'installazione,
serve solo il primo CD della serie.

Scaricare il tipo che si preferisce e masterizzare l'immagine su un CD. Per
fare l'avvio da CD potrebbe essere necessario modificare la configurazione del
BIOS del proprio computer come spiegato in Sezione 3.6.1, «Invocare il menu di
configurazione del BIOS».

A.2.2. Chiavette USB

È anche possibile eseguire l'installazione da dei dispositivi USB di
memorizzazione. Per esempio una chiavetta USB può diventare il supporto per
un'installazione di Debian che è possibile trasportare ovunque.

Il modo più semplice per preparare una chiavetta USB è scaricare hd-media/
boot.img.gz e usare gunzip per estrarre l'immagine da 256 MB da quel file.
Scrivere questa immagine direttamente sulla chiavetta che deve essere da almeno
256 MB, questa operazione distruggerà qualsiasi cosa si trovi sulla chiavetta.
Poi montare la chiavetta (che adesso ha un filesystem FAT) e, dopo averla
scaricata, copiarci l'immagine del CD netinst; l'immagine può essere rinominata
a piacere, l'importante è che abbia estensione .iso.

C'è un altro modo, più flessibile, per preparare una chiavetta con il
debian-installer che permette anche l'uso di chiavette più piccole. Per i
dettagli si veda Sezione 4.3, «Preparazione dei file per l'avvio da chiavetta
USB».

Solo alcuni BIOS possono fare l'avvio direttamente da dispositivi USB quindi
potrebbe essere necessario configurare il proprio BIOS per fare l'avvio da un
«dispositivo rimovibile» o da «USB-ZIP». Per maggiori informazioni si veda
Sezione 5.1.4, «Avvio da chiavetta USB».

A.2.3. Avvio da rete

È anche possibile avviare debian-installer usando solamente la rete. I metodi
per l'avvio da rete dipendono dall'architettura e dalla configurazione. I file
in netboot/ possono essere usati per l'avvio dalla rete del debian-installer.

Probabilmente la cosa più semplice da configurare è l'avvio da rete con PXE. Si
deve estrarre il file netboot/pxeboot.tar.gz in /var/lib/tftpboot o in
qualsiasi altra posizione riconosciuta come valida dal proprio server TFTP. Poi
impostare il server DHCP per passare il file /pxelinux.0 ai client e con un po'
di fortuna funziona. Per le istruzioni dettagliate si veda Sezione 4.5,
«Preparazione dei file per l'avvio TFTP da rete».

A.2.4. Avvio da disco fisso

È possibile far partire l'installatore senza usare un supporto rimovibile, ma
solo un disco fisso esistente che può anche ospitare un SO diverso. Scaricare
hd-media/initrd.gz, hd-media/vmlinuz e una immagine dei CD nella directory
principale del disco fisso, assicurarsi che il nome del file con l'immagine
abbia estensione .iso. Adesso si deve solamente avviare Linux con initrd. In
Sezione 5.1.3, «Avvio di Linux usando LILO o GRUB» è spiegato come farlo.

A.3. Installazione

Una volta avviato l'installatore viene mostrata una schermata iniziale. Premere
Invio per proseguire con l'installazione oppure leggere le istruzioni sugli
altri metodi e i parametri di avvio (si consulti Sezione 5.3, «Parametri di
avvio»).

Dopo un po' viene richiesta la scelta della lingua, usare i tasti cursore per
selezionare una lingua e poi premere Invio per proseguire. Poi viene richiesto
la scelta del paese, potendo scegliere fra i paesi in cui è parlata la lingua
prescelta. Se l'elenco non comprende il proprio paese, è disponibile anche un
elenco con tutti i paesi del mondo.

Potrebbe essere richiesta la conferma della disposizione della tastiera, se non
si sa cosa scegliere accettare il valore predefinito.

Adesso si deve aspettare che il debian-installer rilevi l'hardware e che
carichi i componenti e se stesso da CD, dischetto, USB, ecc.

L'installatore cerca di rilevare automaticamente l'hardware per l'accesso alla
rete e di configurarlo con DHCP. Se non si è connessi a una rete o non si ha
DHCP, è possibile configurare la rete manualmente.

Il passo successivo consiste nella configurazione dell'orologio e del fuso
orario. L'installatore prova a contattare un time server su Internet per
assicurarsi che l'orologio sia impostato con l'ora esatta. Il fuso orario è
impostato in base al paese scelto in precedenza, l'installatore chiede di
sceglierne uno solo se nel paese ci sono più fusi orari.

Ora è il momento di partizionare i dischi. Per prima cosa viene proposto di
partizionare in automatico l'intero disco oppure il solo spazio libero
disponibile (si veda Sezione 6.3.2.1, «Partizionamento guidato»). Questa
procedura è quella più adatta per gli utenti meno esperti e per coloro che
hanno fretta, se non si desidera usare il partizionamento automatico si deve
scegliere manuale dal menu.

Se è presente una partizione con DOS o Windows che si vuole preservare si deve
fare particolarmente attenzione con il partizionamento automatico. Nel caso si
scelga il partizionamento manuale è possibile usare l'installatore per
ridimensionare le partizioni FAT o NTFS esistenti per creare lo spazio per
installare Debian: è sufficiente selezionare la partizione e specificarne la
nuova dimensione.

Nella schermata successiva è mostrata la tabella delle partizioni, come
verranno formattare e dove verranno montate, selezionare una partizione per
modificarla o rimuoverla. Se è stato fatto un partizionamento automatico allora
nel menu è possibile scegliere Terminare il partizionamento e scrivere i
cambiamenti sul disco per confermare la configurazione proposta. Ricordarsi di
assegnare almeno una partizione come spazio per lo swap e di montare una
partizione su /. Per avere informazioni più dettagliate su come utilizzare il
programma per creare le partizioni, si veda Sezione 6.3.2, «Partizionamento e
selezione del punto di mount»; l'appendice Appendice C, Partizionare per Debian
contiene altre informazioni relative al partizionamento.

Adesso il debian-installer formatta le partizioni e inizia l'installazione del
sistema di base, questa operazione richiede un po' di tempo. Al termine viene
installato il kernel.

Il sistema di base, installato in precedenza, è un sistema funzionante ma
minimale. Per rendere il sistema più funzionale il prossimo passo consiste
nell'installazione di altri pacchetti tramite la scelta di task. Prima di poter
installare i pacchetti è però necessario configurare apt specificando da dove
devono essere recuperati i pacchetti. Il task «Sistema standard» è già
selezionato e solitamente deve essere installato; il task «Ambiente desktop»
mette a disposizione un desktop grafico al termine dell'installazione. Si veda
Sezione 6.3.5.2, «Selezione e installazione dei pacchetti» per altri dettagli
su questa fase.

L'installazione del sistema di base è seguita dalla configurazione degli
account per gli utenti; di solito è necessario inserire la password
dell'account «root» (l'utente d'amministrazione) e le informazioni per creare
l'account di un utente normale.

L'ultimo passo è installare un boot loader. Se l'installatore rileva la
presenza di altri sistemi operativi sul computer è in grado di aggiungerli nel
menu di avvio. GRUB viene installato nel master boot record del primo disco,
normalmente questa è una buona scelta. Comunque viene data l'opportunità di
cambiare questa scelta in modo da installarlo da qualche altra parte.

Infine debian-installer comunica il termine dell'installazione, rimuovere il
CDROM o qualsiasi altro supporto sia stato usato per l'avvio e premere Invio
per riavviare la macchina. Dovrebbe ripartire il sistema appena installato con
la richiesta di login, questa fase è descritta in Capitolo 7, Avvio del nuovo
sistema Debian.

Se sono necessarie altre informazioni sul processo d'installazione si consulti
Capitolo 6, Uso dell'Installatore Debian.

A.4. Invio di un resoconto d'installazione

Se è stato possibile eseguire con successo un'installazione con il
debian-installer, si spenda un minuto del proprio tempo per inviarci un
resoconto. Il modo più semplice per inviare un rapporto d'installazione è
installare il pacchetto reportbug (aptitude install reportbug), configurarlo
come spiegato in Sezione 8.5.2, «Invio di email all'esterno del sistema» ed
eseguire il comando reportbug installation-reports.

Se non si riesce a completare l'installazione probabilmente si è trovato un bug
nel debian-installer. Per migliorare l'installatore è necessario farci
conoscere questo problema e quindi si spenda un po' del proprio tempo per
inviarci una segnalazione. Si può usare il modello per il resoconto
dell'installazione anche per la segnalazione di bug; se l'installazione è
completamente fallita si consulti Sezione 5.4.5, «Segnalazione di problemi con
l'installazione».

A.5. E per finire...

Ci auguriamo che l'installazione sia piacevole e che Debian sia utile. Si
consiglia la lettura di Capitolo 8, Passi successivi e cosa fare adesso.

Appendice B. Installazione automatica tramite preconfigurazione

Sommario

B.1. Introduzione

    B.1.1. Metodi di preconfigurazione
    B.1.2. Limitazioni

B.2. Uso della preconfigurazione

    B.2.1. Caricamento del file di preconfigurazione
    B.2.2. Uso dei parametri di avvio per la preconfigurazione
    B.2.3. Modalità «auto»
    B.2.4. Alias utilizzati nella preconfigurazione
    B.2.5. Uso di un server DHCP per specificare un file di preconfigurazione

B.3. Creazione di un file di preconfigurazione
B.4. Contenuto del file di preconfigurazione (per lenny)

    B.4.1. Localizzazione
    B.4.2. Configurazione della rete
    B.4.3. Network console
    B.4.4. Impostazioni del mirror
    B.4.5. Impostazione dell'orologio e del fuso orario
    B.4.6. Partizionamento
    B.4.7. Partizionamento con RAID
    B.4.8. Installazione del sistema di base
    B.4.9. Impostazione dell'account
    B.4.10. Impostazione di APT
    B.4.11. Selezione dei pacchetti
    B.4.12. Installazione del boot loader
    B.4.13. Termine dell'installazione
    B.4.14. Preconfigurazione di altri pacchetti

B.5. Opzioni avanzate

    B.5.1. Uso di comandi personalizzati durante l'installazione
    B.5.2. Uso della preconfigurazione per modificare i valori predefiniti
    B.5.3. Caricamento in cascata di più file di preconfigurazione

Questa appendice spiega come preconfigurare le risposte alle domande poste dal
debian-installer per automatizzare la propria installazione.

I vari frammenti utilizzati in questa appendice sono disponibili anche nel file
di preconfigurazione di esempio ../example-preseed.txt.

B.1. Introduzione

La preconfigurazione offre un modo per impostare le risposte alle domande poste
durante l'installazione senza doverle inserire manualmente. Questo permette di
automatizzare completamente la maggior parte dei tipi d'installazione e offre
persino alcune funzionalità che non sono disponibili durante l'installazione
tradizionale.

La preconfigurazione non è obbligatoria. Con un file di preconfigurazione
vuoto, il programma d'installazione si comporta allo stesso modo di una normale
installazione manuale. Ogni domanda preconfigurata (se la preconfigurazione è
corretta) modifica l'installazione rispetto a quella di base.

B.1.1. Metodi di preconfigurazione

Per la preconfigurazione si possono usare tre metodi: initrd, file e network.
La preconfigurazione initrd funziona con tutti i metodi d'installazione e
consente la preconfigurazione di parecchie domande ma richiede la preparazione
più lunga. Le preconfigurazioni file e network si possono usare con metodi
d'installazione diversi.

La tabella seguente mostra quali metodi di preconfigurazione possono essere
usati con i vari metodi d'installazione.

┌───────────────────────────────────────────────────┬────────┬─────┬──────────┐
│              Metodo d'installazione               │ initrd │file │ network  │
├───────────────────────────────────────────────────┼────────┼─────┼──────────┤
│CD/DVD                                             │sì      │sì   │sì^[a]    │
├───────────────────────────────────────────────────┼────────┼─────┼──────────┤
│netboot                                            │sì      │no   │sì        │
├───────────────────────────────────────────────────┼────────┼─────┼──────────┤
│hd-media (comprese le chiavette USB)               │sì      │sì   │sì^[a]    │
├───────────────────────────────────────────────────┴────────┴─────┴──────────┤
│^[a] Solo se si dispone di un collegamento in rete e se preseed/url è        │
│correttamente impostato.                                                     │
└─────────────────────────────────────────────────────────────────────────────┘

Una differenza importante fra i vari metodi di preconfigurazione è il momento
in cui viene caricato e processato il file di preconfigurazione. Nel caso della
preconfigurazione con initrd avviene all'avvio dell'installazione, prima che
sia posta la prima domanda. Con la preconfigurazione con il metodo file avviene
dopo che è stata caricato il CD o l'immagine del CD. Infine la
preconfigurazione network ha effetti solo dopo la configurazione della rete.

Ovviamente qualsiasi domanda elaborata prima che venga caricato il file di
preconfigurazione non può essere preconfigurata (tra cui quelle mostrate solo
quando la priorità è media o bassa, per esempio il primo riconoscimento
dell'hardware). In Sezione B.2.2, «Uso dei parametri di avvio per la
preconfigurazione» è descritto un modo per evitare che queste domande siano
poste.

Per evitare le domande normalmente poste prima che avvenga la
preconfigurazione, è possibile avviare l'installatore in modalità «auto».
Questa modalità rimanda le domande che sarebbero poste troppo presto per la
preconfigurazione (cioè la scelta di lingua, nazione e tastiera) fino a che la
rete non sia funzionante, in modo da consentire la preconfigurazione; inoltre
la priorità dell'installazione viene forzata ad alta, evitando parecchie
domande trascurabili. Si veda Sezione B.2.3, «Modalità «auto»» per i dettagli.

B.1.2. Limitazioni

Nonostante che la maggior parte delle domande poste da debian-installer possa
essere preconfigurata, esistono delle eccezioni notevoli. Si deve partizionare
l'intero disco oppure usare solo lo spazio libero sul disco; non è possibile
usare delle partizioni esistenti.

B.2. Uso della preconfigurazione

Le prime cose da fare sono creare un file di preconfigurazione e metterlo nella
posizione da cui lo si vuole usare. La creazione del file di preconfigurazione
è trattata in seguito, invece lo spostamento del file è molto semplice per la
preconfigurazione network o quando si vuole leggere il file da un dischetto o
da una chiavetta USB. Invece se si vuole mettere il file su un CD o DVD è
necessario masterizzare una nuova immagine ISO. Come preparare il file di
preconfigurazione per initrd è fuori dagli scopi di questo documento, si
consulti la documentazione del debian-installer per gli sviluppatori.

Un file di preconfigurazione di esempio, che può essere usato come base per il
proprio file di preconfigurazione è disponibile in ../example-preseed.txt.
Questo file è creato partendo dai frammenti utilizzati in questa appendice.

B.2.1. Caricamento del file di preconfigurazione

Se si utilizza la preconfigurazione initrd, bisogna assicurarsi solo che il
file preseed.cfg si trovi nella directory principale del initrd. L'installatore
automaticamente verifica se questo file è presente e lo carica.

Per gli altri metodi di preconfigurazione è necessario specificare durante
l'avvio dell'installatore quale file usare. Normalmente questo può essere fatto
passando al kernel un determinato parametro d'avvio, manualmente durante
l'avvio oppure tramite il file di configurazione del boot loader (p.e.
syslinux.cfg) aggiungendo il parametro alla fine delle righe «append» per il
kernel.

Se si specifica un file di preconfigurazione nella configurazione del boot
loader, è possibile modificare la configurazione in modo che non sia necessario
premere Invio per avviare l'installazione. Con syslinux si può ottenere questo
risultato impostando timeout a 1 in syslinux.cfg.

Per essere sicuri che l'installatore usi il file di preconfigurazione corretto
si può, opzionalmente, specificare una checksum per il file. Attualmente la
checksum deve essere di tipo md5sum e, se viene specificata, il file di
preconfigurazione la deve verificare altrimenti l'installatore non userà quel
file.

Parametri di avvio da specificare:
- con avvio da rete:
  preseed/url=http://host/percorso/di/preseed.cfg
  preseed/url/checksum=5da499872becccfeda2c4872f9171c3d

- con avvio da un CD masterizzato:
  preseed/file=/cdrom/preseed.cfg
  preseed/file/checksum=5da499872becccfeda2c4872f9171c3d

- con installazione da un supporto USB (mettere il file di preconfigurazione
  nella directory principale della chiavetta USB):
  preseed/file=/hd-media/preseed.cfg
  preseed/file/checksum=5da499872becccfeda2c4872f9171c3d

Notare che quando preseed/url e preseed/file sono passati come parametri di
avvio si possono abbreviare rispettivamente con url e file.

B.2.2. Uso dei parametri di avvio per la preconfigurazione

Anche se un file di preconfigurazione non può essere usato per preconfigurare
alcuni passi, l'installazione può avvenire ugualmente in modo completamente
automatico dato che è possibile passare i valori di preconfigurazione tramite
la riga di comando all'avvio dell'installatore.

I parametri di avvio possono essere usati anche per impostare le risposte ad
alcune domande senza usare la preconfigurazione. In questo manuale ci sono
esempi in cui questa funzionalità è particolarmente utile.

Per impostare un valore da usare all'interno di debian-installer è sufficiente
passare percorso/alla/variabile=valore per qualsiasi variabile di
preconfigurazione mostrata negli esempi di questa appendice. Se un valore deve
essere usato per configurare dei pacchetti sul sistema installato è necessario
inserire come prefisso il proprietario^[25] della variabile in questo modo
proprietario:percorso/alla/variabile=valore. Se non si specifica il
proprietario, il valore della variabile non viene copiato nel database di
debconf sul sistema installato e quindi non può essere usato durante la
successiva configurazione del relativo pacchetto.

Normalmente una domanda preconfigurata non viene posta. Per impostare la
risposta predefinita a una domanda e far in modo che la domanda sia comunque
posta, usare l'operatore «?=» al posto di «=». Si veda Sezione B.5.2, «Uso
della preconfigurazione per modificare i valori predefiniti».

Alcune delle variabili che più frequentemente sono impostate dal prompt boot
dispongono di un'abbreviazione. Negli esempi contenuti in questa appendice è
usata, quando disponibile, l'abbreviazione al posto della variabile completa.
Per esempio alla variabile preseed/url è stato assegnato l'alias url. Un altro
esempio è l'alias tasks che viene tradotto in tasksel:tasksel/first.

L'uso di «--» nelle opzioni d'avvio ha un significato speciale, i parametri del
kernel che seguono l'ultimo «--» potrebbero essere copiati nella configurazione
del bootloader nel sistema installato (solo se il boot loader è supportato
dall'installatore). L'installatore filtra qualsiasi opzione (come le opzioni di
preconfigurazione) che riesce a riconoscere.

Nota

Gli attuali kernel linux (2.6.9 e successivi) accettano al massimo 32 opzioni
sulla riga di comando e 32 opzioni d'ambiente, comprese quelle aggiunte dal
sistema d'installazione. Nel caso si superino questi limiti il kernel si
blocca. Le versioni precedenti del kernel accettano un numero inferiore di
opzioni.

Nella maggior parte dei casi alcune delle opzioni predefinite nel file di
configurazione del boot loader, come vga=normal possono essere tranquillamente
rimosse per permettere l'aggiunta di ulteriori opzioni di preconfigurazione.

Nota

Non sempre potrebbe essere possibile specificare valori con spazi come
parametro d'avvio, persino se si delimitano con delle virgolette.

B.2.3. Modalità «auto»

Ci sono alcune funzionalità di Debian Installer che combinate insieme
permettono di ottenere installazioni automatiche e personalizzate (anche molto
complesse) semplicemente passando delle righe di comando al prompt boot. Per
illustrare queste funzionalità sono riportati alcuni esempi su come possono
essere usate dal prompt boot:

auto url=autoserver

Questa funzionalità assume la presenza di un server DHCP che indichi alla
macchina un server DNS per risolvere autoserver, eventualmente aggiungendo il
dominio locale se fornito dal DHCP. Se questa funzione è usata su una macchina
del dominio esempio.com e se il DHCP è configurato correttamente allora il file
di preconfigurazione viene recuperato da http://autoserver.esempio.com/d-i/
lenny/./preseed.cfg.

L'ultima parte dell'URL (d-i/lenny/./preseed.cfg) è impostata in auto-install/
defaultroot, il cui valore predefinito contiene la directory lenny per
permettere alle versioni successive di specificare il proprio nome in codice e
quindi permettere migrazioni future in modo controllato. Il /./ viene usato per
indicare la directory principale relativamente a cui le restanti parti del
percorso possono essere ancorate (da usarsi in preseed/include e preseed/run);
questo permette di specificare file sia come URL completi, come percorsi
inizianti con / e quindi ancorati oppure come percorsi relativi dalla posizione
in cui è stato trovato l'ultimo file di preconfigurazione. Questo può essere
usato per costruire script più portabili, dove l'intera gerarchia di script può
essere spostata in una nuova posizione senza comprometterne il funzionamento,
per esempio copiando i file in una chiavetta USB quando in precedenza erano
ospitati da server web. In questo esempio, se il file di preconfigurazione
imposta preseed/run al valore /scripts/late_command.sh, il file viene prelevato
da http://autoserver.esempio.com/d-i/lenny/./scripts/late_command.sh.

Se non esiste un'infrastruttura DHCP o DNS locale oppure se non si vuole usare
il percorso predefinito per il file preseed.cfg, è comunque possibile usare un
URL esplicita oppure, quando non si usa l'elemento /./, viene ancorata al punto
di partenza del percorso (cioè al terzo / nella URL). Segue un esempio che
richiede un minimo supporto da parte della rete locale:

auto url=http://192.168.1.2/percorso/di/mypreseed.file

Il modo in cui funziona è questo:

  ● quando manca il protocollo nella URL, viene assunto http;

  ● se la sezione per il nome host non contiene dei punti, viene aggiunto il
    dominio indicato da DHCP;

  ● se dopo il nome host non ci sono /, viene usato il percorso predefinito.

Oltre l'URL è possibile specificare anche altre impostazioni che non
influenzano direttamente il comportamento del debian-installer ma che possono
essere passate a un qualsiasi script specificato con preseed/run all'interno
del file di preconfigurazione. Al momento l'unico esempio di questa
caratteristica è auto-install/classes (che dispone dell'alias classes) e può
essere usato in questo modo:

auto url=esempio.com classes=classe_A;classe_B

Le classi possono, per esempio, indicare il tipo di sistema da installare
oppure la localizzazione da usare.

Ovviamente è possibile estendere questo concetto e, nel caso, è ragionevole
usare il namespace auto-install, usando nei propri script qualcosa di simile a
auto-install/style. Se si necessitasse questa possibilità si consiglia di
inviare una segnalazione alla mailing list <debian-boot@lists.debian.org> in
modo da evitare conflitti nel namespace ed eventualmente aggiungere un alias
per i nuovi parametri.

L'etichetta d'avvio auto non è ancora definita ovunque. Lo stesso effetto si
può ottenere semplicemente aggiungendo i parametri auto=true priority=critical
nella riga di comando per il kernel. Il parametro auto è un alias di
auto-install/enable e se impostato a true ritarda le domande su localizzazione
e tastiera fino a quando non è data la possibilità di preconfigurarle, mentre
l'impostazione priority è un alias di debconf/priority e impostarla a critical
blocca la richiesta di qualsiasi domanda con priorità inferiore.

Altre opzioni che possono risultare utili quando si cerca di automatizzare
un'installazione con DHCP sono: interface=auto netcfg/dhcp_timeout=60 che
indica alla macchina di usare il primo dispositivo di rete attivo e di essere
un po' più paziente durante l'attesa della risposta all'interrogazione DHCP.

Suggerimento

Un esempio esaustivo su come utilizzare questa infrastruttura, compresi degli
script e delle classi d'esempio, può essere trovato sul sito web dello
sviluppatore. Sono disponibili anche altri esempi che mostrano come, usando in
modo creativo la preconfigurazione, si possono ottenere molti altri interessati
effetti.

B.2.4. Alias utilizzati nella preconfigurazione

I seguenti alias possono risultare utili quando si usa la preconfigurazione (in
modalità auto). Notare che questi sono semplicemente degli alias più brevi per
i nomi delle domande e che è sempre necessario specificare anche un valore, per
esempio auto=true o interface=eth0.

auto        auto-install/enable
classes     auto-install/classes
fb          debian-installer/framebuffer
locale      debian-installer/locale
priority    debconf/priority
file        preseed/file
url         preseed/url
interface   netcfg/choose_interface
hostname    netcfg/get_hostname
domain      netcfg/get_domain
protocol    mirror/protocol
suite       mirror/suite

B.2.5. Uso di un server DHCP per specificare un file di preconfigurazione

È possibile usare anche DHCP per indicare un file di preconfigurazione da
scaricare dalla rete, questo è possibile perché DHCP consente il passaggio del
nome di un file fra server e client. Normalmente il file specificato è quello
per l'avvio dalla rete, però se al suo posto è inserito un URL allora il
programma d'installazione scarica il file dall'URL e lo usa come un file di
preconfigurazione. Segue un esempio di come deve essere impostato il file
dhcpd.conf per la versione 3 del server DHCP di ISC (il pacchetto Debian
dhcp3-server).

if substring (option vendor-class-identifier, 0, 3) = "d-i" {
    filename "http://host/preseed.cfg";
}

Notare che l'esempio precedente limita la specifica del nome del file ai soli
client DHCP che si identificano come «d-i», quindi ha effetto solo sul
programma d'installazione e non influenza i normali client DHCP. Si può anche
mettere il testo in una sezione del file di configurazione in modo che sia
usata da un solo host per impedire la preconfigurazione di tutte le macchine
che si installano sulla propria rete.

Un modo corretto per usare la preconfigurazione tramite DHCP è preconfigurare i
soli valori specifici della propria rete, per esempio quale mirror Debian
usare. In questo modo tutte le installazioni fatte sulla propria rete hanno già
attivo un buon mirror, ma il resto della configurazione deve essere fatto
interattivamente. L'uso della preconfigurazione tramite DHCP per fare la
completa configurazione delle installazioni Debian deve essere fatto con molta
cautela.

B.3. Creazione di un file di preconfigurazione

Il file di preconfigurazione ha lo stesso formato utilizzato dal comando
debconf-set-selections. Il formato generico di una riga del file di
preconfigurazione è:

<proprietario> <nome domanda> <tipo domanda> <valore>

Ci sono alcune regole che si devono tenere in mente quando si scrive un file di
preconfigurazione.

  ● Inserire un singolo spazio o un solo tab fra tipo e valore: ogni ulteriore
    spazio viene interpretato come appartenente al valore.

  ● Una riga può essere spezzata su più righe aggiungendo un backslash («\»)
    come carattere di continuazione della riga. Un buon punto in cui spezzare
    una riga è dopo il nome della domanda; invece un punto pessimo è fra il
    tipo e il valore. Le righe spezzate sono ricomposte in un'unica riga nella
    quale tutti gli spazi bianchi in testa e in coda sono condensati in un solo
    spazio.

  ● Le variabili debconf (modelli) usate nell'installatore stesso devono avere
    come proprietario «d-i»; per preconfigurare le variabili usate nel sistema
    installato, si deve usare il nome del pacchetto che contiene il
    corrispondente modello debconf. Solo le variabili che hanno un proprietario
    diverso da «d-i» saranno propagate al database debconf del sistema
    installato.

  ● La maggior parte delle domande deve essere preconfigurata usando i valori
    validi per la lingua inglese e non usando i valori tradotti. Comunque,
    esistono delle domande (per esempio in partman) in cui è necessario usare i
    valori tradotti.

  ● Alcune domande accettano come valore un codice anziché il testo in inglese
    mostrato durante l'installazione.

Il modo più semplice per creare un file di preconfigurazione è usare il file di
preconfigurazione d'esempio in Sezione B.4, «Contenuto del file di
preconfigurazione (per lenny)» come base per il proprio lavoro.

Un metodo alternativo è effettuare un'installazione manuale e poi, dopo il
riavvio, usare il comando debconf-get-selections, contenuto nel pacchetto
debconf-utils, per riversare in un unico file il contenuto del database di
debconf e del database di cdebconf:

$ debconf-get-selections --installer > file
$ debconf-get-selections >> file

Comunque un file generato in questa maniera ha delle voci che potrebbero non
essere preconfigurate; il file d'esempio è decisamente un punto di partenza
migliore per la maggior parte degli utenti.

Nota

Questo metodo si basa sul fatto che, al termine dell'installazione, il database
di cdebconf è salvato nel sistema appena installato in /var/log/installer/
cdebconf. Poiché questo database può contenere delle informazioni sensibili i
file sono leggibili solo da root.

La directory /var/log/installer e tutti i file in essa contenuti sono
cancellati dal sistema quando di elimina il pacchetto installation-report.

Per verificare quali sono i valori validi per una domanda si può usare nano per
esaminare, quando l'installazione è in corso, i file in /var/lib/cdebconf. In
templates.dat ci sono i modelli e in questions.dat ci sono gli attuali valori e
i valori assegnati alle variabili.

Per verificare se il formato del proprio file di preconfigurazione è valido
prima di effettuare un'installazione si può usare il comando
debconf-set-selections -c preseed.cfg.

B.4. Contenuto del file di preconfigurazione (per lenny)

I vari frammenti utilizzati in questa appendice sono disponibili anche nel file
di preconfigurazione di esempio ../example-preseed.txt.

Si noti che l'esempio è valido per l'installazione sull'architettura Intel x86.
Se si vuole fare l'installazione su un'architettura diversa alcuni degli esempi
(come la scelta della tastiera e l'installazione del boot loader) potrebbero
non essere corretti e devono essere sostituiti con le impostazioni per debconf
adatte alla propria architettura.

B.4.1. Localizzazione

L'impostazione dei valori legati alla localizzazione funziona solo se si usa la
preconfigurazione initrd. Con tutti gli altri metodi il file di
preconfigurazione viene caricato solo dopo che queste domande sono state poste.

Con «locale» si possono specificare lingua e paese, può essere una qualsiasi
combinazione fra una delle lingue supportate da debian-installer e uno dei
paesi riconosciuti. Se la combinazione non forma un locale valido,
l'installatore sceglie automaticamente un altro locale valido per la lingua
prescelta. Per specificare «locale» fra i parametri di avvio utilizzare locale=
it_IT.

# Con locale si impostano lingua e paese.
d-i debian-installer/locale string it_IT

La configurazione della tastiera consiste nella scelta di una architettura
della tastiera e di una mappa di tastiera. Nella maggior parte dei casi
l'architettura della tastiera viene riconosciuta automaticamente e quindi non è
necessario farne la preconfigurazione. La mappa di tastiera deve essere
ritenuta da debian-installer valida per l'architettura della tastiera scelta.

# Selezione della tastiera.
#d-i console-tools/archs select at
d-i console-keymaps-at/keymap select us
# Esempio con una diversa architettura della tastiera
#d-i console-keymaps-usb/keymap select mac-usb-us

Per saltare la configurazione della tastiera si deve preconfigurare
console-tools/archs con skip-config. Questo comporta che la mappa di tastiera
del kernel rimane attiva.

Nota

I cambiamenti nella gestione dell'input fatti nei kernel 2.6 hanno reso
l'architettura della tastiera virtualmente obsoleta. Normalmente per i kernel
2.6 si deve selezionare una mappa di tastiera «PC» (at).

B.4.2. Configurazione della rete

Naturalmente, la preconfigurazione non funziona se si sta caricando il file di
preconfigurazione dalla rete! Invece funziona se si sta avviando da CD o da
chiavetta USB. È anche possibile passare i parametri di configurazione della
rete sui parametri del kernel, se si stanno caricando file di preconfigurazione
dalla rete.

Se necessario è possibile scegliere una particolare interfaccia prima di
caricare il file di preconfigurazione dalla rete usando il parametro d'avvio
interface=eth1.

Nonostante la preconfigurazione della rete non sia normalmente disponibile
quando la preconfigurazione avviene tramite la rete (usando «preseed/url»), può
essere fatta comunque ricorrendo a un trucco; per esempio se si vuole forzare
un indirizzo statico per l'interfaccia di rete. Il trucco consiste nel forzare
la ripetizione della configurazione della rete dopo che il file di
preconfigurazione è stato caricato creando uno script da eseguire tramite
«preseed/run» contenente i seguenti comandi:

killall.sh; netcfg

Le seguenti variabili debconf sono legate alla configurazione della rete.

# netcfg sceglierà, se possibile, un'interfaccia che abbia un collegamento.
# Questo evita la visualizzazione di una lista se è presente più di
# un'interfaccia.
d-i netcfg/choose_interface select auto

# Oppure scegliere un'interfaccia ben precisa:
#d-i netcfg/choose_interface select eth1

# Se si ha un server dhcp lento e l'installatore va in timeout in attesa
# di esso, questo potrebbe essere utile.
#d-i netcfg/dhcp_timeout string 60

# Se si preferisce configurare manualmente la rete, togliere il commento
# alla prossima riga e alle righe con la configurazione statica della rete.
#d-i netcfg/disable_dhcp boolean true

# Se si desidera che il file di preconfigurazione funzioni su qualsiasi
# sistema, a prescindere dalla presenza di un server DHCP in rete, si può
# togliere il commento alle righe seguenti e alle righe con la configurazione
# statica della rete.
#d-i netcfg/dhcp_failed note
#d-i netcfg/dhcp_options select Configure network manually

# Configurazione statica della rete.
#d-i netcfg/get_nameservers string 192.168.1.1
#d-i netcfg/get_ipaddress string 192.168.1.42
#d-i netcfg/get_netmask string 255.255.255.0
#d-i netcfg/get_gateway string 192.168.1.1
#d-i netcfg/confirm_static boolean true

# Si noti che gli eventuali nomi di host e dominio assegnati da dhcp hanno
# la precedenza sui valori qui impostati. Naturalmente, l'impostazione dei
# valori previene ancora che le domande siano visualizzate anche se i
# valori arrivano da dhcp.
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain

# Disabilita la noiosa finestra di dialogo della chiave WEP.
d-i netcfg/wireless_wep string
# Lo stupido nome host dhcp che alcuni ISP usano come una sorta
# di password.
#d-i netcfg/dhcp_hostname string radish

# Se per la scheda di rete o per altro hardware è necessario caricare un
# firmware non-libero, è possibile configurare l'installatore in modo
# che lo carichi senza chiedere conferma. Altrimenti cambiare in false
# per disabilitare la richiesta.
#d-i hw-detect/load_firmware boolean true

Notare che netcfg determina automaticamente la maschera di rete se netcfg/
get_netmask non è preconfigurato; in caso di installazioni automatiche questa
variabile deve essere marcata come seen. In modo similare, netcfg sceglie un
indirizzo opportuno quando non è impostato netcfg/get_gateway. È possibile
impostare netcfg/get_gateway a «none» per indicare che non deve essere usato
alcun gateway.

B.4.3. Network console

# Per effettuare un'installazione da remoto tramite SSH con il componente
# network-console, usare le seguenti impostazioni. Questo ha senso se si
# intende effettuare il resto dell'installazione manualmente.
#d-i anna/choose_modules string network-console
#d-i network-console/password password r00tme
#d-i network-console/password-again password r00tme

B.4.4. Impostazioni del mirror

A seconda del metodo d'installazione usato è possibile che venga usato un
mirror per scaricare i componenti aggiuntivi dell'installatore, per installare
il sistema di base e per impostare il file /etc/apt/sources.list sul sistema
installato.

Il parametro mirror/suite determina quale sarà la versione del sistema
installato.

Il parametro mirror/udeb/suite determina la versione dei componenti addizionali
dell'installatore. L'impostazione di questa variabile è utile solo se i
componenti sono scaricati dalla rete dato che la loro versione deve essere
uguale a quella usata per creare lo initrd per il metodo d'installazione
scelto. Il valore predefinito per mirror/udeb/suite è lo stesso di mirror/
suite.

# Quando si seleziona ftp non è necessario impostare mirror/country.
#d-i mirror/protocol string ftp
d-i mirror/country string manual
d-i mirror/http/hostname string ftp.it.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string

# Versione da installare.
#d-i mirror/suite string testing
# Versione dei componenti dell'installatore da caricare (facoltativo).
#d-i mirror/udeb/suite string testing

B.4.5. Impostazione dell'orologio e del fuso orario

# Controlla se l'orologio hardware deve essere impostato o meno su UTC.
d-i clock-setup/utc boolean true

# Questo può essere impostato con qualsiasi valore valido per $TZ; si
# consulti /usr/share/zoneinfo/ per i valori validi.
d-i time/zone string US/Eastern

# Determina se usare NTP per impostare l'orologio durante l'installazione
d-i clock-setup/ntp boolean true
# Server NTP da usare. Quasi sempre è possibile usare quello predefito.
#d-i clock-setup/ntp-server string ntp.example.com

B.4.6. Partizionamento

Il supporto della preconfigurazione per il partizionamento è limitato a quanto
permette partman-auto. Si può scegliere di partizionare lo spazio libero
esistente sul disco oppure l'intero disco. La struttura delle partizioni sul
disco può essere determinata usando una ricetta predefinita oppure una ricetta
personalizzata in un file o inclusa nel file di preconfigurazione. Attualmente
con la preconfigurazione non è possibile partizionare più di un disco.

Avvertimento

L'identificazione dei dischi dipende dall'ordine in cui sono caricati i driver,
se nel sistema ci sono più dischi si deve essere assolutamente sicuri che venga
selezionato quello corretto prima di usare la preconfigurazione.

# Se il sistema ha spazio libero è possibile scegliere di partizionare
# soltanto quello spazio.
#d-i partman-auto/init_automatically_partition select biggest_free

# In alternativa è possibile specificare un disco da partizionare.
# Il nome del dispositivo deve essere dato nel tradizionale formato
# non-devfs.
# Nota: è obbligatorio specificare un disco tranne nel caso che il
# sistema abbia un disco solo.
# Per esempio, per usare il primo disco SCSI/SATA:
#d-i partman-auto/disk string /dev/sda
# Inoltre è necessario specificare il metodo da usare. Quelli attualmente
# disponibili sono "regular", "lvm" e "crypto".
d-i partman-auto/method string lvm

# L'utente riceve un avviso se uno dei dischi che stanno per essere
# partizionati automaticamente contiene già una precedente configurazione
# LVM. Comunque anche questo può essere preconfigurato...
d-i partman-lvm/device_remove_lvm boolean true
# La stessa cosa avviene se già esiste un array in RAID software:
d-i partman-md/device_remove_md boolean true
# E può essere preconfigurata anche la conferma alla scrittura delle
# partizioni lvm.
d-i partman-lvm/confirm boolean true

# È possibile scegliere una qualsiasi delle ricette di partizionamento
# predefinite:
# - atomic: tutti i file in una partizione
# - home:   partizione separata per /home
# - multi:  partizioni separate per /home, /usr, /var e /tmp
d-i partman-auto/choose_recipe select atomic

# Oppure creare una ricetta personalizzata...
# Il formato della ricetta è documentato nel file devel/partman-auto-recipe.txt.
# Se si ha modo di importare un file ricetta dentro l'ambiente
# dell'installatore, è possibile semplicemente puntare a questo.
#d-i partman-auto/expert_recipe_file string /hd-media/recipe

# Altrimenti, è possibile mettere un'intera ricetta in una riga. Questo
# esempio crea una piccola partizione /boot, un'area swap appropriata e
# usa il resto dello spazio per la partizione root:
#d-i partman-auto/expert_recipe string                         \
#      boot-root ::                                            \
#              40 50 100 ext3                                  \
#                      $primary{ } $bootable{ }                \
#                      method{ format } format{ }              \
#                      use_filesystem{ } filesystem{ ext3 }    \
#                      mountpoint{ /boot }                     \
#              .                                               \
#              500 10000 1000000000 ext3                       \
#                      method{ format } format{ }              \
#                      use_filesystem{ } filesystem{ ext3 }    \
#                      mountpoint{ / }                         \
#              .                                               \
#              64 512 300% linux-swap                          \
#                      method{ swap } format{ }                \
#              .

# Questo fa eseguire a partman il partizionamento automatico in base a
# quanto indicato con uno dei metodi precedenti, senza chidere conferma.
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true

B.4.7. Partizionamento con RAID

Si può usare anche la preconfigurazione per impostare le partizioni su array in
RAID software. È supportato il RAID di livello 0, 1, 5, 6 e 10 la creazione di
array degradati e la scelta di dischi di scorta. Se si usa RAID 1 è possibile
preconfigurare grub in modo da installarlo su tutti i dispositivi usati
dall'array; si veda Sezione B.4.12, «Installazione del boot loader».

Avvertimento

È probabile che questo tipo di partizionamento automatico fallisca. Infatti
questa funzionalità ha ricevuto relativamente pochi test da parte degli
sviluppatori del debian-installer. La responsabilità di recuperare delle
ricette corrette (cioè che abbiano senso e che non siano in conflitto) è
lasciata all'utente. In caso di problemi si controlli in /var/log/syslog.

# NOTA: questa funzionalità è ancora in fase beta e deve essere usata con
# molta cautela

# Il metodo deve essere impostato come "raid".
#d-i partman-auto/method string raid
# Specificare quali sono i dischi da partizionare. Questi dischi avranno
# tutti la stessa configurazione quindi è necessario che abbiano la stessa
# dimensione.
#d-i partman-auto/disk string /dev/sda /dev/sdb

# Poi si devono specificare le partizioni fisiche da usare.
#d-i partman-auto/expert_recipe string \
#      multiraid ::                                         \
#              1000 5000 4000 raid                          \
#                      $primary{ } method{ raid }           \
#              .                                            \
#              64 512 300% raid                             \
#                      method{ raid }                       \
#              .                                            \
#              500 10000 1000000000 raid                    \
#                      method{ raid }                       \
#              .

# Infine si deve specificare come devono essere utilizzate le partizioni
# definite in precedenza all'interno del RAID. Attenzione a usare i numeri
# di partizione corretti per le partizioni logiche.
# I parametri sono:
# <raidtype> <devcount> <sparecount> <fstype> <mountpoint> \
#          <devices> <sparedevices>
# Sono supportati i livelli di RAID 0, 1, 5, 6 e 10; i dispositivi
# devono essere separati usando il carattere "#"
#d-i partman-auto-raid/recipe string \
#    1 2 0 ext3 /                    \
#          /dev/sda1#/dev/sdb1       \
#    .                               \
#    1 2 0 swap -                    \
#          /dev/sda5#/dev/sdb5       \
#    .                               \
#    0 2 0 ext3 /home                \
#          /dev/sda6#/dev/sdb6       \
#    .

# Questo fa in modo che partman partizioni automaticamente senza conferma.
d-i partman-md/confirm boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true

B.4.8. Installazione del sistema di base

Al momento non c'è molto da preconfigurare per questo passo dell'installazione.
Le uniche domande riguardano l'installazione del kernel.

# Selezionare il programma per la creazione dell'initrd per i kernel 2.6.
#d-i base-installer/kernel/linux/initramfs-generators string yaird

# Il (meta)pacchetto con l'immagine del kernel da installare; per non
# installare un kernel inserire "none".
#d-i base-installer/kernel/image string linux-image-2.6-486

B.4.9. Impostazione dell'account

È possibile preconfigurare la password per l'account di root e il nome e la
password per il primo utente normale. Per le password possono essere inserite
in chiaro o con un hash MD5.

Avvertimento

Attenzione, la preconfigurazione delle password non è sicura dato che chiunque
può accedere al file di preconfigurazione ha la possibilità di leggerle. L'uso
di un hash MD5 è considerato leggermente migliore per quanto riguarda la
sicurezza ma potrebbe anche dare una falsa sensazione di sicurezza poiché un
hash MD5 consente attacchi di tipo brute force.

# Saltare la creazione dell'account di root (l'account per l'utente
# normale potrà usare sudo).
#d-i passwd/root-login boolean false
# In alternativa, è possibile saltare la creazione dell'account per
# l'utente normale.
#d-i passwd/make-user boolean false

# Password di root, in chiaro entrambe le volte
#d-i passwd/root-password password r00tme
#d-i passwd/root-password-again password r00tme
# oppure criptata in un hash MD5.
#d-i passwd/root-password-crypted password [MD5 hash]

# Per creare l'account per l'utente normale.
#d-i passwd/user-fullname string Debian User
#d-i passwd/username string debian
# La password dell'utente, in chiaro entrambe le volte
#d-i passwd/user-password password insecure
#d-i passwd/user-password-again password insecure
# oppure criptata in un hash MD5.
#d-i passwd/user-password-crypted password [MD5 hash]
# Per creare il primo utente con un UID specifico al posto di quello
# predefinito.
#d-i passwd/user-uid string 1010

# L'account utente viene automaticamente inserito in alcuni gruppi.
# Per modificare questo comportamento usare la seguente preconfigurazione.
#d-i passwd/user-default-groups string audio cdrom video

Le variabili passwd/root-password-crypted e passwd/user-password-crypted
possono anche essere preconfigurate con il valore «!», l'effetto è quello di
disabilitare l'account corrispondente. Questo è comodo per l'account di root,
ovviamente a patto di aver configurato un modo alternativo per svolgere le
attività d'amministrazione (per esempio l'uso dell'autenticazione con chiave
SSH oppure con sudo).

Si può usare il seguente comando per creare un hash MD5 di una password:

$ printf "r00tme" | mkpasswd -s -m md5

B.4.10. Impostazione di APT

L'impostazione di /etc/apt/sources.list e la configurazione delle opzioni di
base è completamente automatizzata in base al metodo d'installazione e alle
risposte date in precedenza. È possibile aggiungere altri repository (anche
locali).

# È possibile scegliere di installare software non-free e contrib.
#d-i apt-setup/non-free boolean true
#d-i apt-setup/contrib boolean true
# Togliere il commento alla prossima riga se non si vuole usare
# un mirror.
#d-i apt-setup/use_mirror boolean false
# Scegliere i servizi di aggiornamento da utilizzare; definire quali
# mirror devono essere usati. I valori riportati in seguito sono quelli
# predefiniti.
#d-i apt-setup/services-select multiselect security, volatile
#d-i apt-setup/security_host string security.debian.org
#d-i apt-setup/volatile_host string volatile.debian.org

# Altri repository, sono disponibili local[0-9]
#d-i apt-setup/local0/repository string \
#       http://local.server/debian stable main
#d-i apt-setup/local0/comment string local server
# Abilita le righe deb-src
#d-i apt-setup/local0/source boolean true
# URL alla chiave pubblica del repository locale; è necessario fornire
# una chiave altrimenti apt si lamenta perché il repository non è
# autenticato e che quindi non dovrebbe essere usato (commentandolo in
# sources.list)
#d-i apt-setup/local0/key string http://local.server/key

# Normalmente l'installatore richiede che i repository siano autenticati
# con una chiave gpg conosciuta. Per disabilitare questa autenticazione si
# può usare questa impostazione. Attenzione: insicuro, non raccomandato.
#d-i debian-installer/allow_unauthenticated string true

B.4.11. Selezione dei pacchetti

È possibile scegliere di installare qualsiasi combinazione di task che siano
disponibili. I task attualmente disponibili includono:

  ● standard (sistema standard)

  ● desktop (ambiente desktop)

  ● gnome-desktop (ambiente desktop gnome)

  ● kde-desktop (ambiente desktop kde)

  ● web-server (server web)

  ● print-server (server di stampa)

  ● dns-server (server DNS)

  ● file-server (file server)

  ● mail-server (server di posta)

  ● sql-database (database SQL)

  ● laptop (computer portatile)

Si può anche scegliere di non installare alcun task e forzare l'installazione
di un insieme di pacchetti in qualche altro modo. Raccomandiamo di includere
sempre il task standard.

Se oltre ai task si vuole installare anche qualche altro pacchetto allora è
possibile usare il parametro pkgsel/include; il valore di questo parametro può
essere un elenco di pacchetti separati con virgole o con spazi, in questo modo
può essere comodamente usato anche sulla riga di comando del kernel.

#tasksel tasksel/first multiselect standard, web-server
# Quando è selezionato il task desktop, si può installare kde e xfce
# al posto del desktop predefinito gnome.
#tasksel tasksel/desktop multiselect kde, xfce

# Ulteriori pacchetti da installare
#d-i pkgsel/include string openssh-server build-essential
# Se aggiornare gli altri pacchetti dopo l'avvio. I valori ammessi
# sono: none, safe-upgrade, full-upgrade
#d-i pkgsel/upgrade select none

# Alcune versioni dell'installatore possono inviare un resoconto di quali
# programmi sono stati installati e quali sono usati. Questo resoconto, la
# cui ricezione aiuta il progetto a determinare quali sono i programmi più
# popolari per inserirli nei CD, normalmente non viene inviato.
#popularity-contest popularity-contest/participate boolean false

B.4.12. Installazione del boot loader

# Grub è il boot loader predefinito (per x86). Invece, se si desidera
# che sia installato lilo, scommentare questa riga:
#d-i grub-installer/skip boolean true
# Per evitare anche l'installazione di lilo, e quindi non installare
# nessun boot loader, scommentare questa riga:
#d-i lilo-installer/skip boolean true

# Questa è ragionevolmente sicura da impostare, fa in modo che grub sia
# installato automaticamente nel MBR se nessun altro sistema operativo è
# rilevato nella macchina.
d-i grub-installer/only_debian boolean true

# Questa fa in modo che grub-installer si installi sul MBR se trova anche
# qualche altro sistema operativo, che è un po' meno sicuro poiché potrebbe
# non riuscire ad avviare gli altri sistemi operativi.
d-i grub-installer/with_other_os boolean true

# In alternativa, se si vuole installare in una posizione differente dal
# MBR, scommentare ed editare queste linee:
#d-i grub-installer/only_debian boolean false
#d-i grub-installer/with_other_os boolean false
#d-i grub-installer/bootdev  string (hd0,0)
# Per installare grub su più dischi:
#d-i grub-installer/bootdev  string (hd0,0) (hd1,0) (hd2,0)

# Passowrd opzionale per grub, può essere in chiaro
#d-i grub-installer/password password r00tme
#d-i grub-installer/password-again password r00tme
# oppure criptata in un hash MD5, si veda grub-md5-crypt(8).
#d-i grub-installer/password-crypted password [MD5 hash]

L'hash MD5 per una password per grub può essere generato usando grub-md5-crypt,
oppure usando il comando dell'esempio in Sezione B.4.9, «Impostazione
dell'account».

B.4.13. Termine dell'installazione

# Durante le installazioni da console seriale o di gestione, normalmente
# le console virtuali (da VT1 a VT6) vengono disabilitate in /etc/inittab.
# Togliere il commento dalla prossima riga per evitare che questo accada.
#d-i finish-install/keep-consoles boolean true

# Evita l'ultimo messaggio riguardo il completamento dell'installazione.
d-i finish-install/reboot_in_progress note

# Impedisce che il programma d'installazione espelli il CD prima del riavvio,
# in alcuni casi può essere utile.
#d-i cdrom-detect/eject boolean false

# Indica come spegnere quando l'installatore ha finito, senza riavviare
# il sistema appena installato.
#d-i debian-installer/exit/halt boolean true
# Questo spegne la macchina anziché semplicemente arrestarla.
#d-i debian-installer/exit/poweroff boolean true

B.4.14. Preconfigurazione di altri pacchetti

# A seconda del software che si sceglie di installare, o se le cose vanno
# storte durante il processo di installazione, è possibile che altre domande
# possano essere poste. Si possono preconfigurare anche quelle,
# naturalmente. Per ottenere una lista di ogni possibile domanda che possa
# essere posta durante un'installazione, fare un'installazione, quindi
# eseguire questi comandi:
#   debconf-get-selections --installer > file
#   debconf-get-selections >> file

B.5. Opzioni avanzate

B.5.1. Uso di comandi personalizzati durante l'installazione

Una funzionalità molto potente e flessibile offerta dagli strumenti di
preconfigurazione è la possibilità si eseguire dei comandi o degli script in
determinati momenti dell'installazione.

# La preconfigurazione del d-i è intrinsecamente non sicura. Niente
# nell'installatore verifica i tentativi di buffer overflow o di altri
# exploit attraverso i valori presenti in un file di preconfigurazione
# come questo. Usare solo file di preconfigurazione provenienti da fonti
# fidate! Per comprendere il rischio, e poiché è generalmente utile,
# ecco un modo per eseguire automaticamente qualsiasi comando della shell
# all'interno dell'installatore.

# Questo è primo comando, è eseguito il prima possibile, appena dopo la
# lettura della preconfigurazione.
#d-i preseed/early_command string anna-install some-udeb

# Questo è l'ultimo comando, è eseguito appena prima che l'installatore
# termini, ma quando la directory /target è ancora usabile. È possibile
# fare un chroot su /target e usarlo direttamente oppure usare i comandi
# apt-install e in-target per installare dei pacchetti ed eseguire comandi
# nel file system target.
#d-i preseed/late_command string apt-install zsh; in-target chsh -s /bin/zsh

B.5.2. Uso della preconfigurazione per modificare i valori predefiniti

È possibile usare la preconfigurazione per modificare la risposta predefinita a
una domanda ma fare in modo che la domanda venga comunque posta. Per farlo si
deve impostare il flag seen a «false» dopo aver impostato il valore della
domanda.

d-i foo/bar string valore
d-i foo/bar seen false

Si può estendere questo effetto a tutte le domande inserendo il parametro
preseed/interactive=true al prompt boot. Questo può essere utile per effettuare
delle prove o il debug del proprio file di preconfigurazione.

Notare che «d-i» deve essere usato come proprietario delle sole variabili
dell'installatore. Le variabili appartenenti ai pacchetti da installare sul
sistema finale devono avere come proprietario il nome del pacchetto. Si veda la
nota a pié di pagina in Sezione B.2.2, «Uso dei parametri di avvio per la
preconfigurazione».

Quando si usa la preconfigurazione tramite i parametri d'avvio si può
richiedere all'installatore di chiedere comunque le domande preconfigurate
usando l'operatore «?=» in questo modo foo/bar?=valore (oppure proprietario:foo
/bar?=valore). Ovviamente questo ha effetto solo sui parametri che
corrispondono alle domande che sono effettivamente visualizzate durante
l'installazione e non sui parametri «interni».

B.5.3. Caricamento in cascata di più file di preconfigurazione

Da un file di preconfigurazione è anche possibile includere anche altri file di
preconfigurazione. Qualsiasi impostazione fatta in questi file sovrascrive
l'eventuale configurazione fatta dai file caricati in precedenza. Questo
permette di inserire, per esempio, una configurazione di rete generica in un
file e di mettere alcune configurazioni particolari in altri file.

# Si possono elencare più file separandoli con degli spazi; verranno
# caricati tutti. Anche i file inclusi possono avere al loro interno delle
# direttive preseed/include. Si noti che se i nomi dei file sono relativi,
# sono prelevati dalla stessa directory del file di preconfigurazione che
# li include.
#d-i preseed/include string x.cfg

# Facoltativamente il programma d'installazione può verificare le checksum
# dei file prima di processarli. Attualmente sono supportati solo le checksum
# md5sum che vanno elencate nello stesso ordine con cui sono inclusi i file.
#d-i preseed/include/checksum string 5da499872becccfeda2c4872f9171c3d

# Ancora più flessibile, questo esegue un comando di shell e se restituisce
# i nomi dei file di preconfigurazione allora include questi file.
#d-i preseed/include_command \
#      string if [ "`hostname`" = bob ]; then echo bob.cfg; fi

# Il massimo della flessibilità, questo scarica ed esegue un programma.
# Il programma può usare debconf-set per manipolare il database di
# debconf; è possibile elencare più di uno script separandoli con degli
# spazi. Si noti che se i nomi dei file sono relativi, sono prelevati
# dalla stessa directory del file di preconfigurazione che li esegue.
#d-i preseed/run string foo.sh

Con la preconfigurazione di tipo initrd e file è possibile anche caricare in
cascata una preconfigurazione di tipo network, impostando preseed/url nei file
precedenti. Ciò avvia la preconfigurazione via rete appena questa diviene
disponibile. Nell'effettuare questa operazione si deve porre particolare
attenzione, dato che la preconfigurazione viene eseguita in due occasioni
distinte, aprendo la possibilità che il comando preseed/early venga eseguito
nuovamente, con la seconda esecuzione che avviene dopo l'attivazione della
rete.


━━━━━━━━━━━━━━

^[25] Il proprietario di una variabile debconf (o modello) è normalmente il
nome del pacchetto che contiene il corrispondente modello. Le variabili usate
all'interno dell'installatore hanno come proprietario «d-i». I modelli e le
variabili possono avere più di un proprietario, questo aiuta a determinare in
quali casi possono essere eliminati dal database di debconf quando il pacchetto
viene rimosso.

Appendice C. Partizionare per Debian

Sommario

C.1. Decidere il numero e la dimensione delle partizioni per Debian
C.2. L'albero delle directory
C.3. Schema di partizionamento raccomandato
C.4. Nomi dei dispositivi in Linux
C.5. Programmi Debian per il partizionamento

    C.5.1. Partizionare per Intel x86

C.1. Decidere il numero e la dimensione delle partizioni per Debian

Come minimo, GNU/Linux ha bisogno di una partizione: è possibile avere una sola
partizione che contiene il sistema operativo, le applicazioni e i file
personali dell'utente. Molti ritengono necessaria una partizione di swap
separata, ma non è obbligatorio averla. Lo «swap» è uno spazio a disposizione
del sistema operativo, da usare come «memoria virtuale»; usare una partizione
separata per lo swap, permette a Linux di usarlo in modo molto più efficiente.
È comunque possibile forzare Linux a usare un file regolare come swap, ma non è
raccomandato.

La maggior parte degli utenti sceglie di avere più partizioni per GNU/Linux: ci
sono un paio di motivi validi per suddividere il file system su più partizioni.
Il primo è la sicurezza: se si verifica un guasto che corrompe il file system,
di solito viene colpita solo una partizione; quindi per ripristinare il
funzionamento, basterà sostituire solo una porzione del proprio sistema
(utilizzando la copia di backup conservata con cura). Come minimo è
consigliabile creare quella che si chiama in gergo «partizione root», che
contiene le componenti fondamentali del sistema. Se qualche altra partizione
viene corrotta, sarà ancora possibile avviare GNU/Linux per riparare il
sistema, evitando di dover reinstallare il sistema da capo.

Il secondo motivo di solito è più rilevante in un contesto di lavoro, ma in
generale dipende dall'uso che si fa del computer. Ad esempio, un server di
posta intasato da messaggi non sollecitati può ritrovarsi con una partizione
piena: se si è creata una partizione separata per /var/mail, il resto del
sistema continuerà a funzionare.

L'unico vero difetto nell'uso di più partizioni consiste nel fatto che spesso è
difficile conoscere in anticipo le proprie necessità. Se si crea una partizione
troppo piccola, occorrerà reinstallare il sistema, oppure ci si troverà a dover
continuamente spostare dati per far posto nella partizione troppo piccola.
D'altro canto, se si crea una partizione troppo grande, si sprecherà spazio che
potrebbe essere usato in altri modi: oggi lo spazio su disco non costa molto,
ma perché sprecare il proprio denaro?

C.2. L'albero delle directory

Debian GNU/Linux aderisce al Filesystem Hierarchy Standard per la denominazione
dei file e delle directory. Questo standard consente agli utenti e ai programmi
di predire la posizione di file e directory sul sistema. La directory «root»
(principale) del sistema è rappresentata semplicemente dal carattere «slash»:
/. A questo livello, tutti i sistemi Debian contengono le seguenti directory:

┌─────────┬───────────────────────────────────────────────────────────────────┐
│Directory│                             Contenuto                             │
├─────────┼───────────────────────────────────────────────────────────────────┤
│bin      │File binari dei comandi essenziali                                 │
├─────────┼───────────────────────────────────────────────────────────────────┤
│boot     │File statici del boot loader                                       │
├─────────┼───────────────────────────────────────────────────────────────────┤
│dev      │File di device                                                     │
├─────────┼───────────────────────────────────────────────────────────────────┤
│etc      │Configurazioni di sistema specifiche per l'host                    │
├─────────┼───────────────────────────────────────────────────────────────────┤
│home     │Directory home degli utenti                                        │
├─────────┼───────────────────────────────────────────────────────────────────┤
│lib      │Librerie condivise essenziali e moduli del kernel                  │
├─────────┼───────────────────────────────────────────────────────────────────┤
│media    │Punti di montaggio per dispositivi rimovibili                      │
├─────────┼───────────────────────────────────────────────────────────────────┤
│mnt      │Punti di montaggio per montare un file system temporaneamente      │
├─────────┼───────────────────────────────────────────────────────────────────┤
│proc     │Directory virtuale per le informazioni di sistema (kernel 2.4 e    │
│         │2.6)                                                               │
├─────────┼───────────────────────────────────────────────────────────────────┤
│root     │Directory home dell'utente root                                    │
├─────────┼───────────────────────────────────────────────────────────────────┤
│sbin     │File binari essenziali per il sistema                              │
├─────────┼───────────────────────────────────────────────────────────────────┤
│sys      │Directory virtuale per le informazioni di sistema (kernel 2.6)     │
├─────────┼───────────────────────────────────────────────────────────────────┤
│tmp      │File temporanei                                                    │
├─────────┼───────────────────────────────────────────────────────────────────┤
│usr      │Gerarchia secondaria                                               │
├─────────┼───────────────────────────────────────────────────────────────────┤
│var      │Dati variabili                                                     │
├─────────┼───────────────────────────────────────────────────────────────────┤
│srv      │Dati dei servizi forniti dal sistema                               │
├─────────┼───────────────────────────────────────────────────────────────────┤
│opt      │Pacchetti software applicativi opzionali                           │
└─────────┴───────────────────────────────────────────────────────────────────┘

Quelle che seguono sono alcune considerazioni importanti a proposito delle
directory e delle partizioni. Si noti che i requisiti di spazio su disco
variano molto a seconda della configurazione del sistema e del tipo di utilizzo
specifico. Le raccomandazioni che seguono sono delle linee guida generali e
costituiscono un punto di partenza per le decisioni di partizionamento.

  ● La partizione «root» / deve sempre contenere fisicamente /etc, /bin, /sbin,
    /lib e /dev, altrimenti non sarà possibile avviare i sistema. Tipicamente
    occorrono circa 150-250 MB per questa partizione.

  ● /usr: contiene tutti i programmi utente (/usr/bin), le librerie (/usr/lib),
    la documentazione (/usr/share/doc), ecc. Questa è la parte del file system
    che di solito occupa più spazio su disco; occorre riservargli almeno
    500 MB, ma la cifra va aumentata a seconda del numero e del tipo di
    pacchetti che si intende installare. Una installazione ricca di
    applicazioni per l'uso come workstation o server richiede 4-6 GB.

  ● /var: dati variabili, come code di posta e di messaggi news, siti web,
    database, la cache del sistema di gestione dei pacchetti, ecc. verranno
    conservati in questa directory. La dimensione da scegliere dipende
    fortemente dal tipo di uso che si farà del sistema, ma per la maggior parte
    degli utenti il fattore principale di cui tenere conto è il funzionamento
    del sistema di gestione dei pacchetti: se si intende installare in una sola
    sessione tutto il software fornito da Debian, dovrebbero bastare 2 o 3 GB
    di spazio per /var. Se invece si intende installare il sistema a più
    riprese (ad esempio, installare le utilità di sistema, poi quelle per la
    gestione dei documenti, poi il sistema X, ecc), è sufficiente riservare da
    300 a 500 MB. Se si intende risparmiare al massimo lo spazio su disco e non
    si hanno in programma massicci aggiornamenti del sistema, è possibile
    riservare anche solo 30 o 40 MB.

  ● /tmp: i dati temporanei creati dai programmi vengono scritti
    prevalentemente in questa directory. Di solito è sufficiente riservare da
    40 a 100 MB. Alcune applicazioni (tra cui gestori di archivi, strumenti per
    la creazione di CD e DVD, e software multimediale) utilizzano /tmp per
    scrivere file di immagine temporanei; se si intende utilizzare questo tipo
    di applicazioni, occorrerà scegliere una dimensione adeguata per la
    directory /tmp.

  ● /home: ogni utente conserverà i propri dati personali in una
    sotto-directory di questa directory. La sua dimensione dipende dal numero
    di utenti che utilizzeranno il sistema e dal tipo di file che saranno
    conservati nelle loro directory. A seconda dell'uso che si intende fare del
    sistema, il valore indicativo di 100 MB per ogni utente andrà aumentato,
    soprattutto se le directory home conterranno molti file multimediali
    (immagini, MP3, filmati).

C.3. Schema di partizionamento raccomandato

Per i nuovi utenti, i sistemi Debian personali, per l'uso casalingo, o per
altre situazioni mono-utente, probabilmente la soluzione più semplice è
costituita da una sola partizione / (più lo swap). Se la propria partizione è
più grande di circa 6 GB, conviene scegliere il tipo di partizione ext3, visto
che le partizioni di tipo ext2 hanno bisogno di essere periodicamente
controllate per la loro integrità, e questa operazione può rallentare la
procedura di avvio se la partizione è troppo grande.

Per i sistemi multi-utente, o i sistemi con molto spazio su disco, la soluzione
migliore consiste nel mettere /usr, /var, /tmp e /home ognuna sulla propria
partizione separata dalla partizione /.

Potrebbe essere necessario avere una partizione /usr/local separata, se si ha
intenzione di installare molti programmi che non sono compresi nella
distribuzione Debian. Se il computer sarà un server di posta, può essere
consigliabile avere una partizione separata per /var/mail. Spesso è una buona
idea anche mettere /tmp su una partizione separata di 20-50 MB. Se il sistema
sarà un server con molti account utente, è consigliabile avere una grande
partizione /home separata. In generale, lo schema di partizionamento ottimale
varia da computer a computer, a seconda dell'uso che si farà.

Per sistemi molto complessi, può essere utile consultare il Multi Disk HOWTO,
che contiene informazioni dettagliate, utili soprattutto agli ISP e a chi
installa server.

A proposito della dimensione della partizione di swap, esistono molti punti di
vista. Una regola veloce che di solito funziona consiste nell'usare tanto swap
quanta è la memoria disponibile sul sistema. Inoltre, nella maggior parte dei
casi non si dovrebbe andare sotto i 16 MB. Ovviamente ci sono eccezioni a
queste regole: se si intende risolvere 1000 equazioni simultaneamente su una
macchina con 256 MB di memoria, occorrerà un gigabyte di swap (o più).

Sulle architetture a 32 bit (i386, m68k, 32-bit SPARC e PowerPC), la dimensione
massima di una partizione di swap è 2 GB. Dovrebbe essere sufficiente per tutti
i tipi di installazione, ma se si hanno delle necessità superiori, è possibile
suddividere lo spazio di swap su più dischi (chiamati anche «spindle») e, se
possibile, diversi canali SCSI e IDE. Il kernel bilancerà automaticamente l'uso
dello swap su diverse partizioni di swap, migliorando le prestazioni.

Come esempio, si consideri un vecchio computer per uso casalingo, con 32 MB di
RAM e un disco IDE da 1,7 GB su /dev/hda. Una soluzione potrebbe essere avere
una partizione da 500 MB per un altro sistema operativo su /dev/hda1, una
partizione di swap da 32 MB su /dev/hda3 e circa 1,2 GB su /dev/hda2 come
partizione Linux.

Per avere un'idea dello spazio richiesto da varie applicazioni che si intende
utilizzare dopo aver installato il sistema, si consulti la Sezione D.2, «Spazio
su disco necessario per i task».

C.4. Nomi dei dispositivi in Linux

Poiché Linux chiama i dischi e le partizioni in modo diverso dagli altri
sistemi operativi, per creare o montare partizioni occorre conoscere i nomi
usati da Linux per riferirsi ai dispositivi. Ecco uno schema di base:

  ● Il primo lettore di dischetti è chiamato /dev/fd0.

  ● Il secondo lettore di dischetti è chiamato /dev/fd1.

  ● Il primo disco SCSI (nel senso degli ID SCSI) è chiamato /dev/sda.

  ● Il secondo disco SCSI è chiamato /dev/sdb, e così via.

  ● Il primo CD-ROM SCSI è chiamato /dev/scd0, o anche /dev/sr0.

  ● Il disco master sul controller IDE primario è chiamato /dev/hda.

  ● Il disco slave sul controller IDE primario è chiamato /dev/hdb.

  ● I dischi master e slave sul controller secondario sono chiamati
    rispettivamente /dev/hdc e /dev/hdd. I controller IDE recenti possono avere
    due canali, che in pratica si comportano come due controllori.

Le partizioni su ciascun disco sono identificate aggiungendo un numero decimale
al nome del disco: sda1 e sda2 rappresentano la prima e la seconda partizione
del primo disco SCSI sul sistema.

Ecco un esempio realistico. Ipotizzando di avere un sistema con 2 dischi SCSI,
uno con indirizzo SCSI 2 e l'altro con indirizzo SCSI 4. Il primo disco (con
indirizzo 2) si chiamerà sda, il secondo sdb. Se il disco sda ha 3 partizioni,
queste si chiameranno sda1, sda2 e sda3. Le stesse regole valgono per il disco
sdb e per le sue partizioni.

Si noti che se si possiedono due «SCSI host bus adapter» (ossia due
controller), l'ordine dei dischi può non essere immediatamente chiaro. In
questo caso, la soluzione migliore consiste nell'osservare i messaggi di boot,
a patto di saper distinguere i due dischi dal nome del modello e/o dalla
capacità.

Linux rappresenta le partizioni primarie con il nome del drive, seguito dai
numeri da 1 a 4. Ad esempio, la prima partizione primaria sul primo disco IDE è
/dev/hda1. Le partizioni logiche sono numerate a partire da 5, in modo che la
prima partizione logica sullo stessi disco è /dev/hda5. Si ricordi che la
partizione estesa, ossia la partizione primaria che contiene le partizioni
logiche, non è utilizzabile direttamente. Queste regole valgono sia per i
dischi SCSI sia per quelli IDE.

C.5. Programmi Debian per il partizionamento

Gli sviluppatori Debian hanno adattato vari programmi per il partizionamento in
modo che funzionino su vari tipi di hard disk e su varie architetture di
sistema. Quello che segue è un elenco dei programmi disponibili a seconda
dell'architettura.

partman

    Lo strumento di partizionamento raccomandato da Debian. Questo «coltellino
    svizzero» dai mille usi, può anche ridimensionare le partizioni, creare
    file system (ossia «formattarli» nel gergo di Windows) e assegnarli ai
    punti di montaggio.

fdisk

    Il partizionatore originale di Linux, riservato ai guru.

    Occorre fare attenzione se si hanno partizioni FreeBSD sulla propria
    macchina: i kernel del sistema d'installazione comprendono il supporto per
    queste partizioni, ma all'interno di fdisk esse potrebbero avere dei nomi
    di device diversi. Si veda il Linux+FreeBSD HOWTO.

cfdisk

    Un partizionatore semplice, con interfaccia a schermo intero, adatto a
    tutti.

    Si noti che cfdisk non riconosce le partizioni FreeBSD, quindi anche in
    questo caso i nomi dei dispositivi potrebbero risultare diversi da quanto
    ci si aspetta.

Uno di questi programmi verrà eseguito in modo predefinito quando si seleziona
Partiziona un disco. Si potrebbe anche usare un programma di partizionamento
diverso tramite la riga di comando sulla seconda console, questa operazione non
è raccomandata.

Occorre anche ricordarsi di marcare la partizione di boot come «Avviabile».

C.5.1. Partizionare per Intel x86

Se si usa già un altro sistema operativo come DOS o Windows e si intende
preservarlo mentre si installa Debian, potrebbe essere necessario
ridimensionare la sua partizione per liberare spazio per l'installazione di
Debian. L'installatore supporta il ridimensionamento dei file system FAT e
NTFS: arrivati alla fase di partizionamento, occorre selezionare l'opzione
Manuale e poi scegliere la partizione esistente da ridimensionare.

Il BIOS dei PC comporta alcuni vincoli riguardanti il partizionamento del
disco. C'è un limite al numero di partizioni «primarie» e «logiche» che possono
essere contenute in un disco. Inoltre, i BIOS anteriori al periodo 1994-98
contengono limitazioni sulla posizione del disco che può essere avviata dal
BIOS. È possibile trovare maggiori informazioni nel Linux Partition HOWTO e
nella Phoenix BIOS FAQ, ma questo capitolo contiene una breve panoramica utile
nella maggior parte delle situazioni.

Le partizioni «primarie» sono il tipo di partizione tradizionale per i dischi
dei PC. Tuttavia, possono esisterne al massimo quattro per ogni disco; per
superare questa limitazione, sono state introdotte le partizioni «estese» e
«logiche». Impostando una partizione primaria come partizione estesa, è
possibile suddividere ulteriormente lo spazio allocato a questa partizione in
più partizioni logiche. È possibile creare fino a 60 partizioni logiche per
ogni partizione estesa, ma è possibile avere solo una partizione estesa per
ogni disco.

Linux limita il numero delle partizioni per disco a 15 partizioni sui dischi
SCSI (3 partizioni primarie e 12 partizioni logiche), e a 63 partizioni sui
dischi IDE (3 partizioni primarie, 60 partizioni logiche). Tuttavia, il sistema
Debian GNU/Linux standard fornisce solo 20 file di device per rappresentare le
partizioni, quindi se si intende creare più di 20 partizioni occorrerà prima
creare manualmente i device per le nuove partizioni.

Se si possiede un disco IDE grande e non si sta usando né l'indirizzamento LBA,
né i driver talvolta forniti dai produttori di hard disk, allora la partizione
di avvio (quella che contiene l'immagine del kernel) deve trovarsi all'interno
dei primi 1024 cilindri del disco (di solito circa 524 MB, senza traduzione da
parte del BIOS).

Questa restrizione non è rilevante se si possiede un BIOS più recente del
periodo 1995-98 (a seconda del produttore) che supporta la «Enhanced Disk Drive
Support Specification». Sia Lilo, il Linux loader, sia il programma alternativo
di Debian mbr devono affidarsi al BIOS per leggere il kernel dal disco e
caricarlo nella RAM. Se il BIOS supporta le estensioni int 0x13 per l'accesso
ai dischi grandi, queste verranno utilizzate; altrimenti occorrerà utilizzare
la vecchia interfaccia di accesso al disco, che non può accedere porzioni del
disco che si trovano oltre il 1023-esimo cilindro. Una volta avviato Linux,
qualsiasi sia il BIOS del computer, queste restrizioni non sono più vincolanti,
visto che Linux non usa il BIOS per accedere al disco.

Se si ha un disco grande, è possibile che si debbano usare tecniche di
traduzione del numero di cilindri da attivare nel proprio BIOS, come ad esempio
l'LBA (Logical Block Addressing) o la modalità CHS («Large»). È possibile
trovare maggiori informazioni su questo problema nel Large Disk HOWTO. Se si
usa uno schema di traduzione del numero di cilindri e il BIOS non supporta le
estensioni per l'accesso ai dischi grandi, allora la partizione di avvio deve
essere compresa all'interno del 1024-esimo cilindro nella sua rappresentazione
tradotta.

Il modo consigliato di risolvere questo problema consiste nel creare una
piccola partizione (25-50MB dovrebbero essere sufficienti) all'inizio del
disco, da usare come partizione di avvio, e di creare tutte le altre partizioni
nello spazio rimanente. Questa partizione di avvio deve essere montata su /
boot, la directory destinata a contenere i kernel Linux. Questo tipo di
configurazione funzionerà su tutti i sistemi, sia che venga usato l'LBA o la
traduzione CHS, e a prescindere dal fatto che il proprio BIOS supporti le
estensioni per l'accesso ai dischi grandi.

Appendice D. Miscellanea

Sommario

D.1. I device linux

    D.1.1. Configurazione del mouse

D.2. Spazio su disco necessario per i task
D.3. Installazione di Debian GNU/Linux da un sistema Unix/Linux esistente

    D.3.1. Primi passi
    D.3.2. Installazione di debootstrap
    D.3.3. Esecuzione di debootstrap
    D.3.4. Configurazione del sistema di base
    D.3.5. Installazione di un kernel
    D.3.6. Configurazione del boot loader
    D.3.7. Ritocchi finali

D.4. Installazione di Debian GNU/Linux via Parallel Line IP (PLIP)

    D.4.1. Requisiti
    D.4.2. Configurazione del sorgente
    D.4.3. Installazione sul target

D.5. Installazione di Debian GNU/Linux utilizzando «PPP over Ethernet» (PPPoE)
D.6. Installatore grafico

    D.6.1. Uso dell'installatore grafico
    D.6.2. Problemi noti

D.1. I device linux

In Linux, all'interno della directory /dev, sono presenti diversi file
speciali, chiamati file di device, che si comportano in modo diverso dai file
normali. I tipi più comuni di file di device sono per i device a blocchi e per
i device a caratteri. Questo tipo di file sono un'interfaccia per i driver (che
fanno parte del kernel Linux) che si occupano del reale accesso all'hardware.
Un altro tipo di device, meno comune, sono i file pipe. I file di device più
significativi sono elencati nella seguente tabella.

┌───┬────────────────────────────┐
│fd0│Primo lettore di dischetti  │
├───┼────────────────────────────┤
│fd1│Secondo lettore di dischetti│
└───┴────────────────────────────┘

┌─────┬──────────────────────────────────────────────────────────────────────┐
│hda  │Disco fisso o lettore CD IDE presente sulla prima porta IDE (Master)  │
├─────┼──────────────────────────────────────────────────────────────────────┤
│hdb  │Disco fisso o lettore CD IDE presente sulla prima porta IDE (Slave)   │
├─────┼──────────────────────────────────────────────────────────────────────┤
│hdc  │Disco fisso o lettore CD IDE presente sulla seconda porta IDE (Master)│
├─────┼──────────────────────────────────────────────────────────────────────┤
│hdd  │Disco fisso o lettore CD IDE presente sulla seconda porta IDE (Slave) │
├─────┼──────────────────────────────────────────────────────────────────────┤
│hda1 │Prima partizione del primo disco fisso IDE                            │
├─────┼──────────────────────────────────────────────────────────────────────┤
│hdd15│Quindicesima partizione del primo disco fisso IDE                     │
└─────┴──────────────────────────────────────────────────────────────────────┘

┌─────┬─────────────────────────────────────────────────────┐
│sda  │Il disco fisso SCSI con l'ID SCSI più basso (p.e. 0) │
├─────┼─────────────────────────────────────────────────────┤
│sdb  │Il disco fisso SCSI con l'ID SCSI successivo (p.e. 1)│
├─────┼─────────────────────────────────────────────────────┤
│sdc  │Il disco fisso SCSI con l'ID SCSI ulteriore (p.e. 2) │
├─────┼─────────────────────────────────────────────────────┤
│sda1 │Prima partizione del primo disco fisso SCSI          │
├─────┼─────────────────────────────────────────────────────┤
│sdd10│Decima partizione del primo disco fisso SCSI         │
└─────┴─────────────────────────────────────────────────────┘

┌───┬───────────────────────────────────────────┐
│sr0│Il lettore CD SCSI con l'ID SCSI più basso │
├───┼───────────────────────────────────────────┤
│sr1│Il lettore CD SCSI con l'ID SCSI successivo│
└───┴───────────────────────────────────────────┘

┌───────┬─────────────────────────────────────────────────────────────────────┐
│ttyS0  │Porta seriale 0, COM1 sotto MS-DOS                                   │
├───────┼─────────────────────────────────────────────────────────────────────┤
│ttyS1  │Porta seriale 1, COM2 sotto MS-DOS                                   │
├───────┼─────────────────────────────────────────────────────────────────────┤
│psaux  │Device del mouse PS/2                                                │
├───────┼─────────────────────────────────────────────────────────────────────┤
│gpmdata│Pseudo device, usato dal demone GPM per ritrasmettere i dati del     │
│       │mouse                                                                │
└───────┴─────────────────────────────────────────────────────────────────────┘

┌─────┬──────────────────────────────────────────┐
│cdrom│Link simbolico al lettore CD              │
├─────┼──────────────────────────────────────────┤
│mouse│Link simbolico al file di device del mouse│
└─────┴──────────────────────────────────────────┘

┌────┬──────────────────────────────────────────────────┐
│null│Qualunque cosa scritta su questo device scomparirà│
├────┼──────────────────────────────────────────────────┤
│zero│Vi si possono leggere infiniti zero               │
└────┴──────────────────────────────────────────────────┘

D.1.1. Configurazione del mouse

Il mouse può essere utilizzato sia in console (con gpm) che in ambiente X
Window. Normalmente si tratta solo di installare gpm e il server X. Entrambi
devono essere configurati per usare come device per il mouse /dev/input/mice,
il protocollo corretto è chiamato exps2 in gpm e ExplorerPS/2 sotto X. I file
di configurazione sono rispettivamente /etc/gpm.conf e /etc/X11/xorg.conf.

Potrebbe essere necessario caricare alcuni moduli del kernel per far funzionare
il mouse. Nella maggior parte dei casi questi moduli vengono caricati
automaticamente, ma per i vecchi mouse seriali e per i bus mouse^[26] non
sempre avviene. Questi mouse sono abbastanza rari tranne su computer molto
vecchi. Segue un riepilogo dei moduli per il kernel Linux necessari all'uso dei
diversi tipi di mouse:

┌────────┬─────────────────────────────────────────────────────────┐
│ Modulo │                       Descrizione                       │
├────────┼─────────────────────────────────────────────────────────┤
│psmouse │Mouse PS/2 (dovrebbe essere riconosciuto automaticamente)│
├────────┼─────────────────────────────────────────────────────────┤
│usbhid  │Mouse USB (dovrebbe essere riconosciuto automaticamente) │
├────────┼─────────────────────────────────────────────────────────┤
│sermouse│La maggior parte dei mouse seriali                       │
├────────┼─────────────────────────────────────────────────────────┤
│logibm  │Bus mouse connesso a una scheda Logitech                 │
├────────┼─────────────────────────────────────────────────────────┤
│inport  │Bus mouse connesso a una scheda ATI o Microsoft InPort   │
└────────┴─────────────────────────────────────────────────────────┘

Per caricare un modulo con il driver per un mouse si può usare il comando
modconf (contenuto nell'omonimo pacchetto) e controllare nella categoria kernel
/drivers/input/mouse.

D.2. Spazio su disco necessario per i task

L'installazione standard sull'architettura i386, compresi tutti i pacchetti
standard e il kernel 2.6 predefinito, richiede 397 MB di spazio su disco.
L'installazione di base minimale, senza il task «Sistema standard», richiede
250 MB.

Importante

In entrambi i casi è lo spazio su disco effettivamente usato dopo aver finito
l'installazione e aver rimosso qualsiasi file temporaneo. Inoltre non tiene
conto del carico dovuto ai file di sistema, per esempio i file di giornale.
Questo vuol dire che è necessaria una quantità di spazio su disco
significativamente superiore durante l'installazione e il normale uso del
sistema.

La tabella seguente elenca le dimensioni dei task proposti in tasksel, secondo
quanto riportato da aptitude. Si noti che alcuni task hanno dei componenti in
comune, per cui lo spazio realmente occupato da due task installati assieme
potrebbe essere minore della somma teorica.

L'ambiente desktop predefinito è GNOME, però è possibile utilizzare anche altri
ambienti desktop alternativi usando una delle immagini CD speciali oppure
specificando l'ambiente desktop desiderato all'avvio dell'installazione (si
veda Sezione 6.3.5.2, «Selezione e installazione dei pacchetti»).

Si noti che è necessario aggiungere dello spazio rispetto a quanto indicato
nella tabella come spazio minimo nel momento in cui si definisce la dimensione
delle partizioni. La maggior parte delle dimensioni elencate come «Dimensione
installazione» va a finire all'interno di /usr e di /lib; le dimensioni
elencate come «Dimensione download» devono essere (temporaneamente) disponibili
in /var.

┌─────────────┬───────────────────┬────────────────┬──────────────────────────┐
│    Task     │    Dimensione     │   Dimensione   │    Spazio necessario     │
│             │installazione (MB) │ download (MB)  │  all'installazione (MB)  │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│Ambiente     │                   │                │                          │
│desktop      │                   │                │                          │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│  • GNOME    │1830               │703             │2533                      │
│(default)    │                   │                │                          │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│  • KDE      │1592               │613             │2205                      │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│  • Xfce     │1056               │403             │1459                      │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│  • LXDE     │963                │370             │1333                      │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│Laptop^[a]   │26                 │9               │35                        │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│Web server   │42                 │13              │55                        │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│Print server │215                │84              │299                       │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│DNS server   │3                  │1               │4                         │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│File server  │74                 │29              │103                       │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│Mail server  │14                 │5               │19                        │
├─────────────┼───────────────────┼────────────────┼──────────────────────────┤
│SQL database │50                 │18              │68                        │
├─────────────┴───────────────────┴────────────────┴──────────────────────────┤
│^[a] Alcune parti del task Laptop sono comuni con il task Ambiente desktop.  │
│Installandoli entrambi, il task Laptop richiede solo pochi MB di spazio su   │
│disco in più.                                                                │
└─────────────────────────────────────────────────────────────────────────────┘

Se l'installazione avviene in una lingua diversa dall'inglese, tasksel potrebbe
installare automaticamente un localization task se disponibile per la lingua in
uso. Lo spazio richiesto varia a seconda della lingua; potrebbero essere
necessari altri 350 MB per il download e l'installazione di questo task.

D.3. Installazione di Debian GNU/Linux da un sistema Unix/Linux esistente

In questa sezione viene spiegato come installare Debian GNU/Linux a partire da
un sistema Unix o Linux esistente, senza utilizzare l'installatore a menu come
illustrato nel resto del manuale. Questo HOWTO sul «cross-install» è stato
richiesto da utenti di altre distribuzioni, come Red Hat, Mandrake e SUSE, che
vogliono provare Debian GNU/Linux. Viene data per acquisita da parte
dell'utente una minima familiarità con i comandi *nix e con la navigazione del
file system. In questa sezione, $ indica un comando da inserire nel sistema
attualmente in uso all'utente, mentre # si riferisce a un comando da inserire
nell'ambiente chroot di Debian.

Una volta che il nuovo sistema Debian è stato configurato a proprio piacimento,
si può procedere alla migrazione dei dati esistenti e poi all'uso quotidiano.
Si tratta quindi di un'installazione che non blocca, nemmeno momentaneamente,
l'uso del sistema, inoltre è un modo ingegnoso per gestire hardware che
potrebbe avere problemi con i normali metodi di avvio o installazione.

Nota

Questa è per lo più una procedura manuale, si deve tenere in mente che è
necessario fare da soli molte configurazioni di base del sistema che richiedono
una conoscenza più approfondita di Debian e di Linux in generale rispetto a una
normale installazione. Non ci si deve aspettare che seguendo questa procedura
si ottenga un sistema identico a quello che si otterrebbe con una normale
installazione. Si deve anche tenere in mente che questa procedura contiene solo
i passi basilari per la configurazione di un sistema; potrebbero essere
necessarie altre operazioni di installazione e/o configurazione.

D.3.1. Primi passi

Usando gli strumenti per il partizionamento disponibili, ripartizionare,
secondo le proprie necessità, il disco fisso creando almeno un file system e
una partizione di swap. Per un ambiente puramente testuale sono necessari
350 MB, 1 GB se si intende installare X (ancora di più se si installa un
ambiente desktop come GNOME o KDE).

Poi creare dei file system sulle partizioni appena realizzate. In questo
esempio si crea un file system ext3 sulla partizione /dev/hda6 (in seguito
questa partizione è usata come root):

# mke2fs -j /dev/hda6

Per creare un file system ext2, basta omettere l'opzione -j.

Inizializzare e attivare lo swap (sostituire il numero della partizione con
quello della partizione destinata allo swap per Debian):

# mkswap /dev/hda5
# sync; sync; sync
# swapon /dev/hda5

Montare una partizione come /mnt/debinst (il punto di installazione, diventerà
il file system di root / del nuovo sistema). Il nome del mount point è
arbitrario, quello scelto è utilizzato da qui in avanti.

# mkdir /mnt/debinst
# mount /dev/hda6 /mnt/debinst

Nota

Nel caso si voglia avere delle parti del filesystem (p.e. /usr) montate da
delle partizioni separate è necessario creare e montare manualmente queste
directory prima di procedere con la prossima fase.

D.3.2. Installazione di debootstrap

Lo strumento usato dall'installatore Debian, e che è considerato il mezzo
ufficiale per installare un sistema Debian di base, è debootstrap. Utilizza
wget e ar, ma a parte questi programmi ha bisogno solo di /bin/sh e degli
strumenti Unix/Linux di base^[27]. Si installi wget e ar in caso non siano già
presenti sul sistema in uso, poi scaricare e installare debootstrap.

Un'ulteriore possibilità è installare debootstrap manualmente seguendo questa
procedura. Creare una cartella di lavoro in cui estrarre il .deb:

# mkdir work
# cd work

Il binario di debootstrap si trova nell'archivio Debian (si faccia attenzione a
scegliere il file adatto alla propria architettura). Scaricare il pacchetto
.deb di debootstrap dal pool, poi copiarlo nella cartella di lavoro ed estrarre
i file. Servono i privilegi di root per installarli.

# ar -x debootstrap_0.X.X_all.deb
# cd /
# zcat /full-path-to-work/work/data.tar.gz | tar xv

D.3.3. Esecuzione di debootstrap

Quando viene lanciato, debootstrap è in grado di scaricare i file necessari
direttamente dall'archivio. Si può sostituire ftp.it.debian.org/debian,
utilizzato nell'esempio sottostante, con un qualsiasi mirror dell'archivio
Debian, meglio se geograficamente vicino. Un elenco dei mirror è disponibile
presso: http://www.debian.org/misc/README.mirrors.

In caso si abbia un CD Debian GNU/Linux lenny montato su /cdrom, si può
sostituire l'URL http con l'URL file:/cdrom/debian/.

Nel comando debootstrap sostituire ARCH con uno dei seguenti: alpha, amd64, arm
, armel, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390 o sparc.

# /usr/sbin/debootstrap --arch ARCH lenny \
     /mnt/debinst http://ftp.us.debian.org/debian

D.3.4. Configurazione del sistema di base

Ora sul disco c'è un vero sistema Debian, seppur minimale. Eseguire chroot:

# LANG=C chroot /mnt/debinst /bin/bash

Dopo l'operazione di chroot potrebbe essere necessario impostare il terminale
con uno compatibile con il sistema Debian di base, per esempio:

# export TERM=xterm-color

D.3.4.1. Creazione dei file di device

A questo punto /dev/ contiene solo i file di device più basilari, però i
prossimi passi dell'installazione potrebbero aver bisogno di altri file di
device. Ci sono più modi per proseguire, la scelta dipende dal sistema che sta
ospitando l'installazione, dall'intenzione di usare un kernel modulare oppure
no, e dall'intenzione di usare file di device dinamici (per esempio usando
udev) o statici.

Alcune delle possibili soluzioni sono:

  ● creare un set predefinito di file di device statici usando

    # cd /dev
    # MAKEDEV generic

  ● creare manualmente solo dei file di device specifici usando MAKEDEV

  ● collegare con mount la /dev del sistema che ospita l'installazione sopra la
    /dev del sistema che si sta installando; notare che gli script di
    post-installazione di alcuni pacchetti potrebbero provare a creare file di
    device quindi questo metodo deve essere usato con molta cautela.

D.3.4.2. Montare le partizioni

Adesso è necessario creare /etc/fstab.

# editor /etc/fstab

Segue un esempio che si può adattare secondo le proprie necessità:

# /etc/fstab: static file system information.
#
# file system    mount point   type    options                  dump pass
/dev/XXX         /             ext3    defaults                 0    1
/dev/XXX         /boot         ext3    ro,nosuid,nodev          0    2

/dev/XXX         none          swap    sw                       0    0
proc             /proc         proc    defaults                 0    0

/dev/fd0         /media/floppy auto    noauto,rw,sync,user,exec 0    0
/dev/cdrom       /media/cdrom  iso9660 noauto,ro,user,exec      0    0

/dev/XXX         /tmp          ext3    rw,nosuid,nodev          0    2
/dev/XXX         /var          ext3    rw,nosuid,nodev          0    2
/dev/XXX         /usr          ext3    rw,nodev                 0    2
/dev/XXX         /home         ext3    rw,nosuid,nodev          0    2

Per montare tutti i file system specificati nel proprio /etc/fstab, si esegua
mount -a, mentre per montarli singolarmente si usi:

# mount /path   # per esempio:  mount /usr

Nei sistemi Debian più recenti i punti di mount per i supporti rimovibili sono
in /media, per compatibilità si possono tenere dei link simbolici in /. Creare
i link in base alle proprie necessità, per esempio:

# cd /media
# mkdir cdrom0
# ln -s cdrom0 cdrom
# cd /
# ln -s media/cdrom

È possibile montare il file system proc più volte e in posizioni arbitrarie, ma
è consuetudine farlo su /proc. Se non si esegue mount -a, prima di continuare
assicurarsi di montare proc:

# mount -t proc proc /proc

Adesso il comando ls /proc dovrebbe mostrare una directory con dei file. Se non
funziona, si dovrebbe essere in grado di montare proc da fuori della chroot:

# mount -t proc proc /mnt/debinst/proc

D.3.4.3. Configurazione del fuso orario

Una opzione all'interno del file /etc/default/rcS determina se il sistema deve
interpretare l'orologio hardware come impostato su UTC oppure sull'ora locale.
I seguenti comandi permettono di impostare questa opzione e di scegliere il
proprio fuso orario.

# editor /etc/default/rcS
# dkpg-reconfigure tzdata

D.3.4.4. Configurazione della rete

Per configurare la rete, si deve modificare /etc/network/interfaces, /etc/
resolv.conf, /etc/hostname e /etc/hosts.

# editor /etc/network/interfaces

Alcuni esempi banali da /usr/share/doc/ifupdown/examples:

######################################################################
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# See the interfaces(5) manpage for information on what options are
# available.
######################################################################

# We always want the loopback interface.
#
auto lo
iface lo inet loopback

# To use dhcp:
#
# auto eth0
# iface eth0 inet dhcp

# An example static IP setup: (broadcast and gateway are optional)
#
# auto eth0
# iface eth0 inet static
#     address 192.168.0.42
#     network 192.168.0.0
#     netmask 255.255.255.0
#     broadcast 192.168.0.255
#     gateway 192.168.0.1

Gli indirizzi dei name server e le direttive search vanno inseriti in /etc/
resolv.conf:

# editor /etc/resolv.conf

Un semplice esempio di /etc/resolv.conf:

search hqdom.local
nameserver 10.1.1.36
nameserver 192.168.9.100

Inserire l'hostname del proprio sistema (da 2 a 63 caratteri):

# echo DebianHostName > /etc/hostname

E un semplice /etc/hosts con supporto IPv6:

127.0.0.1 localhost DebianHostName

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

In presenza di più schede di rete, si dovrebbero disporre i nomi dei driver nel
file /etc/modules nell'ordine desiderato. In tal modo, durante l'avvio ad ogni
scheda verrà associato il nome di interfaccia che ci si aspetta (eth0, eth1,
etc.).

D.3.4.5. Configurazione di Apt

Debootstrap crea un file /etc/apt/sources.list molto semplice che permette
l'installazione di altri pacchetti. Comunque si possono anche aggiungere
ulteriori sorgenti, per esempio per i pacchetti sorgente e gli aggiornamenti
alla sicurezza:

deb-src http://ftp.us.debian.org/debian lenny main

deb http://security.debian.org/ lenny/updates main
deb-src http://security.debian.org/ lenny/updates main

Ricordarsi di eseguire aptitude update dopo aver modificato il file
sources.list.

D.3.4.6. Configurazione del pacchetto locales e della tastiera

Per utilizzare una localizzazione diversa da quella inglese, installare e
configurare il pacchetto locales. Si raccomanda l'uso di un locale UTF-8.

# aptitude install locales
# dpkg-reconfigure locales

Per configurare la tastiera (se necessario):

# aptitude install console-data
# dpkg-reconfigure console-data

Notare che la tastiera non può essere impostata quando si è all'interno della
chroot, sarà possibile configurarla al riavvio successivo.

D.3.5. Installazione di un kernel

Nel caso si intenda avviare il nuovo sistema, servono un kernel Linux e un boot
loader. I kernel pacchettizzati disponibili si trovano con:

# apt-cache search linux-image

Se si intende usare un kernel pre-impacchettato, può essere consigliabile
creare il file di configurazione /etc/kernel-img.conf prima dell'installazione.
Questo è un esempio di configurazione:

# Kernel image management overrides
# See kernel-img.conf(5) for details
do_symlinks = yes
relative_links = yes
do_bootloader = yes
do_bootfloppy = no
do_initrd = yes
link_in_boot = no

Informazioni dettagliate su questo file e sulle diverse opzioni si possono
trovare nella pagina man relativa al file, disponibile dopo l'installazione del
pacchetto kernel-package. Si raccomanda di verificare che i valori riportati
siano adatti al proprio sistema.

Si può quindi installare il pacchetto con il kernel prescelto usando il nome
del pacchetto.

# aptitude install linux-image-2.6.26-arch-etc

Se non si crea il file /etc/kernel-img.conf prima di installare un kernel
pre-impacchettato, durante l'installazione del pacchetto potrebbero essere
poste alcune domande che fanno riferimento proprio a quel file.

D.3.6. Configurazione del boot loader

Per rendere avviabile il sistema Debian GNU/Linux, si deve configurare il boot
loader in modo da caricare il kernel installato con la nuova partizione di
root. Si noti che debootstrap non installa un boot loader, si può installare un
boot loader tramite aptitude dall'interno della chroot Debian.

Si provi info grub o man lilo.conf per ottenere istruzioni sulla configurazione
del boot loader. Nel caso si desideri mantenere attivo il sistema da cui si è
installato Debian, è sufficiente aggiungere una voce per Debian al file di grub
(menu.lst) o di lilo (lilo.conf) esistente. Se si tratta di lilo.conf, è anche
possibile copiarlo sul nuovo sistema e lì modificarlo opportunamente. Dopo
averlo modificato eseguire lilo (ricordandosi che usa il lilo.conf relativo al
sistema su cui viene lanciato).

L'installazione e la configurazione di grub è molto semplice:

# aptitude install grub
# grub-install /dev/hda
# update-grub

Il secondo comando installa grub (in questo caso nel MBR di hda). L'ultimo
comando crea un file /boot/grub/menu.lst corretto e funzionante.

Notare che si suppone che il device /dev/hda sia già stato creato. Esistono
anche altri metodi per installare grub, ma questi non rientrano fra gli scopi
di questa appendice.

Di seguito un /etc/lilo.conf di base come esempio:

boot=/dev/hda6
root=/dev/hda6
install=menu
delay=20
lba32
image=/vmlinuz
initrd=/initrd.img
label=Debian

Adesso, a seconda del bootloader prescelto, si devono fare ulteriori modifiche
al file /etc/kernel-img.conf.

Per il bootloader grub si deve impostare l'opzione do_bootloader a «no». Per
aggiornare automaticamente il file /boot/grub/menu.lst quando si installa o si
rimuove un kernel Debian, aggiungere le seguenti righe:

postinst_hook = update-grub
postrm_hook   = update-grub

Per il bootloader lilo, il valore di do_bootloader deve rimanere «yes».

D.3.7. Ritocchi finali

Come già detto in precedenza, al termine dell'installazione si dispone di un
sistema decisamente basilare. Per rendere il proprio sistema più completo c'è
un modo semplice per installare tutti i pacchetti con priorità «standard»:

# tasksel install standard

Ovviamente è possibile usare aptitude per installare dei pacchetti individuali.

Al termine dell'installazione in /var/cache/apt/archives/ sono presenti i
pacchetti scaricati. Si possono cancellare e quindi liberare un po' di spazio
usando:

# aptitude clean

D.4. Installazione di Debian GNU/Linux via Parallel Line IP (PLIP)

Questa sezione spiega come installare Debian GNU/Linux su una macchina senza
una scheda di rete usando solo una macchina remota che fa da gateway tramite un
cavo Null-Modem (chiamato anche Null-Printer). La macchina che fa da gateway
deve essere connessa a una rete sui cui è presente un mirror Debian (per
esempio Internet).

Nell'esempio presente in questa appendice è configurata una connessione PLIP
con un gateway connesso a Internet tramite una connessione dial-up (ppp0). Sono
usati gli indirizzi IP 192.168.0.1 e 192.168.0.2 per l'interfaccia PLIP
rispettivamente sul sistema target e sul sistema sorgente (questi indirizzi
devono essere liberi all'interno dello spazio degli indirizzi della propria
rete).

La connessione PLIP impostata durante l'installazione è disponibile anche al
riavvio del sistema installato (si veda Capitolo 7, Avvio del nuovo sistema
Debian).

Prima d'iniziare è necessario controllare nel BIOS la configurazione (indirizzo
IO di base e IRQ) della porta parallela sul sistema sorgente e sul sistema
target. La configurazione più comune è io=0x378 e irq=7.

D.4.1. Requisiti

  ● Una macchina destinataria, chiamata target, su cui sarà installata Debian.

  ● I supporti con il sistema d'installazione; si veda Sezione 2.4, «Supporti
    per l'installazione».

  ● Un'altra macchina connessa a Internet, chiamata sorgente, che ha la
    funzione di gateway.

  ● Un cavo DB-25 Null-Modem. Si consulti il PLIP-Install-HOWTO per ulteriori
    informazioni su questo cavo e per le istruzioni su come realizzarne uno da
    soli.

D.4.2. Configurazione del sorgente

Lo script shell seguente è un semplice esempio di come configurare la macchina
sorgente come gateway per Internet usando ppp0.

#!/bin/sh

# We remove running modules from kernel to avoid conflicts and to
# reconfigure them manually.
modprobe -r lp parport_pc
modprobe parport_pc io=0x378 irq=7
modprobe plip

# Configure the plip interface (plip0 for me, see dmesg | grep plip)
ifconfig plip0 192.168.0.2 pointopoint 192.168.0.1 netmask 255.255.255.255 up

# Configure gateway
modprobe iptable_nat
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

D.4.3. Installazione sul target

Avviare l'installazione in modalità esperto, inserire expert al prompt d'avvio.
Anche nel caso che si debbano impostare dei parametri per i moduli del kernel è
necessario farlo dal prompt d'avvio. Per esempio, per avviare l'installatore e
impostare i valori dei parametri «io» e «irq» per il modulo parport_pc si deve
inserire al prompt d'avvio:

expert parport_pc.io=0x378 parport_pc.irq=7

In seguito sono riepilogate le risposte che si devono dare nei vari passi
dell'installazione.

 1. Caricare i componenti dell'installatore dal CD-ROM

    Scegliere l'opzione plip-modules dall'elenco; questa operazione permette di
    usare i driver PLIP con il sistema d'installazione.

 2. Riconoscimento dei dispositivi di rete

      ● Se il target ha una scheda di rete viene mostrato un elenco dei moduli
        driver per le schede riconosciute. Per forzare il debian-installer a
        usare plip si deve deselezionare tutti i moduli elencati. Ovviamente se
        il target non ha una scheda di rete l'installatore non mostra questo
        elenco.

      ● Poiché in precedenza non è stata rilevata/selezionata nessuna scheda di
        rete, l'installatore chiede di scegliere il modulo con il driver di
        rete da un elenco; scegliere il modulo plip.

 3. Configurazione della rete

      ● Configurazione automatica della rete con DHCP: No

      ● Indirizzo IP: 192.168.0.1

      ● Indirizzo point-to-point: 192.168.0.2

      ● Indirizzi dei name server: si possono inserire gli stessi indirizzi
        usati sul sorgente (si veda /etc/resolv.conf)

D.5. Installazione di Debian GNU/Linux utilizzando «PPP over Ethernet» (PPPoE)

In alcuni paesi è molto comune l'uso del protocollo «PPP over Ethernet» (PPPoE)
per le connessioni a banda larga (ADSL o via cavo) a un Internet Service
Provider. L'impostazione di una connessione PPPoE non è normalmente supportata
dall'installatore però può essere preparata molto semplicemente. In questa
sezione viene spiegato come.

La connessione PPPoE configurata durante l'installazione rimane disponibile
anche dopo il riavvio del sistema installato (si veda Capitolo 7, Avvio del
nuovo sistema Debian).

È possibile configurare e utilizzare la connessione PPPoE durante
l'installazione solo se si utilizza una delle immagini CD-ROM/DVD disponibili.
La connessione PPPoE non è supportata con altri metodi d'installazione (per
esempio l'avvio da rete).

L'installazione con PPPoE è molto simile a qualsiasi altra installazione. I
seguenti passi spiegano le differenze.

  ● Avviare l'installatore con il parametro d'avvio modules=ppp-udeb^[28].
    Questo garantisce che il componente responsabile della configurazione di
    PPPoE (ppp-udeb) sia caricato ed eseguito automaticamente.

  ● Continuare con i normali passi iniziali dell'installazione (selezione di
    lingua, paese e tastiera e caricamento dei componenti aggiuntivi
    dell'installatore^[29]).

  ● Il passo successivo consiste nel riconoscimento dell'hardware di rete per
    identificare tutte le schede Ethernet presenti sul sistema.

  ● Dopo aver effettuato questo passo PPPoE è attivo. L'installatore cerca su
    ogni interfaccia Ethernet la presenza di un concentratore per PPPoE (cioè
    un tipo di server che gestisce connessioni PPPoE).

    È possibile che il concentratore non sia trovato al primo tentativo, questo
    può accadere occasionalmente in reti particolarmente lente o con molto
    traffico o con server mal funzionanti. In molti casi un secondo tentativo
    ha successo; per riprovare, selezionare Configura e attiva una connessione
    PPPoE dal menu dell'installatore.

  ● Dopo aver trovato un concentratore viene chiesto all'utente di inserire le
    informazioni di login (nome utente e password per PPPoE).

  ● Infine l'installatore usa le informazioni appena inserite per stabilire la
    connessione PPPoE. Se le informazioni sono corrette, la connessione è
    pronta e l'installatore può connettersi a Internet per recuperare i
    pacchetti (se necessario). Se le informazioni per l'accesso sono sbagliate
    oppure se si verificano degli errori, l'installatore si ferma ed è
    possibile ripetere nuovamente la configurazione selezionando Configura e
    attiva una connessione PPPoE dal menu.

D.6. Installatore grafico

La versione grafica dell'installatore è disponibile soltanto su un numero
limitato di architetture, fra le quali Intel x86. La funzionalità
dell'installatore grafico è quasi identica a quella dell'installatore
tradizionale dato che entrambe le versioni hanno come base gli stessi programmi
e differiscono soltanto per l'interfaccia.

Nonostante la funzionalità sia identica, l'installatore grafico ha alcuni
piccoli ma significativi vantaggi. Il vantaggio principale è che può supportare
un numero maggiore di lingue, cioè le lingue che usano un set di caratteri che
non può essere visualizzato con la tradizionale interfaccia «newt». Ha anche
vantaggi di usabilità, infatti è possibile usare il mouse e, in alcuni casi, le
domande possono mostrate all'interno di un'unica schermata.

L'Installatore grafico è disponibile in tutte le immagini di CD e con il metodo
d'installazione da disco fisso. Per avviare l'installatore grafico è
sufficiente scegliere la voce corrispondente nel menu di avvio. Le modalità
esperto e di ripristino dell'installatore grafico si trovano nel menu «Opzioni
avanzate». È comunque ancora possibile usare i vecchi metodi di avvio
installgui, expertgui e rescuegui dal prompt di avvio che appare dopo aver
selezionato «Aiuto» nel menu di avvio.

Esiste anche una immagine dell'installatore grafico che può essere avviata da
rete; inoltre è disponibile un'immagine ISO speciale denominata «mini»^[30],
che è particolarmente utile per i test.

Come per l'installatore tradizionale è possibile aggiungere dei parametri
d'avvio anche per l'installatore grafico. Uno di questi parametri permette di
configurare l'uso del mouse con la mano sinistra; altri consentono di scegliere
il device del mouse (per esempio con un mouse seriale) e il protocollo per il
mouse. Si consulti Sezione 5.3, «Parametri di avvio» per conoscere quali sono i
parametri validi e Sezione 5.1.6, «La schermata di avvio» per le informazioni
su come passarli.

Nota

L'uso dell'installatore grafico richiede molta più memoria rispetto
all'installatore tradizionale: almeno 96MB. Se la memoria disponibile non è
sufficiente, viene automaticamente attivata l'interfaccia «newt».

Se la quantità di memoria presente sul sistema è inferiore a 44MB, può
risultare impossibile avviare la versione grafica dell'installatore invece la
versione tradizionale potrebbe funzionare. Sui sistemi con poca memoria si
raccomanda l'uso della versione tradizionale dell'installatore.

D.6.1. Uso dell'installatore grafico

Come già detto, l'installatore grafico funziona avendo come base gli stessi
programmi della versione tradizionale e quindi questo manuale può essere usato
come guida durante il processo d'installazione.

Se si preferisce usare la tastiera al posto del mouse si devono tenere presenti
un paio di cose. Per espandere un elenco chiuso (per esempio la selezione dei
paesi all'interno dei continenti) si possono usare i tasti + e -. Per domande
che ammettono una risposta multipla (per esempio la selezione dei task) dopo
aver effettuato le scelte si deve usare usare il tasto tab per spostarsi su
Continuare; la pressione del tasto invio cambia lo stato dell'ultima selezione
e non attiva Continuare.

Per passare su un'altra console è necessario usare anche il tasto Ctrl,
esattamente come in X Window System. Per esempio, per passare al VT2 (la prima
shell di debug) si devono premere Ctrl+Alt+F2. La versione grafica
dell'installatore è eseguita sul VT5, quindi si deve usare Alt+F5 per tornare
indietro.

D.6.2. Problemi noti

L'interfaccia grafica dell'installatore è relativamente nuova e per questo
motivo ci sono dei problemi noti ancora non risolti. Stiamo lavorando alla loro
risoluzione.

  ● In alcune schermate le informazioni non sono ancora ben formattate in
    colonne.

  ● Il supporto per i touchpad non è ancora perfetto.


━━━━━━━━━━━━━━

^[26] Solitamente i mouse seriali hanno un connettore a forma di una «D» con 9
poli; i bus mouse hanno un connettore rotondo a 8 poli che non deve essere
confuso con il connettore rotondo a 6 poli dei mouse PS/2 o con il connettore
rotondo a 4 poli dei mouse ADB.

^[27] Questi includono le principali utility GNU e comandi come sed, grep, tar
e gzip.

^[28] Si veda Sezione 5.1.6, «La schermata di avvio» per informazioni su come
aggiungere un parametro di avvio.

^[29] Il componente ppp-udeb viene caricato in questa fase insieme agli altri
componenti aggiuntivi. Se l'installazione avviene con priorità media oppure
bassa (cioè in modalità esperto), è possibile attivare manualmente ppp-udeb
anziché doverlo specificare al prompt boot tramite il parametro «modules».

^[30] L'immagine ISO mini può essere scaricata da qualsiasi mirror Debian con
la stessa procedura descritta in Sezione 4.2, «Recupero dei file dai mirror
Debian». Si cerchi netboot/gtk/mini.iso.

Appendice E. Administrivia

Sommario

E.1. Informazioni su questo documento
E.2. Come contribuire
E.3. Contributi principali
E.4. Marchi registrati

E.1. Informazioni su questo documento

Questo manuale è stato creato per l'Installatore Debian di Sarge basandosi sul
manuale d'installazione di boot-floppies per Woody, che a sua volta si basava
sui manuali d'installazione delle precedenti versioni di Debian, e sul manuale
della distribuzione Progeny che è stato rilasciato sotto GPL nel 2003.

Questo documento è scritto in DocBook XML. I formati di output sono generati da
diversi programmi che usano informazioni contenute nei pacchetti docbook-xml e
docbook-xsl.

Per facilitare la manutenzione di questo documento vengono usate un gran numero
di caratteristiche dell'XML, quali le entity e gli attributi, che hanno un
ruolo simile a quello delle variabili e dei costrutti condizionali nei
linguaggi di programmazione. Il sorgente XML di questo documento contiene
informazioni per ciascuna diversa architettura: vengono usati degli attributi
per isolare determinate parti di testo che sono specifiche di una certa
architettura.

La traduzione di questo manuale è coordinata da Luca Monducci. Hanno
contribuito alla traduzione Ottavio Campana, Stefano Canepa, Fabio Pani,
Cristian Rigamonti, Giuseppe Sacco e Giuliano.

E.2. Come contribuire

Se si hanno problemi o suggerimenti su questo documento, si dovrebbe inviarli
come segnalazioni di bug per il pacchetto installation-guide; consultare il
pacchetto reportbug o leggere la documentazione in linea del Debian Bug
Tracking System. È preferibile consultare prima l'elenco dei bug aperti per
installation-guide per controllare se il problema riscontrato sia già stato
comunicato. Se è così, si possono fornire delle informazioni aggiuntive
all'email <XXXX@bugs.debian.org>, dove XXXX è il numero del bug già presente.

Meglio ancora, ci si può procurare una copia del sorgente DocBook di questo
documento e creare delle patch; il sorgente DocBook può essere trovato nel
debian-installer WebSVN. Non ci si deve preoccupare se non si conosce DocBook,
c'è una semplice introduzione nella directory dei manuali che permette di
iniziare. È molto simile all'HTML, ma è orientato al contenuto anziché alla
presentazione. Le patch devono essere inviate alla mailing list debian-boot
(vedi sotto); per le istruzioni su come recuperare i sorgenti via SVN, leggere
il file README che si trova nelle directory principale dei sorgenti.

Si prega di non contattare direttamente gli autori di questo documento; esiste
una lista di discussione per debian-installer, dedicata anche a questioni
riguardanti questo manuale: <debian-boot@lists.debian.org>. Si possono trovare
informazioni su come iscriversi sulla pagina Iscrizione alle mailing list e un
archivio web della lista negli Archivi delle mailing list.

E.3. Contributi principali

Questo documento è stato originariamente scritto da Bruce Perens, Sven Rudolph,
Igor Grobman, James Treacy e Adam Di Carlo. Sebastian Ley ha scritto
l'Installation Howto. Sono davvero molti gli utenti e sviluppatori Debian che
hanno contribuito a questo documento; in particolare vanno ricordati Michael
Schmitz (supporto per m68k), Frank Neumann (l'autore originale dell'Amiga
install manual), Arto Astala, Eric Delaunay/Ben Collins (informazioni sulle
SPARC), Tapio Lehtonen e Stphane Bortzmeyer per le numerose modifiche e il
testo fornito. Si deve anche ringraziare Pascal Le Bail per le informazioni
sull'avvio da memorie USB e Miroslav Kuře che ha documentato molte delle nuove
funzionalità dell'Installatore Debian per Sarge.

Testi e informazioni estremamente utili sono stati trovati nell'HOWTO
sull'avvio via rete di Jim Mintha (non è disponibile un URL), in Debian FAQ,
Linux/m68k FAQ, Linux for SPARC Processors FAQ, Linux/Alpha FAQ, tra l'altro.
Un ringraziamento particolare va ai manutentori di queste ricche fonti di
informazioni, liberamente disponibili.

Una parte della sezione di questo manuale sull'installazione con chroot (
Sezione D.3, «Installazione di Debian GNU/Linux da un sistema Unix/Linux
esistente») è derivata da alcuni documenti sotto il copyright di Karsten M.
Self.

La sezione di questo manuale che tratta l'installazione tramite plip (
Sezione D.4, «Installazione di Debian GNU/Linux via Parallel Line IP (PLIP)») è
basata sul PLIP-Install-HOWTO di Gilles Lamiral.

E.4. Marchi registrati

Tutti i marchi registrati sono di proprietà dei rispettivi proprietari.

Appendice F. GNU General Public License

Sommario

F.1. GNU General Public License
F.2. Licenza Pubblica Generica GNU

Nota

La licenza originale è seguita da una traduzione non ufficiale curata da gruppo
Pluto, da ILS e dal gruppo italiano di traduzione GNU.

F.1. GNU General Public License

Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share
and change it. By contrast, the gnu General Public License is intended to
guarantee your freedom to share and change free software -- to make sure the
software is free for all its users. This General Public License applies to most
of the Free Software Foundation's software and to any other program whose
authors commit to using it. (Some other Free Software Foundation software is
covered by the gnu Library General Public License instead.) You can apply it to
your programs, too.

When we speak of free software, we are referring to freedom, not price. Our
General Public Licenses are designed to make sure that you have the freedom to
distribute copies of free software (and charge for this service if you wish),
that you receive source code or can get it if you want it, that you can change
the software or use pieces of it in new free programs; and that you know you
can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny
you these rights or to ask you to surrender the rights. These restrictions
translate to certain responsibilities for you if you distribute copies of the
software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for
a fee, you must give the recipients all the rights that you have. You must make
sure that they, too, receive or can get the source code. And you must show them
these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2)
offer you this license which gives you legal permission to copy, distribute and
/or modify the software.

Also, for each author's protection and ours, we want to make certain that
everyone understands that there is no warranty for this free software. If the
software is modified by someone else and passed on, we want its recipients to
know that what they have is not the original, so that any problems introduced
by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish
to avoid the danger that redistributors of a free program will individually
obtain patent licenses, in effect making the program proprietary. To prevent
this, we have made it clear that any patent must be licensed for everyone's
free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification
follow.

GNU GENERAL PUBLIC LICENSE

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice
placed by the copyright holder saying it may be distributed under the terms of
this General Public License. The "Program", below, refers to any such program
or work, and a "work based on the Program" means either the Program or any
derivative work under copyright law: that is to say, a work containing the
Program or a portion of it, either verbatim or with modifications and/or
translated into another language. (Hereinafter, translation is included without
limitation in the term "modification".) Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not covered by
this License; they are outside its scope. The act of running the Program is not
restricted, and the output from the Program is covered only if its contents
constitute a work based on the Program (independent of having been made by
running the Program). Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's source code as
you receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice and
disclaimer of warranty; keep intact all the notices that refer to this License
and to the absence of any warranty; and give any other recipients of the
Program a copy of this License along with the Program.

You may charge a fee for the physical act of transferring a copy, and you may
at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus
forming a work based on the Program, and copy and distribute such modifications
or work under the terms of Section 1 above, provided that you also meet all of
these conditions:

 a. You must cause the modified files to carry prominent notices stating that
    you changed the files and the date of any change.

 b. You must cause any work that you distribute or publish, that in whole or in
    part contains or is derived from the Program or any part thereof, to be
    licensed as a whole at no charge to all third parties under the terms of
    this License.

 c. If the modified program normally reads commands interactively when run, you
    must cause it, when started running for such interactive use in the most
    ordinary way, to print or display an announcement including an appropriate
    copyright notice and a notice that there is no warranty (or else, saying
    that you provide a warranty) and that users may redistribute the program
    under these conditions, and telling the user how to view a copy of this
    License. (Exception: if the Program itself is interactive but does not
    normally print such an announcement, your work based on the Program is not
    required to print an announcement.)

These requirements apply to the modified work as a whole. If identifiable
sections of that work are not derived from the Program, and can be reasonably
considered independent and separate works in themselves, then this License, and
its terms, do not apply to those sections when you distribute them as separate
works. But when you distribute the same sections as part of a whole which is a
work based on the Program, the distribution of the whole must be on the terms
of this License, whose permissions for other licensees extend to the entire
whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your
rights to work written entirely by you; rather, the intent is to exercise the
right to control the distribution of derivative or collective works based on
the Program.

In addition, mere aggregation of another work not based on the Program with the
Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this
License.

3. You may copy and distribute the Program (or a work based on it, under
Section 2) in object code or executable form under the terms of Sections 1 and
2 above provided that you also do one of the following:

 a. Accompany it with the complete corresponding machine-readable source code,
    which must be distributed under the terms of Sections 1 and 2 above on a
    medium customarily used for software interchange; or,

 b. Accompany it with a written offer, valid for at least three years, to give
    any third party, for a charge no more than your cost of physically
    performing source distribution, a complete machine-readable copy of the
    corresponding source code, to be distributed under the terms of Sections 1
    and 2 above on a medium customarily used for software interchange; or,

 c. Accompany it with the information you received as to the offer to
    distribute corresponding source code. (This alternative is allowed only for
    noncommercial distribution and only if you received the program in object
    code or executable form with such an offer, in accord with Subsection b
    above.)

The source code for a work means the preferred form of the work for making
modifications to it. For an executable work, complete source code means all the
source code for all modules it contains, plus any associated interface
definition files, plus the scripts used to control compilation and installation
of the executable. However, as a special exception, the source code distributed
need not include anything that is normally distributed (in either source or
binary form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component itself
accompanies the executable.

If distribution of executable or object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the source
code from the same place counts as distribution of the source code, even though
third parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as
expressly provided under this License. Any attempt otherwise to copy, modify,
sublicense or distribute the Program is void, and will automatically terminate
your rights under this License. However, parties who have received copies, or
rights, from you under this License will not have their licenses terminated so
long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it.
However, nothing else grants you permission to modify or distribute the Program
or its derivative works. These actions are prohibited by law if you do not
accept this License. Therefore, by modifying or distributing the Program (or
any work based on the Program), you indicate your acceptance of this License to
do so, and all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program),
the recipient automatically receives a license from the original licensor to
copy, distribute or modify the Program subject to these terms and conditions.
You may not impose any further restrictions on the recipients' exercise of the
rights granted herein. You are not responsible for enforcing compliance by
third parties to this License.

7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues), conditions
are imposed on you (whether by court order, agreement or otherwise) that
contradict the conditions of this License, they do not excuse you from the
conditions of this License. If you cannot distribute so as to satisfy
simultaneously your obligations under this License and any other pertinent
obligations, then as a consequence you may not distribute the Program at all.
For example, if a patent license would not permit royalty-free redistribution
of the Program by all those who receive copies directly or indirectly through
you, then the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply and
the section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or
other property right claims or to contest validity of any such claims; this
section has the sole purpose of protecting the integrity of the free software
distribution system, which is implemented by public license practices. Many
people have made generous contributions to the wide range of software
distributed through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing to
distribute software through any other system and a licensee cannot impose that
choice.

This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain
countries either by patents or by copyrighted interfaces, the original
copyright holder who places the Program under this License may add an explicit
geographical distribution limitation excluding those countries, so that
distribution is permitted only in or among countries not thus excluded. In such
case, this License incorporates the limitation as if written in the body of
this License.

9. The Free Software Foundation may publish revised and/or new versions of the
General Public License from time to time. Such new versions will be similar in
spirit to the present version, but may differ in detail to address new problems
or concerns.

Each version is given a distinguishing version number. If the Program specifies
a version number of this License which applies to it and "any later version",
you have the option of following the terms and conditions either of that
version or of any later version published by the Free Software Foundation. If
the Program does not specify a version number of this License, you may choose
any version ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs
whose distribution conditions are different, write to the author to ask for
permission. For software which is copyrighted by the Free Software Foundation,
write to the Free Software Foundation; we sometimes make exceptions for this.
Our decision will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing and reuse of
software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE
STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE
PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND
PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU
ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest possible
use to the public, the best way to achieve this is to make it free software
which everyone can redistribute and change under these terms.

To do so, attach the following notices to the program. It is safest to attach
them to the start of each source file to most effectively convey the exclusion
of warranty; and each file should have at least the "copyright" line and a
pointer to where the full notice is found.

one line to give the program's name and a brief idea of what it does.
Copyright (C) year  name of author

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this when it
starts in an interactive mode:

Gnomovision version 69, Copyright (C) year name of author
Gnomovision comes with absolutely no warranty; for details
type `show w'. This is free software, and you are welcome
to redistribute it under certain conditions; type `show c'
for details.

The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may be
called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items -- whatever suits your program.

You should also get your employer (if you work as a programmer) or your school,
if any, to sign a "copyright disclaimer" for the program, if necessary. Here is
a sample; alter the names:

Yoyodyne, Inc., hereby disclaims all copyright interest in the
program `Gnomovision' (which makes passes at compilers) written
by James Hacker.

signature of Ty Coon, 1 April 1989
Ty Coon, President of Vice

This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may consider
it more useful to permit linking proprietary applications with the library. If
this is what you want to do, use the GNU Lesser General Public License instead
of this License.

F.2. Licenza Pubblica Generica GNU

This is an unofficial translation of the GNU General Public License into
Italian. It was not published by the Free Software Foundation, and does not
legally state the distribution terms for software that uses the GNU GPL -- only
the original English text of the GNU GPL does that. However, we hope that this
translation will help Italian speakers to understand the GNU GPL better.

Questa è una traduzione italiana non ufficiale della Licenza Pubblica Generica
GNU. Non è pubblicata dalla Free Software Foundation e non ha valore legale
nell'esprimere i termini di distribuzione del software che usa la licenza GPL.
Solo la versione originale in inglese della licenza ha valore legale. Ad ogni
modo, speriamo che questa traduzione aiuti le persone di lingua italiana a
capire meglio il significato della licenza GPL.

Traduzione curata da gruppo Pluto, da ILS e dal gruppo italiano di traduzione
GNU. Ultimo aggiornamento 19 aprile 2000.

Versione 2, Giugno 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.

Chiunque può copiare e distribuire copie letterali di questo documento
di licenza, ma non ne è permessa la modifica.

Preambolo

Le licenze della maggior parte dei programmi hanno lo scopo di togliere
all'utente la libertà di condividere e modificare il programma stesso.
Viceversa, la Licenza Pubblica Generica GNU è intesa a garantire la libertà di
condividere e modificare il software libero, al fine di assicurare che i
programmi siano liberi per tutti i loro utenti. Questa Licenza si applica alla
maggioranza dei programmi della Free Software Foundation e ad ogni altro
programma i cui autori hanno deciso di usare questa Licenza. Alcuni altri
programmi della Free Software Foundation sono invece coperti dalla Licenza
Pubblica Generica Minore. Chiunque può usare questa Licenza per i propri
programmi.

Quando si parla di software libero (free software), ci si riferisce alla
libertà, non al prezzo. Le nostre Licenze (la GPL e la LGPL) sono progettate
per assicurarsi che ciascuno abbia la libertà di distribuire copie del software
libero (e farsi pagare per questo, se vuole), che ciascuno riceva il codice
sorgente o che lo possa ottenere se lo desidera, che ciascuno possa modificare
il programma o usarne delle parti in nuovi programmi liberi e che ciascuno
sappia di potere fare queste cose.

Per proteggere i diritti dell'utente, abbiamo bisogno di creare delle
restrizioni che vietino a chiunque di negare questi diritti o di chiedere di
rinunciarvi. Queste restrizioni si traducono in certe responsabilità per chi
distribuisce copie del software e per chi lo modifica.

Per esempio, chi distribuisce copie di un programma coperto da GPL, sia gratis
sia in cambio di un compenso, deve concedere ai destinatari tutti i diritti che
ha ricevuto. Deve anche assicurarsi che i destinatari ricevano o possano
ottenere il codice sorgente. E deve mostrar loro queste condizioni di licenza,
in modo che essi conoscano i propri diritti.

Proteggiamo i diritti dell'utente in due modi: (1) proteggendo il software con
un copyright, e (2) offrendo una licenza che dia il permesso legale di copiare,
distribuire e modificare il Programma.

Inoltre, per proteggere ogni autore e noi stessi, vogliamo assicurarci che
ognuno capisca che non ci sono garanzie per i programmi coperti da GPL. Se il
programma viene modificato da qualcun altro e ridistribuito, vogliamo che gli
acquirenti sappiano che ciò che hanno non è l'originale, in modo che ogni
problema introdotto da altri non si rifletta sulla reputazione degli autori
originari.

Infine, ogni programma libero è costantemente minacciato dai brevetti sui
programmi. Vogliamo evitare il pericolo che chi ridistribuisce un programma
libero ottenga la proprietà di brevetti, rendendo in pratica il programma cosa
di sua proprietà. Per prevenire questa evenienza, abbiamo chiarito che ogni
brevetto debba essere concesso in licenza d'uso a chiunque, o non avere alcuna
restrizione di licenza d'uso.

Seguono i termini e le condizioni precisi per la copia, la distribuzione e la
modifica.

LICENZA PUBBLICA GENERICA GNU

TERMINI E CONDIZIONI PER LA COPIA, LA DISTRIBUZIONE E LA MODIFICA

0. Questa Licenza si applica a ogni programma o altra opera che contenga una
nota da parte del detentore del copyright che dica che tale opera può essere
distribuita sotto i termini di questa Licenza Pubblica Generica. Il termine
«Programma» nel seguito si riferisce ad ogni programma o opera così definita, e
l'espressione «opera basata sul Programma» indica sia il Programma sia ogni
opera considerata «derivata» in base alla legge sul copyright; in altre parole,
un'opera contenente il Programma o una porzione di esso, sia letteralmente sia
modificato o tradotto in un'altra lingua. Da qui in avanti, la traduzione è in
ogni caso considerata una «modifica». Vengono ora elencati i diritti dei
beneficiari della licenza.

Attività diverse dalla copiatura, distribuzione e modifica non sono coperte da
questa Licenza e sono al di fuori della sua influenza. L'atto di eseguire il
Programma non viene limitato, e l'output del programma è coperto da questa
Licenza solo se il suo contenuto costituisce un'opera basata sul Programma
(indipendentemente dal fatto che sia stato creato eseguendo il Programma). In
base alla natura del Programma il suo output può essere o meno coperto da
questa Licenza.

1. È lecito copiare e distribuire copie letterali del codice sorgente del
Programma così come viene ricevuto, con qualsiasi mezzo, a condizione che venga
riprodotta chiaramente su ogni copia una appropriata nota di copyright e di
assenza di garanzia; che si mantengano intatti tutti i riferimenti a questa
Licenza e all'assenza di ogni garanzia; che si dia a ogni altro destinatario
del Programma una copia di questa Licenza insieme al Programma.

È possibile richiedere un pagamento per il trasferimento fisico di una copia
del Programma, è anche possibile a propria discrezione richiedere un pagamento
in cambio di una copertura assicurativa.

2. È lecito modificare la propria copia o copie del Programma, o parte di esso,
creando perciò un'opera basata sul Programma, e copiare o distribuire tali
modifiche o tale opera secondo i termini del precedente comma 1, a patto che
siano soddisfatte tutte le condizioni che seguono:

 a. Bisogna indicare chiaramente nei file che si tratta di copie modificate e
    la data di ogni modifica.

 b. Bisogna fare in modo che ogni opera distribuita o pubblicata, che in parte
    o nella sua totalità derivi dal Programma o da parti di esso, sia concessa
    nella sua interezza in licenza gratuita ad ogni terza parte, secondo i
    termini di questa Licenza.

 c. Se normalmente il programma modificato legge comandi interattivamente
    quando viene eseguito, bisogna fare in modo che all'inizio dell'esecuzione
    interattiva usuale, esso stampi un messaggio contenente una appropriata
    nota di copyright e di assenza di garanzia (oppure che specifichi il tipo
    di garanzia che si offre). Il messaggio deve inoltre specificare che
    chiunque può ridistribuire il programma alle condizioni qui descritte e
    deve indicare come reperire questa Licenza. Se però il programma di
    partenza è interattivo ma normalmente non stampa tale messaggio, non
    occorre che un'opera basata sul Programma lo stampi.

Questi requisiti si applicano all'opera modificata nel suo complesso. Se
sussistono parti identificabili dell'opera modificata che non siano derivate
dal Programma e che possono essere ragionevolmente considerate lavori
indipendenti, allora questa Licenza e i suoi termini non si applicano a queste
parti quando queste vengono distribuite separatamente. Se però queste parti
vengono distribuite all'interno di un prodotto che è un'opera basata sul
Programma, la distribuzione di quest'opera nella sua interezza deve avvenire
nei termini di questa Licenza, le cui norme nei confronti di altri utenti si
estendono all'opera nella sua interezza, e quindi ad ogni sua parte, chiunque
ne sia l'autore.

Quindi, non è nelle intenzioni di questa sezione accampare diritti, né
contestare diritti su opere scritte interamente da altri; l'intento è piuttosto
quello di esercitare il diritto di controllare la distribuzione di opere
derivati dal Programma o che lo contengano.

Inoltre, la semplice aggregazione di un'opera non derivata dal Programma col
Programma o con un'opera da esso derivata su di un mezzo di memorizzazione o di
distribuzione, non è sufficiente a includere l'opera non derivata nell'ambito
di questa Licenza.

3. È lecito copiare e distribuire il Programma (o un'opera basata su di esso,
come espresso al comma 2) sotto forma di codice oggetto o eseguibile secondo i
termini dei precedenti commi 1 e 2, a patto che si applichi una delle seguenti
condizioni:

 a. Il Programma sia corredato del codice sorgente completo, in una forma
    leggibile da calcolatore, e tale sorgente sia fornito secondo le regole dei
    precedenti commi 1 e 2 su di un mezzo comunemente usato per lo scambio di
    programmi.

 b. Il Programma sia accompagnato da un'offerta scritta, valida per almeno tre
    anni, di fornire a chiunque ne faccia richiesta una copia completa del
    codice sorgente, in una forma leggibile da calcolatore, in cambio di un
    compenso non superiore al costo del trasferimento fisico di tale copia, che
    deve essere fornita secondo le regole dei precedenti commi 1 e 2 su di un
    mezzo comunemente usato per lo scambio di programmi.

 c. Il Programma sia accompagnato dalle informazioni che sono state ricevute
    riguardo alla possibilità di ottenere il codice sorgente. Questa
    alternativa è permessa solo in caso di distribuzioni non commerciali e solo
    se il programma è stato ottenuto sotto forma di codice oggetto o eseguibile
    in accordo al precedente comma B.

Per «codice sorgente completo» di un'opera si intende la forma preferenziale
usata per modificare un'opera. Per un programma eseguibile, «codice sorgente
completo» significa tutto il codice sorgente di tutti i moduli in esso
contenuti, più ogni file associato che definisca le interfacce esterne del
programma, più gli script usati per controllare la compilazione e
l'installazione dell'eseguibile. In ogni caso non è necessario che il codice
sorgente fornito includa nulla che sia normalmente distribuito (in forma
sorgente o in formato binario) con i principali componenti del sistema
operativo sotto cui viene eseguito il Programma (compilatore, kernel, e così
via), a meno che tali componenti accompagnino l'eseguibile.

Se la distribuzione dell'eseguibile o del codice oggetto è effettuata indicando
un luogo dal quale sia possibile copiarlo, permettere la copia del codice
sorgente dallo stesso luogo è considerata una valida forma di distribuzione del
codice sorgente, anche se copiare il sorgente è facoltativo per l'acquirente.

4. Non è lecito copiare, modificare, sublicenziare, o distribuire il Programma
in modi diversi da quelli espressamente previsti da questa Licenza. Ogni
tentativo di copiare, modificare, sublicenziare o distribuire il Programma non
è autorizzato, e farà terminare automaticamente i diritti garantiti da questa
Licenza. D'altra parte ogni acquirente che abbia ricevuto copie, o diritti,
coperti da questa Licenza da parte di persone che violano la Licenza come qui
indicato non vedranno invalidata la loro Licenza, purché si comportino
conformemente ad essa.

5. L'acquirente non è tenuto ad accettare questa Licenza, poiché non l'ha
firmata. D'altra parte nessun altro documento garantisce il permesso di
modificare o distribuire il Programma o i lavori derivati da esso. Queste
azioni sono proibite dalla legge per chi non accetta questa Licenza; perciò,
modificando o distribuendo il Programma o un'opera basata sul programma, si
indica nel fare ciò l'accettazione di questa Licenza e quindi di tutti i suoi
termini e le condizioni poste sulla copia, la distribuzione e la modifica del
Programma o di lavori basati su di esso.

6. Ogni volta che il Programma o un'opera basata su di esso vengono
distribuiti, l'acquirente riceve automaticamente una licenza d'uso da parte del
licenziatario originale. Tale licenza regola la copia, la distribuzione e la
modifica del Programma secondo questi termini e queste condizioni. Non è lecito
imporre restrizioni ulteriori all'acquirente nel suo esercizio dei diritti qui
garantiti. Chi distribuisce programmi coperti da questa Licenza non è comunque
tenuto a imporre il rispetto di questa Licenza a terzi.

7. Se, come conseguenza del giudizio di un tribunale, o di una imputazione per
la violazione di un brevetto o per ogni altra ragione (non limitatamente a
questioni di brevetti), vengono imposte condizioni che contraddicono le
condizioni di questa licenza, che queste condizioni siano dettate dalla corte,
da accordi tra le parti o altro, queste condizioni non esimono nessuno
dall'osservazione di questa Licenza. Se non è possibile distribuire un prodotto
in un modo che soddisfi simultaneamente gli obblighi dettati da questa Licenza
e altri obblighi pertinenti, il prodotto non può essere affatto distribuito.
Per esempio, se un brevetto non permettesse a tutti quelli che lo ricevono di
ridistribuire il Programma senza obbligare al pagamento di diritti, allora
l'unico modo per soddisfare contemporaneamente il brevetto e questa Licenza e'
di non distribuire affatto il Programma.

Se una qualunque parte di questo comma è ritenuta non valida o non applicabile
in una qualunque circostanza, deve comunque essere applicata l'idea espressa da
questo comma; in ogni altra circostanza invece deve essere applicato questo
comma nel suo complesso.

Non è nelle finalità di questo comma indurre gli utenti ad infrangere alcun
brevetto né ogni altra rivendicazione di diritti di proprietà, né di contestare
la validità di alcuna di queste rivendicazioni; lo scopo di questo comma è
unicamente quello di proteggere l'integrità del sistema di distribuzione dei
programmi liberi, che viene realizzato tramite l'uso di licenze pubbliche.
Molte persone hanno contribuito generosamente alla vasta gamma di programmi
distribuiti attraverso questo sistema, basandosi sull'applicazione fedele di
tale sistema. L'autore/donatore può decidere di sua volontà se preferisce
distribuire il software avvalendosi di altri sistemi, e l'acquirente non può
imporre la scelta del sistema di distribuzione.

Questo comma serve a rendere il più chiaro possibile ciò che crediamo sia una
conseguenza del resto di questa Licenza.

8. Se in alcuni paesi la distribuzione o l'uso del Programma sono limitati da
brevetto o dall'uso di interfacce coperte da copyright, il detentore del
copyright originale che pone il Programma sotto questa Licenza può aggiungere
limiti geografici espliciti alla distribuzione, per escludere questi paesi
dalla distribuzione stessa, in modo che il programma possa essere distribuito
solo nei paesi non esclusi da questa regola. In questo caso i limiti geografici
sono inclusi in questa Licenza e ne fanno parte a tutti gli effetti.

9. All'occorrenza la Free Software Foundation può pubblicare revisioni o nuove
versioni di questa Licenza Pubblica Generica. Tali nuove versioni saranno
simili a questa nello spirito, ma potranno differire nei dettagli al fine di
coprire nuovi problemi e nuove situazioni.

Ad ogni versione viene dato un numero identificativo. Se il Programma asserisce
di essere coperto da una particolare versione di questa Licenza e «da ogni
versione successiva», l'acquirente può scegliere se seguire le condizioni della
versione specificata o di una successiva. Se il Programma non specifica quale
versione di questa Licenza deve applicarsi, l'acquirente può scegliere una
qualsiasi versione tra quelle pubblicate dalla Free Software Foundation.

10. Se si desidera incorporare parti del Programma in altri programmi liberi le
cui condizioni di distribuzione differiscano da queste, è possibile scrivere
all'autore del Programma per chiederne l'autorizzazione. Per il software il cui
copyright è detenuto dalla Free Software Foundation, si scriva alla Free
Software Foundation; talvolta facciamo eccezioni alle regole di questa Licenza.
La nostra decisione sarà guidata da due finalità: preservare la libertà di
tutti i prodotti derivati dal nostro software libero e promuovere la
condivisione e il riutilizzo del software in generale.

NON C'È GARANZIA

11. POICHÉ IL PROGRAMMA È CONCESSO IN USO GRATUITAMENTE, NON C'È GARANZIA PER
IL PROGRAMMA, NEI LIMITI PERMESSI DALLE VIGENTI LEGGI. SE NON INDICATO
DIVERSAMENTE PER ISCRITTO, IL DETENTORE DEL COPYRIGHT E LE ALTRE PARTI
FORNISCONO IL PROGRAMMA «COSÌ COM'È», SENZA ALCUN TIPO DI GARANZIA, NÉ
ESPLICITA NÉ IMPLICITA; CIÒ COMPRENDE, SENZA LIMITARSI A QUESTO, LA GARANZIA
IMPLICITA DI COMMERCIABILITÀ E UTILIZZABILITÀ PER UN PARTICOLARE SCOPO.
L'INTERO RISCHIO CONCERNENTE LA QUALITÀ E LE PRESTAZIONI DEL PROGRAMMA È
DELL'ACQUIRENTE. SE IL PROGRAMMA DOVESSE RIVELARSI DIFETTOSO, L'ACQUIRENTE SI
ASSUME IL COSTO DI OGNI MANUTENZIONE, RIPARAZIONE O CORREZIONE NECESSARIA.

12. NÉ IL DETENTORE DEL COPYRIGHT NÉ ALTRE PARTI CHE POSSONO MODIFICARE O
RIDISTRIBUIRE IL PROGRAMMA COME PERMESSO IN QUESTA LICENZA SONO RESPONSABILI
PER DANNI NEI CONFRONTI DELL'ACQUIRENTE, A MENO CHE QUESTO NON SIA RICHIESTO
DALLE LEGGI VIGENTI O APPAIA IN UN ACCORDO SCRITTO. SONO INCLUSI DANNI
GENERICI, SPECIALI O INCIDENTALI, COME PURE I DANNI CHE CONSEGUONO DALL'USO O
DALL'IMPOSSIBILITÀ DI USARE IL PROGRAMMA; CIÒ COMPRENDE, SENZA LIMITARSI A
QUESTO, LA PERDITA DI DATI, LA CORRUZIONE DEI DATI, LE PERDITE SOSTENUTE
DALL'ACQUIRENTE O DA TERZI E L'INCAPACITÀ DEL PROGRAMMA A INTERAGIRE CON ALTRI
PROGRAMMI, ANCHE SE IL DETENTORE O ALTRE PARTI SONO STATE AVVISATE DELLA
POSSIBILITÀ DI QUESTI DANNI.

FINE DEI TERMINI E DELLE CONDIZIONI

Come applicare questi termini a nuovi programmi

Se si sviluppa un nuovo programma e lo si vuole rendere della maggiore utilità
possibile per il pubblico, la cosa migliore da fare è rendere tale programma
libero, cosicché ciascuno possa ridistribuirlo e modificarlo sotto questi
termini.

Per fare questo, si inserisca nel programma la seguente nota. La cosa migliore
da fare è mettere la nota all'inizio di ogni file sorgente, per chiarire nel
modo più efficiente possibile l'assenza di garanzia; ogni file dovrebbe
contenere almeno la nota di copyright e l'indicazione di dove trovare l'intera
nota.

una riga per dire in breve il nome del programma e cosa fa
Copyright (C) anno  nome dell'autore

Questo  programma è  software  libero; è  lecito redistribuirlo  o
modificarlo secondo i termini  della Licenza Pubblica Generica GNU
come è pubblicata dalla Free  Software Foundation; o la versione 2
della licenza o (a propria scelta) una versione successiva.

Questo programma  è distribuito nella  speranza che sia  utile, ma
SENZA  ALCUNA GARANZIA;  senza  neppure la  garanzia implicita  di
NEGOZIABILITÀ  o di  APPLICABILITÀ PER  UN PARTICOLARE  SCOPO.  Si
veda la Licenza Pubblica Generica GNU per avere maggiori dettagli.

Questo  programma deve  essere  distribuito assieme  ad una  copia
della Licenza Pubblica Generica GNU;  in caso contrario, se ne può
ottenere  una scrivendo  alla Free  Software Foundation,  Inc., 51
Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Si aggiungano anche informazioni su come si può essere contattati tramite posta
elettronica e cartacea.

Se il programma è interattivo, si faccia in modo che stampi una breve nota
simile a questa quando viene usato interattivamente:

Orcaloca versione 69, Copyright (C) anno  nome dell'autore
Orcaloca non ha ALCUNA GARANZIA; per dettagli usare il comando show g.
Questo è software libero, e ognuno è libero di redistribuirlo secondo
certe condizioni; usare il comando show c per i dettagli.

Gli ipotetici comandi show g e show c mostreranno le parti appropriate della
Licenza Pubblica Generica. Chiaramente, i comandi usati possono essere chiamati
diversamente da show g e show c e possono anche essere selezionati con il mouse
o attraverso un menu, o comunque sia pertinente al programma.

Se necessario, si deve anche far firmare al proprio datore di lavoro (per chi
lavora come programmatore) o alla propria scuola, per chi è studente, una
«rinuncia al copyright» per il programma. Ecco un esempio con nomi fittizi:

Yoyodinamica SPA rinuncia con  questo documento ad ogni diritto sul
copyright  del  programma  «Orcaloca»  (che  svolge  dei  passi  di
compilazione) scritto da Giovanni Smanettone.

firma di Primo Tizio, 1 aprile 1989
Primo Tizio, Presidente

I programmi coperti da questa Licenza Pubblica Generica non possono essere
incorporati all'interno di programmi proprietari. Se il proprio programma è una
libreria di funzioni, può essere più utile permettere di collegare applicazioni
proprietarie alla libreria. Se si ha questa intenzione consigliamo di usare la
Licenza Pubblica Generica Minore GNU (LGPL) invece di questa Licenza.