Capitolo successivo Capitolo precedente Indice

3. Installare Linux

L'installazione di Linux è difficile quanto lo è installare un nuovo sistema operativo, ovvero, così come dover accettare il fatto che non si possono utilizzare i consueti strumenti cui si era abituati da tanto tempo. In questo capitolo si fa riferimento all'installazione di Linux in un PC (i386 o superiore) partendo da strumenti Dos.

3.1 Inventario dell'hardware

Prima di installare qualunque sistema operativo, è sempre necessario raccogliere tutte le informazioni che si riescono ad avere sull'hardware installato. Le tabelle (seguente), (seguente) e (seguente) mostrano l'utilizzo più comune delle risorse da parte dei componenti più diffusi. Questo tipo di inventario, serve anche per determinare quali siano le risorse disponibili nel momento in cui si vuole aggiungere un nuovo componente.


IRQ Riservato Standard Eventuale
0 Timer
1 Tastiera
2/9 LPT3
3 COM2 COM4
4 COM1 COM3
5 LPT2
6 Controller dei dischetti
7 LPT1
8 Orologio
10
11
12 Mouse PS/2
13 Coprocessore matematico
14 Controller IDE
15
Utilizzo comune degli indirizzi di IRQ.


Indirizzo esadecimale Utilizzo normale
da 0x200 a 0x20f
da 0x210 a 0x21f
da 0x220 a 0x22f
da 0x230 a 0x23f
da 0x240 a 0x24f
da 0x250 a 0x25f
da 0x260 a 0x26f
da 0x270 a 0x27f LPT
da 0x280 a 0x28f
da 0x290 a 0x29f
da 0x2a0 a 0x2af
da 0x2b0 a 0x2bf
da 0x2c0 a 0x2cf
da 0x2d0 a 0x2df
da 0x2e0 a 0x2ef COM4
da 0x2f0 a 0x2ff COM2
da 0x300 a 0x30f Ethernet NE2000
da 0x310 a 0x31f Ethernet NE2000
da 0x320 a 0x32f
da 0x330 a 0x33f
da 0x340 a 0x34f
da 0x350 a 0x35f
da 0x360 a 0x36f
da 0x370 a 0x37f LPT
da 0x380 a 0x38f
da 0x390 a 0x39f
da 0x3a0 a 0x3af
da 0x3b0 a 0x3bf LPT
da 0x3c0 a 0x3cf EGA/VGA
da 0x3d0 a 0x3df CGA/EGA/VGA nelle modalità video a colori
da 0x3e0 a 0x3ef COM3
da 0x3f0 a 0x3ff COM1, Controller dischetti, Controller IDE
Utilizzo comune degli indirizzi di comunicazione.


Canale DMA Utilizzo normale
1
2 Controller dischetti
3
4 Controller DMA
Utilizzo comune dei canali DMA.

<!>   Quando si utilizzano schede a 8 bit (quelle che utilizzano solo la prima parte di uno slot ISA) si possono usare solo gli indirizzi di IRQ inferiori a 10.

Il caso delle porte parallele è un po' particolare: Il sistema operativo Dos assegna i nomi LPT1, LPT2 e LPT3 in base a una ricerca tra i possibili indirizzi di I/O. Vengono scanditi gli indirizzi 0x3bc, 0x378 e 0x278. La prima porta a essere individuata diventa LPT1 e così di seguito.

3.2 Preparazione

Prima di poter installare Linux occorre che il computer che dovrà accoglierlo sia pronto. Se è già stato installato il Dos con o senza MS-Windows, vale forse la pena di conservarlo fino a quando si sarà diventati completamente indipendenti da quell'ambiente.

Ext2 e UMSDOS

Quando si installa Linux, per quanto riguarda la destinazione, si hanno in pratica due possibilità fondamentali: l'utilizzo di un filesystem ext2 in una partizione dedicata, o l'utilizzo di un filesystem UMSDOS che consente di condividere un filesystem Dos FAT preesistente senza alterare i dati in esso contenuti.

La prima delle due soluzioni è la più impegnativa, ma anche la migliore dal punto di vista tecnico: richiede la preparazione di una partizione da dedicare a Linux. La seconda è invece la soluzione più frettolosa e adatta a chi non vuole impegnarsi troppo con Linux: viene creata una directory C:\LINUX dalla quale si dirama una struttura di directory (e file) che pur rispettando le regole dei nomi ``8.3'' del Dos viene poi correttamente gestita e riconosciuta da Linux. Quest'ultima soluzione, dal momento che non richiede la preparazione di una partizione dedicata a Linux, potrebbe sembrare l'ideale per tutti. In realtà lo è solo per chi vuole vedere come funziona Linux, e non per chi lo vuole utilizzare veramente.

Personalmente, ho dovuto fare la brutta esperienza di perdere tutti i dati a causa di un banale spegnimento accidentale: si sono alterate le informazioni contenute nell'MBR, Master Boot Record.

3.3 Predisposizione di una partizione per Linux

Se si decide di prendere Linux sul serio, è necessario predisporre una partizione tutta per lui, togliendo spazio a quanto installato in precedenza nel disco fisso. Per essere sicuri di non perdere i dati, occorre ovviamente cominciare dalla preparazione di una copia di sicurezza.

Copie di sicurezza

Ci sono vari modi di fare una copia di sicurezza dei dati del proprio disco fisso. Quello che bisogna ricordare è che non basta la copia dei dati, occorre anche la possibilità di avviare il sistema in modo da poter ricaricare quei dati salvati. Serve quindi un dischetto di avvio del sistema con le utility necessarie. Si presume che ognuno sappia come fare per ripristinare il proprio sistema operativo.

Ridurre la partizione esistente

Per ridurre la dimensione di una partizione FAT esistente si possono utilizzare i programmi seguenti, funzionanti in Dos.

Per poter ridurre la dimensione di una partizione è necessario che la quantità di dati in essa contenuta non sia troppo elevata, e soprattutto, che ci sia dello spazio vuoto proprio nella parte finale della partizione. Di solito, si risolve il problema con un programma di deframmentazione che si occupa anche di compattare i dati nella parte superiore (iniziale) della partizione.

<!>   Tutto questo non è necessario se si intende installare Linux in una partizione FAT esistente attraverso l'uso di un filesystem UMSDOS.

3.4 Nomi dei dispositivi delle unità di memorizzazione

Linux utilizza dei nomi di dispositivo ben ordinati che però possono confondere chi proviene dall'esperienza Dos. La tabella (seguente) mostra l'elenco di alcuni nomi di dispositivo riferiti ad unità di memorizzazione.


Nome Descrizione Dos
/dev/fd0 prima unità a dischetti A:
/dev/fd0H1440 prima unità a dischetti da 1440KB A:
/dev/fd1 seconda unità a dischetti B:
/dev/fd1H1440 seconda unità a dischetti da 1440KB B:
/dev/hda primo disco fisso IDE/EIDE
/dev/hdb secondo disco fisso (o CD-ROM) IDE/EIDE
/dev/hdc terzo disco fisso (o CD-ROM) EIDE
/dev/hdd quarto disco fisso (o CD-ROM) EIDE
/dev/sda primo disco SCSI
/dev/sdb secondo disco SCSI
/dev/sdc terzo disco SCSI
...
Elenco dei nomi di dispositivo utilizzati per le unità di memorizzazione.

I dischi che non rientrano nella categoria dei floppy, sono suddivisi in partizioni e per fare riferimento a queste si aggiunge un numero alla fine del nome di dispositivo. Per esempio, /dev/hda1 è la prima partizione del primo disco IDE, /dev/sda2 è la seconda partizione del primo disco SCSI.

3.5 Preparazione dei dischetti di partenza

Prima di iniziare l'installazione di una qualsiasi distribuzione Linux, occorre avere un modo di avviare il programma di installazione. Di solito si ha la necessità di riprodurre uno o più dischetti che permettono di avviare un mini sistema Linux contenente ciò che serve per questo scopo.

Questi dischetti sono normalmente distribuiti in forma di file-immagine che deve essere ricopiato sopra un dischetto già inizializzato.

Se si utilizza il Dos, si ottiene la riproduzione di un dischetto, a partire dalla sua immagine, con il programma RAWRITE.EXE. Si osservi l'esempio seguente in cui si riproduce un dischetto a partire dall'immagine AVVIO.IMG.

C:> RAWRITE AVVIO.IMG A:

Se si ha a disposizione un sistema Linux da qualche parte, si possono utilizzare due modi diversi. Si osservino gli esempi seguenti in cui si riproduce un dischetto da 1440KB a partire dall'immagine avvio.img.

# cp avvio.img /dev/fd0

# dd if=avvio.img of=/dev/fd0 bs=1440k

3.6 Partizioni e filesystem

Linux può essere installato su una sola partizione oppure può essere distribuito in più di una di queste. In aggiunta a questo problema, nella maggior parte dei casi ci si deve prendere cura di creare una partizione da dedicare alla memoria virtuale: swap.

Partizione di swap

Quasi sempre, conviene installare Linux predisponendo uno spazio nel disco fisso per lo swap ovvero per la memoria virtuale. Con Linux, si definisce preferibilmente lo spazio della memoria virtuale all'interno di una o più partizioni specifiche per questo scopo: le partizioni di swap. La dimensione massima di queste partizioni è di 128MB e possono esserne definite un massimo di 16. In generale è conveniente utilizzare una dimensione pari ad almeno la stessa dimensione della memoria RAM effettiva, con un minimo di circa 10MB.

Dischi di grandi dimensioni

Quando si utilizzano dischi IDE di grandi dimensioni si può porre il problema della posizione in cui si trova il kernel e gli altri file utilizzati per l'avvio. Questi devono trovarsi fisicamente entro il cilindro 1024, e ciò a causa delle limitazioni del BIOS dei PC. Se una partizione termina oltre questo limite, non ci può essere la certezza che questi file si trovino prima di quel punto.

Per evitare dubbi, è possibile creare una partizione apposita, solo per i file utilizzati per l'avvio (di solito si tratta di tutto ciò che è contenuto nella directory /boot/), residente fisicamente prima del 1024-esimo cilindro.

Suddivisione del filesystem su più partizioni

Il filesystem di Linux, così come accade per gli altri sistemi Unix può essere scomposto in più parti residenti fisicamente in partizioni diverse unite assieme attraverso varie operazioni di mount. Questo tipo di scomposizione è normalmente sensato solo se queste partizioni corrispondono in pratica a dischi differenti.

Ci possono essere diverse buone ragioni per fare questo, in particolare le seguenti:

Segue un elenco delle possibilità tipiche di scomposizione di un filesystem Linux. L'argomento è trattato anche nel capitolo `Gerarchia del filesystem'.

Partizione principale

La partizione principale deve contenere la directory root (/). Quando non si scompone il filesystem, si tratta dell'unica partizione.

Partizione dedicata ai programmi

La maggior parte del software viene collocato al di sotto della directory /usr/ ed il suo contenuto viene spesso posto in un'altra partizione.

Partizione dedicata agli utenti

Quando un sistema è multiutente, il contenuto della directory /home/ può diventare molto grande. In questo caso, può convenire di far risiedere quanto discende da questa directory, in un'altra partizione.

In aggiunta a questi casi fondamentali, si possono valutare anche le possibilità seguenti.

Partizione per i file temporanei

Tutti i sistemi Unix utilizzano la directory /tmp/ come contenitore generico di file a uso temporaneo. In un sistema multiutente, l'attività all'interno di questa directory potrebbe essere piuttosto intensa. In tal caso, può convenire di far risiedere il suo contenuto altrove in modo da alleggerire l'attività del disco contenente la partizione principale.

Partizione per i sorgenti

I sorgenti delle applicazioni risiedono solitamente nella directory /usr/src/. Se si intende gestire una grande quantità i sorgenti, può convenire di utilizzare una partizione dedicata a questo scopo.

Partizione per i programmi e i file locali

Per convenzione, un filesystem Linux, dovrebbe riservare la directory /usr/local/ per quei programmi e quei file riservati all'ambito locale. L'estensione di questo ambito dipende dalle circostanze. In generale, la directory /usr/, potrebbe risiedere in una partizione accessibile in sola lettura (come nel caso di un CD-ROM o un server di rete - NFS). La directory /usr/local/ potrebbe risiedere altrove in modo da permettere l'installazione di programmi particolari a uso di quella particolare macchina o di quella particolare sottorete. Di solito, si estende il concetto e si intende che questa directory sia il luogo più adatto all'installazione di quei programmi che non fanno parte di quella particolare distribuzione Linux che si utilizza.

3.7 Strumenti di uso generale

L'installazione di una distribuzione Linux può essere preceduta da una preparazione delle partizioni attraverso dischetti di emergenza dotati di un minimo set di programmi essenziali. La distribuzione Slackware è quella che offre un numero abbastanza ampio di dischetti di questo tipo, e questo fatto deve essere tenuto a mente anche se si intende utilizzare una distribuzione differente.

In generale conviene leggere la parte iniziale del capitolo `Installazione di una distribuzione Slackware' fino alla sezione `Setup nella prima installazione' per avere una idea del meccanismo.

 

1997.10.26 - Scritto da Daniele Giacomini   daniele@calion.com   (vedi copyright: Appunti Linux).


Capitolo successivo Capitolo precedente Indice