Guida Linux: installazione

8.1 Premessa

Il primo passo necessario per poter usare Linux e' ovviamente la sua installazione nella nostra macchina. Questa operazione richiede alcune conoscenze tecniche che l'utente medio non possiede, ma non occorre diventare dei guru informatici per poter installare una distribuzione Linux. Prima di tutto occorre dire che tali conoscenze sono necessarie anche se si desidera installare un sistema Windows. Windows non e' piu' facile da installare rispetto a Linux, ma e' semplicemente gia' installato sul nostro PC appena acquistato! Chi ci ha venduto il PC ha fatto tutto il lavoro per noi, ma se dovessimo decidere di cambiare sistema operativo, sia esso Linux o Windows, dovremmo conoscere necessariamente alcuni dettagli tecnici. Ormai le distribuzioni Linux sono diventate facilissime da installare e, una volta inserito il CD-Rom, dovremo solo rispondere ad alcune semplici domande, il resto del lavoro lo fara' il programma di installazione. Pertanto potremmo installare tutto senza possedere alcuna conoscenza informatica. Nonostante cio' di seguito verranno illustrati molti dettagli tecnici, unicamente allo scopo di fornire una base di conoscenza a cui poter attingere in caso qualcosa vada storto. Chiarito cio', vediamo come installare una distribuzione Linux sul nostro PC.

8.2 Scelta della distribuzione

Prima di smanettare sul nostro PC occorre ovviamente possedere il sistema operativo da installare. Occorre cioe' scegliere una distribuzione Linux che fa al caso nostro. Esistono molte distribuzioni ed ognuna di loro ha un processo di installazione leggermente diverso, pertanto analizzeremo le fasi generali della installazione di una distribuzione Linux ipotetica qualsiasi, senza entrare nei dettagli specifici di questa o di quella distribuzione. Per maggiori informazioni sulle distribuzioni esistenti e sulle loro caratteristiche, consultare la pagina distribuzioni.

8.3 Linux: dove lo metto? Lo spazio su disco

Ora che possediamo la nostra distribuzione Linux nuova fiammante, dobbiamo copiarla sul disco fisso del nostro PC. Abbiamo 3 possibilita':

  1. Installare solo Linux sull' unico disco fisso che il nostro PC possiede
  2. Far convivere Linux e Windows sullo stesso disco fisso
  3. Installare Linux su un disco fisso e Windows su un altro disco fisso (il nostro PC ha 2 o piu' dischi fissi)

Non vengono analizzati casi con altri sistemi operativi come DOS OS2 o MacOS, in quanto i casi sopra elencati sono quelli piu' probabili, ma le informazioni che seguono sono delle linee guida generali che valgono sempre, indipendentemente dai sistemi operativi che si stanno usando. Non siamo di parte e schierati a favore del 'consorzio' Wintel quindi, ma solo consapevoli che il 90% del mercato PC (escludendo il mercato server) e' occupato da tale consorzio. Si parla quindi di piattaforme Windows su Intel (i Macintoshiani non me ne vogliano). Ma torniamo ai casi in esame. Il primo caso e' quello piu' semplice, il secondo un po' meno ed il terzo richiede un piccolo trucco per ingannare Windows. Partendo dal caso piu' semplice, vediamo come creare sul disco lo spazio necessario per poter ospitare il nostro sistema operativo. Immaginiamo il nostro disco fisso come una grossa torta. Cosa occorre fare con una torta prima di poterla assaggiare? Occorre tagliarla a fette! La stessa cosa e' vera per il nostro disco fisso, nel senso che occorre tagliarlo logicamente a fette prima di poterlo usare. Occorre cioe' suddividerlo in blocchi logicamente e fisicamente isolati tra loro. Questi blocchi vengono chiamati partizioni. Il processo di suddivisione del disco fisso in partizioni viene definito partizionamento del disco fisso. Per partizionare un disco fisso ci sono dei programmi appositi come ad esempio Partition Magic o Fdisk. Il primo e' un programma commerciale ed e' molto semplice da usare, il secondo e' un utility del DOS e di Linux che solitamente si trova anche nella distribuzione da installare. Consiglio l'uso del secondo anche se meno semplice rispetto a Partition Magic. Esiste poi un altro programma, FIPS per restringere alcune partizioni in modo da aumentare lo spazio libero. Ogni partizione sotto DOS e sotto Windows e' identificata da una lettera dell'alfabeto. Originariamente, i primi PC non possedevano un disco fisso interno, ma solo una o piu' fessure dove poter inserire dei floppy disk da 5,25 pollici identificati dalle lettere A per la prima fessura e dalla lettera B per l'eventuale seconda fessura. Tali fessure in realta' si chiamano drive, e sono identificati da una lettera dell'alfabeto maiuscola seguita dal simbolo ':' (due punti). Il primo drive quindi e' A:, il secondo B:. Successivamente venne inventato il disco fisso, che prese quindi il nome di drive C:. Se inseriamo un secondo disco fisso nel nostro PC, questo prendera' il nome di drive D: un terzo disco sara' E: e cosi' via. Anche altre unita' di memorizzazione hanno una lettera diversa, pertanto se aggiungiamo un lettore di CD Rom, questo acquisira' il nome di drive D:. Un PC con due dischi fissi ed un CD Rom ad esempio, avra' i drive A: per il floppy disk, C: e D: per i 2 dischi ed E: per il CD Rom. B: non esiste piu' in quanto ormai i PC vengono costruiti con un solo floppy disk drive cioe' con una sola fessura per poter inserire dei dischetti (floppy disk, che tra l'altro ora sono piu' piccoli, cioe' da 3,5 e non da 5,25 pollici e non sono piu' 'floppy', cioe' flessibili ma sono rigidi). Probabilmente presto spariranno anche i floppy disk e quindi anche il drive A:, ma questa e' un altra storia. In pratica non appena si aggiunge una nuova unita' di memorizzazione dati, questa prende il nome di drive X:, dove X e' la lettera dell'alfabeto successiva all'ultima utilizzata. Ma se possediamo un solo disco fisso (drive C:) ed intendiamo suddividerlo in partizioni, e' come se aggiungessimo altre unita', pertanto ogni partizione prendera' il nome di drive X: dove X e' una lettera dell'alfabeto utilizzata. Un disco suddiviso in 2 partizioni avra' quindi le partizioni C: e D:. Se lo suddividiamo in 3 partizioni, queste si chiameranno C:, D: ed E:. 4 partizioni saranno: C:, D:, E: ed F:. E cosi' via. Queste partizioni vengono anche definite unita' logiche, in quanto in realta' non sono dei dischi fisici diversi, ma e' lo stesso disco che viene suddiviso in unita' fittizie, cioe' di tipo logico. Le unita' fisiche invece sono delle vere e proprie unita' di memorizzazione diverse, cioe' dei dischi aggiuntivi, dei CD Rom, dei masterizzatori, delle unita' ZIP etc. Un disco fisso, prima di poter essere utilizzato deve essere necessariamente partizionato, deve possedere cioe' almeno una partizione logica. Se il disco non viene diviso a fette ma e' composto da una unica grossa fetta, allora avra' una sola partizione (C:). L'assegnazione delle lettere dell'alfabeto alle unita' in realta' non segue una progressione logica costante, in quanto un particolare algoritmo si occupa di assegnare le lettere alle varie unita'. Se si effettuano operazioni strane (tipo non caricare i driver di un CD-Rom) la sequenza delle lettere potrebbe avere un andamento bizzarro. Ma non dobbiamo preoccuparci di cio' al momento. Sotto Linux invece i dischi e le partizioni vengono chiamati diversamente. Vengono usate 3 lettere ed un numero. Le prime 2 lettere identificano il tipo di unita': FD per floppy disk ed HD per hard disk ed SD per dischi di tipo scsi. La terza lettera e' il numero dell'unita', pertanto in un PC con un solo disco, tale disco sara' A, mentre in un PC con 2 dischi ci saranno le unita' A e B (A il primo disco e B il secondo disco). Infine e' presente una cifra che identifica il numero della partizione all'interno di un dato disco fisico. Un PC con un solo disco fisso e due partizioni ad esempio, si chiamera' hda, e le due partizioni si chiameranno hda1 e hda2. Se a questo PC aggiungiamo un secondo disco fisso, questo si chiamera' hdb e la sua prima partizione sara' hdb1, la seconda hdb2, la terza hdb3 e cosi' via. Sotto Linux anche i CD Rom vengono visti come dei dischi fissi, pertanto in un PC con un disco fisso ed un CD Rom, il disco sara' hda mentre il CD Rom sara' hdb ed il floppy disk fd0 (se ci sono piu' unita' floppy disk i successivi dischetti si chiameranno fd1, fd2 e cosi' via). Prima di partizionare o formattare un disco occorre aver preventivamente salvato tutti i dati in esso registrati da qualche parte. Il salvataggio dei dati viene definito backup, mentre il ripristino di tali dati salvati viene definito restore. E' possibile salvare i dati (cioe' farne il backup) di un disco su un qualsiasi supporto di memorizzazione dati capace di contenerli. Ad esempio si possono salvare in un altro disco, in uno o piu' CD Rom, in altri supporti come le unita ZIP o DITTO, altre unita' di tipo ottico e via dicendo. In teoria sarebbe anche possibile salvare i dati su floppy disk, ma occorre sapere che per salvare 1 Gigabyte di dati contenuti in un disco fisso occorrono piu' di 700 dischetti, in quanto un Giga equivale circa a 1.000.000.000 di byte, mentre un floppy disk contiene circa 1.400.000 byte (1.000.000.000 / 1.400.000 = 715)! Forse e' il caso di utilizzare un masterizzatore e salvare tutto su CD Rom... ;o)

8.4 Esame dei componenti hardware

Come gia' detto, attualmente le distribuzioni Linux sono diventate tutte molto facili da installare, ed in genere la procedura di installazione non e' piu' complessa di quella usata dai sistemi Windows. Qualche anno fa le distribuzioni erano molto piu' ostiche per un utente alle prime armi. Ricordo ancora la prima distribuzione che installai anni fa, una mitica Slackware 1.2.3...affascinante ma assai ostica. La partenza del sistema (boot) avveniva da floppy disk e la semplice lettura del CD-Rom contenente la distribuzione era un grosso problema. Allora Linux era completamente testuale, nel senso che occorreva digitare alla tastiera tutti i comandi. Non esistevano finestre da aprire, icone da cliccare e, se proprio si desiderava una interfaccia grafica simile ai sistemi Windows, occorreva scaricare i programmi del sistema X-Windows. Inutile dire che per installare X-Windows occorreva rispondere a video ad una interminabile serie di domande sul monitor usato, sulla risoluzione supportata, sul refresh orizzontale/verticale etc..Allora molti componenti hardware non erano supportati e ogni cosa sotto Linux era problematica. Fornire un refresh rate orizzontale/verticale del monitor errato, poteva significarne anche la distruzione irreversibile! Oggi non e' piu' cosi', nel senso che si puo' perfettamente ignorare l'esistenza di una frequenza di refresh del nostro monitor, in quanto Linux ormai riesce a rilevare da solo i componenti hardware che sono assemblati nel nostro PC (allo stesso modo di Windows). Nonostante cio' pero', e' importante conoscere alcuni dettagli dei componenti hardware che abbiamo, se non altro per riuscire a far fronte ad eventuali problemi futuri che si potrebbero presentare. Le informazioni di ogni componente hardware assemblato che ci servono sono: il tipo di componente (monitor, stampante, mouse, scheda video etc.), la casa costruttrice (Philips, Hewlett-Packard, Logitech, Matrox etc.), il modello e alcune caratteristiche tecniche. Ecco ad esempio le componenti hardware di un ipotetico PC:

CPU:Intel Pentium III 551 Mhz
SCHEDA MADRE: Abit VT6X4 Apollo pro/133
MEMORIA RAM: 512 Mb 133 Mhz
MONITOR: Philips 107/G
SCHEDA VIDEO: Matrox millennium G400
DISCO FISSO: Quantum fireball LM15 13 Gb
CD-ROM:LG lite-on LTR 24102-B
FLOPPY DISK:Nec generico 1,4 Kb
TASTIERA:standard italiana 101/102 tasti
MOUSE:Trust ami mouse 2505 mini optical wireless USB
SCHEDA AUDIO:Creative soundblaster 128 PCI
STAMPANTE:Fujistu printpartner 10V

Queste sono le informazioni minime che occorre conoscere del nostro PC. Per reperire queste informazioni e' possibile leggere i manuali dei vari componenti, e' possibile consultare il BIOS, e' possibile consultare Windows ed infine e' possibile usare dei programmi ad hoc che analizzano i componenti hardware assemblati ed elencano tutte le informazioni reperite in un archivio formattato che e' possibile consultare o stampare. Per consultare le informazioni fornite dal BIOS occorre spegnere il PC e riaccenderlo. Mentre il PC sta ripartendo, prima che compaia la schermata di Windows (fase di Power-On Self-Test, POST), occorre premere il tasto DEL (o CANC se si ha una tastiera italiana) se si dispone di un BIOS Award (il tipo piu' comune). Se si dispone di un BIOS diverso il tasto da premere puo' essere diverso. In genere quando si accende il PC il sistema comunica all'utente quale tasto usare per entrare nel menu di configurazione del BIOS con un messaggio a video (es: 'press del to enter setup' o qualcosa di simile). Ecco un elenco di BIOS diversi e dei relativi tasti da provare per accedere ai rispettivi menu di configurazione:

Acer notebooks: F2
American Megatrends (AMI): CANC (o DEL)
Award: CANC (o DEL)
Compaq: F10
Dell: CTRL-ALT-INVIO
DTK: ESC
IBM Aptiva 535: F1
IBM PS/2: CTRL-ALT-CANC, poi CTRL-ALT-INS
Mr. BIOS: CTRL-ALT-S
Packard Bell: F1 o F2
Phoenix: CTRL-ALT-ESC, or CTRL-ALT-S, o CTRL-ALT-ENTER

Una volta entrati nei menu di configurazione del BIOS, appariranno delle schermate azzurre che e' possibile consultare (se non si sa cosa si sta facendo, ricordarsi di uscire senza salvare). Per consultare Windows invece, occorre cliccare sull'icona RISORSE DEL COMPUTER presente sul desktop (il desktop e' la scrivania di Windows, cioe' lo sfondo dove sono presenti le varie icone). Apparira' una finestra contenente alcune icone. Cliccare sull'icona PANNELLO DI CONTROLLO. Cliccare poi sull'icona SISTEMA. Selezionare GESTIONE PERIFERICHE nel menu che si presenta. Appariranno una serie di icone raffiguranti i vari componenti hardware presenti nel nostro PC. Espandere le varie icone cliccando sul simbolo ' ', e selezionare i vari componenti. Per ogni componente selezionato cliccare sul bottone PROPRIETA'. Selezionando i vari componenti, si otterranno le varie informazioni che ci occorrono. Infine e' possibile usare un programma diagnostico creato ad hoc, per ottenere tutte le informazioni che servono. Esistono vari programmi, alcuni gratuiti, alcuni shareware ed altri commerciali. Sono programmi che funzionano in ambiente DOS o Windows. Purtroppo i programmi gratuiti che ho visto in giro non sono all'altezza dei rispettivi programmi shareware o commerciali. Tra i vari programmi provati, menzionerei in particolare: IDE Diag v.0.5 di Martin Hinner (http://www.penguin.cz/~mhi/idediag/) e SANDRA standard 2002.6.8.97 della SiSoftware (http://www.sisoftware.co.uk/sandra o http://www.sisoftware.demon.co.uk/sandra/). Il primo e' un programma freeware (gratuito) che funziona in ambiente DOS. Esamina i dischi presenti nel PC e fornisce alcune informazioni (informazioni che pero' sono tranquillamente reperibili dalle schermate del BIOS). Il secondo e' un programma shareware che si puo' scaricare per usi personali e non commerciali che funziona in ambiente Windows. La quantita' di informazioni che puo' fornire questo programma e' impressionante. Nel mio caso, eliminando tutte le informazioni relative al sistema Windows, eliminando alcune informazioni troppo dettagliate, ha creato un archivio zeppo di dati che una volta stampato su fogli in formato A4, si e' rivelato un libretto di una trentina di pagine! Se non avessi eliminato alcun dettaglio, la mole di informazioni prodotta sarebbe stata tale da creare uno stampato di ben 322 pagine! E' possibile inoltre scaricare questi programmi accedendo ai vari siti specializzati tipo TUCOWS (http://www.tucows.com). Consiglio di creare un report con SANDRA, di stamparlo, spillarlo e conservarlo per usi futuri.

8.5 Scelta dei sistemi operativi da installare

In questa fase occorre decidere quali sistemi operativi installare oltre a Linux. Infatti e' possibile avere una postazione Linux (Linux box) stand alone (ossia da sola e senza altri sistemi operativi) oppure una postazione con piu' sistemi operativi (ad esempio Linux, Windows e DOS). L'installazione classica comprende Linux e Windows. Se si possiede un unico disco fisso e' possibile far convivere entrambi i sistemi sullo stesso disco, facendo partire prima Windows e poi Linux o viceversa. Oppure se si possiedono piu' dischi si puo' installare ciascun sistema su un disco separato. Ma vediamo i casi possibili:

  1. Linux e Windows sullo stesso disco, quando si accende il PC parte prima Windows
  2. Linux e Windows sullo stesso disco, quando si accende il PC parte prima Linux
  3. Linux e Windows su dischi diversi, parte prima Windows
  4. Linux e Windows su dischi diversi, parte prima Linux

In realta' esiste un altro caso, in quanto e' possibile avviare un sistema operativo partendo da un dischetto di avvio precedentemente preparato. Questo sistema ha i suoi vantaggi (e' possibile provare versioni diverse di kernel ad esempio) ma non viene trattato qui (anche se verra' comunque spiegata la preparazione del dischetto di avvio). Qui vengono trattate le situazioni piu' comuni (tipo win98 Linux o win2000 Linux) ed i principi generali relativi all'installazione di una distribuzione Linux. Una 'rule of thumb' (cioe' regola non scritta, empirica, derivata da giornate intere passate ad installare piu' sistemi operativi contemporaneamente, a leggere svariati howto, ad aprire e chiudere il PC e a lanciare anatemi a destra e a sinistra) e' quella di installare prima il sistema operativo piu' vecchio e poi sopra di questo installare il sistema operativo piu' nuovo. Tenendo presente ad ogni modo che alcuni sistemi operativi hanno i loro bootmanager e che quindi occorre installarli per ultimi. Windows NT ad esempio puo' attivare Windows 9x, ma non e' vero il contrario. Quindi se si vuole installare Windows 98 e Windows NT, occorre installare Windows 98 per primo e Windows NT per ultimo. Siccome Linux e' in grado di attivare piu' sistemi operativi diversi (i vari Windows, il DOS etc.), e' necessario installarlo come ultimo sistema operativo della serie. Seguendo questa regola, se si possiedono 2 dischi Windows non vorra' saperne di installarsi sul secondo disco: sara' necessario caricarlo sul primo disco. Un secondo sistema invece (quello descritto di seguito) usa un subdolo stratagemma per ingannare Windows, permettendoci di installarlo sul secondo disco suo malgrado! ;o) Prima di esaminare i vari casi pero', e' necessaria una piccola digressione, occorre infatti sapere cosa accade quando si accende il PC. E' l'argomento del prossimo paragrafo.

8.6 Piccola digressione: cosa accade quando accendiamo il PC

Premendo il tasto di accensione del PC, come prima cosa si attiva automaticamente il programma BIOS presente nella memoria ROM (memoria che non viene mai cancellata anche quando si spegne il PC, a differenza della RAM che viene azzerata completamente non appena si toglie la corrente). Il BIOS prende immediatamente il controllo della macchina. Il BIOS (Basic Input Output System) e' un programma che dialoga tra la CPU (Central Processing Unit) ossia il calcolatore vero e proprio, il cuore del PC e i vari componenti hardware come la scheda video, la memoria RAM, i dischi etc. La CPU infatti, esegue solo dei calcoli e delle istruzioni, ma non dialoga direttamente con gli altri componenti hardware. Il BIOS contiene dei programmi che sono sempre attivi e controllano continuamente i vari componenti hardware della macchina. Quando viene premuto un tasto sulla tastiera ad esempio, uno dei vari programmi del BIOS, quello che si occupa del controllo della tastiera, si accorge di cio', legge il carattere premuto e lo comunica alla CPU. Se non esistesse il BIOS, la CPU non saprebbe minimamente interagire con la tastiera. La CPU e' un circuito elettronico capace unicamente di eseguire dei calcoli e poche istruzioni ad una velocita' impressionante. Sa fare solo questo. Non sa minimamente cosa sia una tastiera. E' il BIOS che, interagendo tra tastiera e CPU, traduce la pressione dei tasti in istruzioni per la CPU. Ad ogni modo non e' importante conoscere le funzionalita' del BIOS in dettaglio, ma e' importante sapere che la prima cosa che viene fatta dal BIOS e' l'analisi di tutte le componenti hardware presenti nel PC. E' una fase diagnostica che serve per controllare che tutti i componenti siano funzionanti. La seconda cosa che viene fatta dal BIOS e' una attivita' che al contrario ci interessa piu' da vicino. E' la ricerca del disco dove e' contenuto il sistema operativo da caricare in memoria. Ma perche' il sistema operativo contenuto nel disco deve essere caricato in memoria? Semplice: la CPU esegue milioni di istruzioni in un secondo, elaborando i dati che vengono forniti dall'utente o che vengono prelevati dal disco o che vengono calcolati dalla CPU stessa. I dati possono essere registrati in memoria centrale (memoria RAM) o su disco. La memoria centrale puo' essere raggiunta dalla CPU molto velocemente mentre l'accesso al disco e' molto piu' lento. La CPU ha bisogno di leggere dei dati o di scrivere i dati da lei prodotti da qualche parte. Ha bisogno di farlo in tempi rapidissimi pero'. Se la CPU dovesse per ogni istruzione eseguita leggere o scrivere dei dati, dovrebbe poter essere in grado di leggere o scrivere tali dati milioni di volte al secondo. Ed in effetti e' un po' quello che accade. Una memorai RAM da 100 Mhz infatti, significa una memoria che puo' viaggiare a 100 milioni di cicli al secondo. Una velocita' adatta a supportare la velocita' della CPU. Tutto questo non e' vero per quanto riguarda i dischi fissi. Il disco piu' veloce mai prodotto e' in effetti molto ma molto piu' lento della memoria RAM. La memoria RAM infatti e' composta da circuiti elettronici e i dati viaggiano alla velocita' della corrente elettrica per intenderci. Il disco fisso al contrario possiede all'interno dei meccanismi meccanici. Possiamo assimilarlo molto grossolanamente ad un vecchio giradischi. Possiede infatti un disco, un braccetto ed una puntina (che qui si chiama testina). Il disco pero' non e' di vinile ma di metallo e non contiene canzoni ma dati. Il disco metallico effettua migliaia di giri ogni secondo ed il braccetto si sposta continuamente per accedere a questa o a quella parte del disco. Questi movimenti per accedere ai dati registrati sul disco sono lentissimi se paragonati alla velocita' della memoria RAM. Quando la CPU deve accedere ai dati contenuti sul disco, non puo' far altro che aspettare che la testina spostata dal braccetto abbia raggiunto la parte del disco interessata, abbia letto i dati e glieli abbia passati. Nel frattempo non puo' eseguire altre istruzioni, perche' per proseguire ha bisogno dei dati che sono presenti sul disco. Essendo la CPU migliaia di volte piu' veloce del disco, dovrebbe passare gran parte del tempo ad aspettare i dati che elaborerebbe in tempi brevissimi. Ecco perche' e' preferibile non usare mai il disco ed usare sempre la memoria RAM. Peccato pero' che i dati che sono presenti sul disco rimangono memorizzati per sempre, anche quando viene spento il PC, mentre i dati presenti nella memoria RAM vengono persi irrimediabilmente non appena cessa di passare corrente nei circuiti. Inoltre produrre una memoria RAM di decine di Gigabyte ha dei costi proibitivi. Un sistema operativo di varie centinaia di megabyte deve quindi essere necessariamente registrato sul disco. Non puo' essere contenuto tutto per intero nella memoria RAM ed inoltre se anche cio' fosse possibile, si cancellerebbe ogni volta che si spegne il PC. Ecco perche' viene registrato permanentemente su disco e recuperato un pezzo alla volta e caricato in memoria RAM ogni volta che si accende il PC. In realta' il sistema operativo potrebbe risiedere su un disco fisso, su un floppy disk, su un CD-Rom o su un'altra supporto come ad esempio le unita' ZIP. Ma torniamo alla seconda attivita' svolta dal BIOS all'accensione del PC: la ricerca del disco dove e' contenuto il sistema operativo da caricare in memoria. Il BIOS cerca sui vari supporti presenti nella macchina (floppy, disco, CD-Rom etc.), secondo la sequenza che abbiamo impostato noi nel suo menu di configurazione, l'MBR (Master Boot Record), ossia quella piccola parte iniziale del disco che contiene l'indirizzo del disco dove e' registrato il sistema operativo. Se non lo trova nel primo supporto, lo cerca nel secondo, se non lo trova nemmeno nel secondo lo cerca nel terzo. Se alla fine non lo trova in alcun supporto, si arrende ed invia a video un messaggio del tipo 'disco non di sistema' che ci informa che non e' stato possibile trovare l'MBR. Tutto cio' tradotto in parole povere significa che il video rimarra' nero, con un laconico messaggio che ci avverte che non e' possibile caricare alcun sistema operativo. Se accade cio' il nostro PC e' inutilizzabile. Se al contrario lo trova, gli cede il controllo della situazione. I'MBR e' diviso in 2 parti: nella prima parte e' presente un piccolissimo programmino che si occupa di caricare il sistema operativo dal disco nella memoria RAM, nella seconda parte e' presente una tabella che contiene - per ogni sistema operativo installato - il relativo indirizzo fisico del disco dove questo e' memorizzato. Non e' esattamente cosi' in realta', perche' in effetti in tale tabella sono presenti gli indirizzi delle partizioni attive (ossia partizioni che possono contenere un sistema operativo avviabile) ma si tratta di un dettaglio non importante in questo momento. Ma chi e' che scrive questo MBR sul disco? E' il sistema operativo stesso. Gia', ma come fa a scriverlo se ancora non lo abbiamo installato? ;o) Semplice, non puo' farlo. Ecco perche' occorre avere un dischetto di avvio (detto anche di boot o di bootstrap) per far partire il sistema operativo per la prima volta. Cioe' un dischetto preparato in modo da avere un MBR al suo interno ed in grado di far partire tutto il sistema caricandolo da un altro disco o da un CD-Rom. Il dischetto contenente l'MBR possiamo preparlo noi oppure possiamo usarne uno gia' pronto: il CD-Rom di installazione. Il CD-Rom che contiene la nostra distribuzione Linux infatti, e' normalmente un CD-Rom di avvio, ossia un CD-Rom gia' pronto che contiene questo famoso MBR. E' possibile avere un floppy disk di avvio, un CD-Rom di avvio o una unita di memorizzazione diversa come ad esempio le unita' ZIP. Tutti questi dettagli tecnici servono a comprendere perche' non e' possibile installare Linux sul nostro PC semplicemente copiando tutti i file che sono contenuti nel CD-Rom! Ora che sappiamo che occorre avere un disco di avvio, possiamo tornare ad esaminare i vari casi possibili delinati prima, argomento questo che sara' oggetto del prossimo paragrafo.

8.7 Stesso disco o dischi diversi? Come ingannare Windows con il BIOS

Nel primo caso preso in considerazione (Linux e Windows convivono nello stesso disco, ma parte Windows per primo) sara' Windows che si occupera' di scrivere l'MBR sul disco necessario per far partire Windows stesso. All'accensione del PC il BIOS cerchera' l'MBR sul disco, lo trovera' e cedera' il controllo al programmino che carichera' Windows in memoria. A questo punto la macchina e' governata da Windows, pertanto se si vuole passare a Linux occorre eseguire un programma che gira sotto Windows e che si chiama Loadlin. Tale programma si occupera' di avviare Linux. Inutile dire che un sistema cosi' implementato non e' molto efficiente in quanto Linux non e' stato installato in modo nativo ed e' costretto ad usare il file system di DOS/Windows (fat16 o fat32). Lo stesso discorso vale per il terzo caso. Vediamo invece cosa accade nel secondo caso (Linux e Windows sullo stesso disco ma parte prima Linux). In questo caso e' Linux a partire per primo. Pertanto l'MBR verra' scritto sul disco a cura di Linux. Con una differenza pero': Linux possiede un boot manager che scrive l'MBR in base ad alcuni parametri forniti dall'installatore. Un boot manager infatti e' un programma che parte all'accensione del PC e che mostra all'utente un menu di scelta. In tale menu e' possibile scegliere quale sistema operativo far partire. Il boot manager di Linux si chiama LILO (LInux LOader). Lilo e' un boot manager testuale, ma esistono anche dei boot manager con interfaccia grafica come GRUB, dove e' possibile cliccare con il mouse o usare le freccie della tastiera. Ok, ma cosa fa il boot manager? Il boot manager scrive l'MBR per conto del sistema operativo salvandosi da qualche parte l'indirizzo del disco dove e' memorizzato il sistema operativo e scrivendo nell' MBR l'indirizzo di se stesso. Quando si accende il PC, si attiva il BIOS che effettua la diagnostica dei vari componenti hardware e poi va alla ricerca dell'MBR per scoprire l'indirizzo del disco dal quale prelevare il sistema operativo. A questo punto, trovato l'MBR carica il programma all'indirizzo trovato. Solo che cosi' facendo, invece di caricare il sistema operativo, carica il programma LILO, che chiedera' all'utente quale sistema operativo intende usare. Se a questo punto l'utente sceglie di usare Windows, il programma LILO andra' a cercare Windows nel disco, a partire dall'indirizzo che si era salvato prima. Lo carichera' in memoria e Windows prendera' il controllo completo della macchina. Se viceversa l'utente scegliesse di usare Linux, LILO caricherebbe Linux in memoria, andandolo a cercare sul disco all'altro indirizzo che si era salvato prima. Questo sistema e' molto piu' efficiente del primo, ma se si possiedono 2 o piu' dischi, suggerirei di adottare l'ultima configurazione che andiamo ad esaminare, cioe' il quarto caso: Linux e Windows su dischi diversi e parte prima Linux (il terzo caso e' simile al primo e non lo analizziamo). Cosa c'e' che non va nella configurazione precedente? Semplice, poiche' in ambiente Windows e' possibile cancellare tutti i file presenti sul disco, e' anche possibile inavvertitamente cancellare non solo Windows, ma anche Linux. Anche se non si e' cosi' avventati da cancellare i file di sistema di Windows e di Linux, il rischio di perdita dei dati rimane, in quanto il sistema potrebbe venire infettato da un virus che potrebbe cancellare tutti i file del disco, Windows e Linux compresi. Se viceversa i due sistemi risiedono su dischi separati, se non altro si limita il danno: il virus potrebbe cancellare Windows ma non Linux. Ma il virus non potrebbe accedere anche al disco che contiene Linux? Se il virus e' un normale programma che gira sotto Windows (ad esempio un virus di macro, ormai il tipo piu' diffuso) la risposta e' no, ma ovviamente, se parliamo di programmi scritti in assembler, tutto diventa possibile...Ad ogni modo una configurazione a due dischi e' molto piu' sicura e, se non altro, teniamo lontano Linux dal virus Windows! ;o) Per capire meglio una configurazione di questo tipo, occorre sapere che quando sono presenti 2 o piu' dischi, il primo visibile dal BIOS, e' il disco collegato come master al canale primario. L'ordine di ricerca del BIOS per i dischi IDE/EIDE infatti e': 1) master canale primario, 2) slave canale primario, 3) master canale secondario e 4) slave canale secondario). Bene, il sistema operativo 'di partenza' ossia quello che gestisce l'MBR si deve trovare sul primo disco visibile dal BIOS. Percio' il problema si pone quando, dopo aver installato Linux sul primo disco, andremo ad installare Windows sul secondo. Windows non vorra' saperne di installarsi sul secondo disco e fara' tutto il possibile per andare ad installarsi sul primo. Allora si accorgera' che saranno presenti altri dati sul disco primario e ci chiedera' in pratica di cancellare tutto cio' che si trova sul primo disco per potersi installare lui. Come risolvere il problema? Giocando d'astuzia, ossia ingannando Windows per costringerlo ad installarsi sul secondo disco! Il metodo e' semplicissimo e sfrutta la possibilita' di modificare la configurazione del sistema via BIOS. Quando si accende il PC infatti, e' possibile accedere al menu di configurazione del BIOS (premendo il tasto CANC o DEL) in modo da disabilitare temporaneamente uno o piu' dischi. Disabilitando il primo disco contenente Linux gia' installato, Windows non potra' rilevarlo e credera' che il PC sia dotato di un solo disco. Secondo questa configurazione quindi, installeremo prima Linux sul primo disco e successivamente disabiliteremo tale disco per poter installare Windows sul secondo ed infine, dopo aver installato Windows, riabiliteremo il primo disco. Una volta riabilitato il primo disco, questo rimarra' per sempre invisibile a Windows, che credera' di governare un sistema dove e' presente un unico disco fisso e del quale possiede l'assoluto controllo. Viceversa Linux potra' vedere entrambi i dischi. I vantaggi di questa configurazione si apprezzeranno via via che si approfondisce la conoscenza del sistema Linux. In tutto cio' che e' stato visto fino ad ora, sono presenti volutamente alcune imprecisioni, allo scopo di non introdurre troppi dettagli tecnici che potrebbero confondere e distogliere l'attenzione dalla linea principale dell'argomento che si sta trattando. La quantita' di dettagli presentata in questa pagina e' a dire il vero notevole, forse un tantino eccessiva, ma cio' si e' reso necessario per poter comprendere alcuni principi basilari riguardanti l'installazione di un sistema operativo, nonche' il significato di termini come boot manager, disco di avvio, LILO etc.

8.8 Generalita' sul partizionamento dei dischi

Continuando ad illustrare il metodo di installazione di Linux su un disco e Windows su un altro, a questo punto non ci sarebbe altro da fare che fornire qualche informazione aggiuntiva sul significato e sulle caratteristiche delle partizioni usate da Linux. Pero', considerando che nella maggioranza dei casi non si hanno due dischi ma uno solo, vale la pena illustrare alcuni procedimenti da seguire per cio' che riguarda il partizionamento di un disco dove e' gia' installato Windows. In effetti e' anche possibile evitare il partizionamento, installando Linux senza LILO, sfruttando le possibilita' offerte dal programma LOADLIN. Con LOADLIN e' possibile far partire Linux senza creare nuove partizioni, in quanto Linux andra' ad usare la stessa partizione di Windows. Purtroppo pero' e' piu' efficiente creare un sistema che abbia un filesystem Linux nativo, ed in tal caso la creazione di partizioni Linux e' una scelta obbligata. Pertanto, fermo restando che avere Windows su un disco e Linux su un altro disco rimane la cosa migliore in ogni caso, vediamo quindi cosa occorre sapere a questo riguardo. Con il passare degli anni le dimensioni degli hard disk sono aumentate continuamente ed oggi i dischi hanno raggiunto capacita' incredibili: mentre scrivo il muro dei 100 Gigabyte e' stato ampiamente superato. Con tanto spazio a disposizione, far convivere piu' sistemi operativi nello stesso disco e' ormai cosa agevole. Per far questo pero' occorre suddividere lo spazio in modo da assegnarlo in parte ad un sistema operativo ed in parte ad un altro (e' anche possibile far convivere piu' di 2 sistemi operativi nello stesso disco). Occorre cioe' partizionarlo, ossia suddividerlo in partizioni. Esistono dei sistemi (RAID) per estendere una partizione in piu' dischi, ma cio' che ci interessa a questo punto e' la suddivisione in partizioni di un unico disco fisso. Esistono 3 tipi di partizioni: le partizioni primarie le partizioni estese e le partizioni logiche. Il concetto di partizione e' stato introdotto sostanzialmente per 2 motivi: la necessita' di ospitare sistemi operativi diversi sullo stesso disco da una parte e la necessita' di superare i limiti imposti dai vari sistemi operativi dall'altra. I primi sistemi operativi non prevedevano infatti l'uso di dischi di grandi capacita', pertanto possedevano delle limitazioni. Non riuscivano cioe' a 'vedere' dischi piu' grandi di una data dimensione. Il primo limite dei primi sistemi operativi su PC (per PC intendiamo il PC IBM e le sue evoluzioni) e' stato quello dei 32 Mb. Il DOS versione 3.0 ad esempio non riusciva a vedere dischi piu' grandi di 32 Mb. Questo limite era imposto dall'uso del LSN (Logical Sector Number) usato dal DOS, che usava 2 byte per indirizzare i settori del disco (1 byte e' composto da 8 bit, 2 byte sono percio' 16 bit, ossia 2**16, cioe' 65536). Questo sistema infatti permetteva di indirizzare al massimo 65536 settori di 512 byte ciascuno (65536x512=33554432 ossia circa 32Mb). Successivamente con il DOS 4.0 tale limite venne spostato a 4 Tb (Terabyte, cioe' 1.000 Gigabyte). Nel frattempo le dimensioni dei dischi continuavano ad aumentare e ben presto subentro' un secondo limite, quello del BIOS. Il programma del BIOS che si occupava di leggere/scrivere sul disco (l'INT 13h) aveva infatti la possibilita' di gestire (sarebbe piu' corretto dire: indirizzare) fino a 528 Mb. Senza continuare troppo con la storia dei dischi, vediamo che ben presto per superare queste limitazioni venne introdotto appunto il concetto di partizioni. Il DOS allora permetteva di gestire al massimo fino a 4 partizioni primarie. Le partizioni primarie hanno un filesystem (sistema di suddivisione logico del disco) che permette di installare un sistema operativo e di avviarlo. Poiche si rese necessario avere a disposizione piu' partizioni per uno stesso sistema operativo, venne introdotto il concetto di partizione estesa. Una partizione estesa sostanzialmente e' una fetta di disco che non puo' contenere un sistema operativo avviabile, pero' puo' contenere altri dati di qualsiasi natura. Una partizione estesa per poter essere usata deve essere a sua volta suddivisa in una o piu' partizioni logiche. Su un disco non e' possibile avere piu' di una partizione estesa. Il DOS non gestisce piu' di 4 partizioni, pertanto sono possibili al massimo 3 partizioni primarie ed una estesa (suddivisa in piu' partizioni logiche). Le partizioni primarie sono delle partizioni che possono ospitare sistemi operativi, ma in questo caso si devono anche rendere avviabili. Per essere resa avviabile una partizione primaria deve essere marcata come partizione attiva. Percio' e' possibile avviare un sistema operativo presente su disco a patto che questo venga installato su una partizione primaria che sia resa attiva (maggiori informazioni sui dischi i filesystem e le partizioni sono reperibili presso il sito della Red Hat all'indirizzo: http://www.europe.redhat.com/documentation/rhl7.3/rhl-ig-x86-it-7.3/ch-partitions.php3). Per creare partizioni, suddividerle, configurarle, per creare dei filesytem etc., esistono vari programmi di utilita' tra i quali fdisk, fips, format, scandisk etc. Vedremo alcuni di questi nei prossimi paragrafi.

8.9 Riduzione della partizione di Windows

Per installare Linux su un disco che gia' contiene Windows, occorre prima di tutto ricavare lo spazio necessario liberando il disco dai file che non ci servono piu'. Successivamente si potranno creare delle nuove partizioni riducendo quella utilizzata da Windows. Per fare questo e' possibile usare un programma commerciale molto facile da usare come Partition Magic oppure altri programmi non commerciali (e quindi gratuiti) come FIPS, FDISK, PARTED (meno facili da usare),oppure Ranish Partition Magic, Partition Resizer (scaricabile dal sito 1 o dal sito 2), DISKRAKE etc. Abbandonando senza indugi la strada commerciale,vediamo le alternative non commerciali cominciando ad analizzare l'uso di FIPS. FIPS (First nondestructive Interactive Partition Splitting program, cioe' primo programma non distruttivo ed interattivo di suddivisione delle partizioni) e' reperibile al sito dell'autore ma solitamente e' contenuto anche all'interno del CD-Rom che contiene la distribuzione Linux. E' un programma di utilita' DOS, e' un po vecchiotto e l'ultima versione e' la 2.0. FIPS non e' intuitivo come Partition Magic, percio' occorre fare molta attenzione a quello che si fa. Inutile dire che prima di tutto e' conveniente fare un backup di tutti i dati contenuti sul disco. A causa di alcune limitazioni imposte da alcune vecchie versioni di BIOS (in genere le versioni di BIOS precedenti al 1998, percio' su un PC appena acquistato non dovrebbero esserci problemi) occorre creare lo spazio per la partizione Linux il piu' possibile all'inizio del disco. Le vecchie version di BIOS infatti non riescono a caricare i file di avvio del sistema operativo se questi sono memorizzati dal cilindro 1024 in poi. Il lavoro svolto da FLIPS e' semplice: dividere una partizione in 2 partizioni. FIPS ha pero' alcune limitazioni: puo' modificare solo partizioni primarie (FAT16 o FAT32), non puo' modificare le partizioni logiche ed inoltre non puo' spostare dati da una partizione all'altra. I file sul disco non sono registrati collocando un byte affianco all'altro in modo sequenziale e contiguo, ma sono deframmentati sull'intero disco. Un dato file puo' essere spezzettato in 100 parti ognuna lontana dall'altra e qualche parte potrebbe anche essere registrata in prossimita' della fine del disco. Questo crea un problema, perche' supponendo di avere un disco da 10 Gb di cui 6 occupati e 4 liberi, cosa accade se un pezzo di un file si trova verso la fine del disco? Non e' possibile creare una partizione da 4 Gb (lo spazio libero) da dedicare a Linux, in quanto quel pezzo di file non puo' si puo' spostare e FIPS non e' in grado di fare questo per noi. Conviene quindi che tutti i file risiedano all'inizio del disco e che non esistano file spezzettati in giro per il disco. Per fare questo occorre deframmentare il disco. Per deframmentare il disco si potrebbe usare il deframmentatore fornito da Windows (programmi/accessori/Utilita' di sistema/Utilita' di deframmentazione dischi), ma purtroppo tale programma non e' capace di spostare alcuni file come quelli nascosti, di sistema o di swap. Occorre quindi usare un deframmentatore piu' potente oppure preparare il disco per poter avviare la deframmentazione. Per preparare il disco e' necessario uscire da Windows e svolgere alcune operazioni in ambiente DOS utilizzando un dischetto di avvio DOS che avremo creato preventivamente. Una volta deframmentato il disco e verificata l'assenza di pezzi di file in fondo al disco stesso, possiamo suddividere la partizione Windows in 2 partizioni usando il programma FIPS, in modo da creare la partizione da riservare a Linux. Una volta suddivisa la partizione con FIPS si potra' o formattare la nuova partizione creata (creando in questo modo un filesystem di tipo FAT utilizzabile sotto Windows) o cancellarla nuovamente in modo da crearne una nuova ma con un filesystem di tipo EXT2, cioe' il filesystem di Linux. FIPS infatti e' un programma DOS come abbiamo detto, percio' creera' delle partizioni di tipo DOS/Windows (usano lo stesso filesystem). Qui viene utilizzato unicamente per dividere in 2 la partizione Windows originaria. Per creare una nuova partizione Linux o, in altre parole, per modificare il filesystem della partizione creata da FAT a EXT2 e' possibile usare il programma FDISK (di tale programma esiste una versione DOS e una Linux). Una volta creata la partizione Linux (sarebbe piu' corretto dire le partizioni, poiche' con FDISK dovremo creare piu' partizioni per Linux) si puo' finalmente creare un disco di avvio Linux ed avviare finalmente il programma di installazione di Linux. Tutte queste fasi possono far ritenere l'installazione di Linux un'operazione abbastanza complessa, ma occorre precisare che tutti i passi qui elencati fanno parte di una procedura di installazione di tipo manuale, mentre in realta' il CD-Rom di installazione delle moderne distribuzioni svolge tutte queste operazioni automaticamente o quasi, richiedendo il nostro intervento unicamente per rispondere ad alcune semplici domande. La distribuzione Mandrake in particolar modo e' molto facile da usare ed ha un programma di utilita' (Diskrake) che partiziona il disco all'interno della procedura di installazione. Con Diskrake e' come avere Partition Magic: e' uno strumento grafico (e non testuale come FDISK e FIPS) e permette non solo di creare o eliminare partizioni ma anche di ridimensionarle. Percio' la procedura di installazione manuale qui illustrata, puo' essere utile per poter utilizzare distribuzioni piu' ostiche (magari Slackware o Debian per esempio) ma ha principalmente uno scopo puramente didattico. Torniamo quindi a parlare delle fasi necessarie per preparare il disco alla fase di installazione vera e propria analizzandole in dettaglio.

8.10 Preparazione del disco, fase 1: eliminare i file che non servono

  • Svuotare la cache di Internet Explorer: per velocizzare l'accesso alle pagine visitate di frequente, il browser web Internet Explorer le memorizza su disco. Se la pagina che si desidera visitare e' gia' presente sul PC Explorer visualizzera' quella, in caso contrario la prelevera' dal sito web. Percio' nella cache (area di disco utilizzata a tale scopo) sono presenti moltissimi file che non servono piu'. Per cancellarli, da Internet Explorer cliccare su Strumenti/Opzioni Internet/Generale/File temporanei Internet/Elimina avendo selezionato 'Elimina tutto il contenuto non in linea'. Infine cliccare su Okay.
  • Cancellare la cronologia (le pagine visitate recentemente) cliccando su Strumenti/Opzioni Internet/Generale/Cancella Cronologia.
  • Eliminare i cookie: cliccare poi su Strumenti/Opzioni Internet/Generale/File temporanei Internet/Impostazioni/Visualizza file si aprira' una cartella con vari file (molti sono cookies). Cliccare a questo punto su Modifica/Seleziona tutto, cliccare su File e selezionare Elimina. Alla richiesta di conferma 'Eliminare il cookie selezionato?' rispondere Si. Alcuni cookie servono ai siti per memorizzare le preferenze dei loro visitatori (myYahoo ad esempio), ma il nostro scopo e' creare spazio per il partizionamento: successivamente (una volta installato Linux) sara' possibile visitare il sito interessato e reimpostare eventuali preferenze nuovamente.
  • Eliminare i file che non servono piu': per scoprire quali file occupano maggiormente spazio nel disco, esiste un programmino freeware (gratuito) grande una manciata di byte che puo' essere utile allo scopo: Zdu.

8.11 Preparazione del disco, fase 2: backup dei dati

Prima di effettuare qualsiasi operazione che potrebbe compremettere l'integrita' dei dati memorizzati su disco, occorre effettuare il salvataggio (backup) di tutto quello che non e' possibile reinstallare o reperire nuovamente da altre fonti che non siano il disco stesso. Cosi' facendo, nel malaugurato caso che qualcosa vada storto, sarebbe possibile ritornare alla situazione originaria ripristinando i dati salvati (restore). Ovviamente e' anche possibile salvare il contenuto dell'intero disco, ma occorrerebbe una unita' di memorizzazione dati abbastanza capiente. Ipotizzando un hard disk di 10 Gbyte interamente occupato, sarebbero necessari piu' di 10 CD-Rom. Non vale la pena sprecare tanta memoria per salvare programmi che potrebbero tranquillamente essere reinstallati. Ad esempio e' inutile salvare il sistema operativo Windows, in quanto anche in caso di perdita sarebbe sempre possibile reinstallarlo partendo dal CD-Rom di installazione originario. Stessa cosa vale per i programmi scaricati dalla rete e scaricabili nuovamente. Ovviamente e' inutile salvare un programma come Microsoft Outlook, ma di certo e' auspicabile un salvataggio delle impostazioni del programma e dei dati sensibili (come ad esempio gli indirizzi di posta elettronica) memorizzati all'interno di Outlook. Il salvataggio dei dati e' un'operazione che deve essere eseguita analizzando scrupolosamente la situazione corrente. La prima cosa da fare e' aprire esplora risorse e scorrere il contenuto di tutte le cartelle: qualsiasi file o documento che riteniamo sensibile va salvato. Possiamo usare un CD-Rom riscrivibile per copiare tutti i dati. Una volta salvati i dati, la seconda cosa che occorre fare e' lanciare tutti i programmi installati sul nostro PC uno per uno, partendo da avvio/programmi. Per ogni programma lanciato annotare tutte le impostazioni e le configurazioni su un foglio di carta oppure editare un file di testo, scriverle all'interno e poi salvarlo nel nostro CD-Rom. Infine, finita anche questa operazione occorre salvare quelle impostazioni che non sono presenti all'interno dei programmi installati ma fanno parte di Windows. Ad esempio le impostazioni di rete (Risorse del computer/Accesso remoto/) delle stampanti (Risorse del computer/Stampanti/), delle operazioni pianificate (Risorse del computer/Operazioni pianificate), del video (Risorse del computer/Pannello di controllo/Schermo), del modem (Risorse del computer/Pannello di controllo/Modem) e tutte le altre cose che troviamo all'interno di Pannello di controllo.

8.12 Preparazione del disco, fase 3: creazione del dischetto di avvio DOS

Per lanciare alcuni programmi e per eseguire alcune operazioni su disco, occorre uscire da Windows ed entrare sotto DOS. Conviene percio' creare un dischetto di avvio DOS contenente tutte le utility che possono servire. A tale scopo inserire un floppy disk nel drive, cliccare su Avvio/programmi/Prompt di MS-DOS. Si aprira' una finestra nera ed il cursore lampeggera' aspettando dei comandi. A questo punto digitare il comando format a: /s. Questo comando formatta il dischetto appena inserito copiando dentro i file di sistema IO.SYS, MSDOS.SYS e COMMAND.COM. Questi file si trovano su C:\. Attenzione: si tratta di file nascosti, pertanto e' possibile che Windows sia configurato in modo da non visualizzare i file di sistema ed i file nascosti. Per verificarlo occorre eseguire esplora risorse (Avvio/Programmi/Esplora Risorse) e verificarne le impostazioni cliccando su Visualizza/Opzioni Cartella/Visualizza e selezionare 'Visualizza tutti' alla voce 'File nascosti'. A questo punto abbiamo creato un dischetto che permette di avviare il PC con il sistema operativo MS-DOS al posto di Windows. MS-DOS pero' non e' composto unicamente dai 3 file copiati dal comando format, percio' occorre copiare a mano i file DOS all'interno del dischetto. Si potrebbe copiare tutto il contenuto di C:\WINDOWS\COMMAND ma servirebbero due dischetti. Copieremo allora solo i file DOS che ci servono. I comandi MS-DOS non sono altro che dei programmi che sotto DOS vengono lanciati semplicemente digitandone il nome e premendo il tasto INVIO. Nella cartella C:\WINDOWS\COMMAND sono presenti dei programmi (i comandi DOS) dei file di sistema e dei file di configurazione. Ecco i file che copieremo nel nostro dischetto:

KEYB.COM
KEYBOARD.SYS
DRVSPACE.BIN
DRVSPACE.SYS
EXTRACT.EXE
SCANDISK.EXE
SCANREG.EXE
MSCDEX.EXE
FORMAT.COM
DISKCOPY.COM
DOSKEY.COM
EDIT.COM
MODE.COM
MORE.COM
SYS.COM
EGA.CPI
ATTRIB.EXE
CHKDSK.EXE
DELTREE.EXE
XCOPY.EXE
SCANDISK.INI
ANSI.SYS
COUNTRY.SYS
DISPLAY.SYS

A questo punto dobbiamo copiare anche due file presenti nella cartella C:\:

AUTOEXEC.BAT
CONFIG.SYS

Abbiamo in realta' eliminato alcuni file del DOS che non ci servono e abbiamo messo alcuni file di Windows che possono risultare utili. Questo che abbiamo creato e' un disco di avvio DOS. Dobbiamo ora copiare anche i programmi FDISK.EXE (presente nella cartella C:\WINDOWS\COMMAND), il programma FIPS.EXE ed i file error.txt e restorrb.exe (questi ultimi due fanno sempre parte di FIPS). FIPS lo troviamo nel CD-Rom di installazione di Linux o possiamo scaricarlo dal sito dell'autore e comprende anche un manuale (FIPS.DOC) che consiglierei di stampare. Per far partire il PC con il sistema operativo MS-DOS al posto di Windows, occorre pero' ricordarsi di controllare la sequenza di avvio nel menu di configurazione del BIOS. La prima unita' di avvio che il BIOS deve controllare deve essere l'unita' floppy disk, altrimenti il BIOS accederebbe al disco fisso e farebbe partire Windows. Di solito il BIOS e' preimpostato in modo da controllare prima l'unita' floppy disk e successivamente il disco C: (ecco perche' quando accendiamo il PC si accende per un secondo il led verde del floppy disk: e' il BIOS che controlla la presenza o meno di un dischetto di avvio). Per controllare (ed eventualmente modificare) la configurazione del BIOS, vediamo la procedura da seguire con il BIOS Award (il piu' comune, ma se si dispone di un BIOS diverso la procedura e' simile e ad ogni modo presso il sito del produttore della scheda madre contenuta nel nostro PC e' possibile reperire maggiori informazioni). Spegnere il PC e riaccenderlo. Non appena appare il messaggio 'Press DEL to enter Setup', premere il tasto CANC (o DEL se si possiede una tastiera non italiana) due o tre volte: in realta' basterebbe una volta sola ma a volte il nostro PC e' leggermente sordo ;o). A questo punto dovrebbero comparire delle schermate azzurre. E' il menu' di configurazione del BIOS. Usare i tasti freccia su/giu' per spostarsi tra le voci dei menu, usare i tasti pagina su e pagina giu' per cambiare i parametri delle varie voci. Selezionare la voce 'Advanced BIOS Features' e premere il tasto INVIO. Posizionarsi sulla voce 'First Boot Device' e scegliere 'FLOPPY'. Posizionarsi su 'Second Boot Device' e segliere HDD-0. Posizionarsi su 'Third Boot Device' e scegliere CDROM. Premere il tasto ESC per uscire da questo menu. Posizionarsi sulla voce 'Save & Exit Setup' e premere il tasto invio. Alla richiesta di conferma se si vuole uscire e salvare premere 'Y'. Ora il BIOS e' configurato in modo da far partire un sistema operativo presente su un dischetto di avvio (nel nostro caso i sistema operativo MS-DOS).

8.13 Preparazione del disco, fase 4: controllo di eventuali errori e di virus presenti sul disco

Per controllare l'assenza di errori sul disco e' possibile usare programmi con Chkdsk, Scandisk, Norton Disk Doctor etc. Chkdsk e Scandisk sono programmi che fanno parte del sistema operativo DOS e Norton Disk Doctor e' un programma commerciale (fa parte delle note Norton Utility). Questi programmi controllano la presenza di settori danneggiati e permettono di correggere gli errori trovati. La sintassi del comando Chkdsk e':

CHKDSK [unita':][[percorso] nomefile] [/F] [/V]

Il parametro /F permette di correggere gli errori trovati mentre il parametro /V visualizza i file e le directory controllate da Chkdsk. E' preferibile comunque usare il programma Scandisk (non presente nelle prime versioni di DOS). La sintassi di Scandisk e':

SCANDISK [unita': [unita': ...]|/ALL] [/CHECKONLY | /AUTOFIX [/NOSAVE] | CUSTOM] [/SURFACE] [/MONO] [/NOSUMMARY]

Dove:

/ALL controlla e ripristina tutte le unita' locali

/AUTOFIX corregge gli errori senza chiedere prima conferma (cosi' facendo tutti i cluster persi rilevati sull'unita', verranno salvati come file nella directory principale dell'unita'. Per fare in modo che ScanDisk elimini i cluster persi invece di salvarli, includere l'opzione /NOSAVE. Utilizzando l'opzione /AUTOFIX, se vengono rilevati errori verra' richiesto un disco Undo. Per evitarlo, includere l'opzione /NOSUMMARY)

/CHECKONLY controlla la presenza di errori nell' unita' ma non li corregge

/SURFACE esegue automaticamente una scansione della superficie del disco

A questo punto e' conveniente controllare la presenza di virus sul disco. Per effettuare questa operazione occorre disporre di un programma antivirus aggiornato (acquistandolo o prelevando una versione shareware dalla rete da un sito sicuro come ad esempio McAfee). L'antivirus deve essere installato ovviamente su un PC sicuramente NON infetto, dal quale poter creare un dischetto contenente il programma antivirus stesso ed un dischetto di ripristino del sistema. E' importante inoltre che l'antivirus venga eseguito da floppy DOPO AVER SPENTO il pc (non semplicemente ctrl-alt-canc).

8.14 Preparazione del disco, fase 5: trattamento dei file irremovibili

Poiche' il programma di deframmentazione del disco presente su Windows non e' in grado di spostare alcuni tipi di file come i file di sistema, quelli nascosti e quelli di swap, occorre effettuare alcune operazioni preliminari su detti file prima di poter eseguire tale programma. Terminata anche questa operazione sara' possibile eseguire il programma di deframmentazione di Windows entrando in modalita' provvisoria oppure eseguire il programma defrag da DOS. E' consigliabile scegliere la seconda opzione, in quando esiste una remota possibilita' che terminata la deframmentazione, chiudendo il programma e chiudendo la sessione, Windows vada a scrivere proprio nell'area appena deframmentata! Per ovviare a cio' si potrebbe resettare il PC (con il tasto reset) senza chiudere il programma di deframmentazione e tantomeno Windows ma e' superfluo dire che si tratta di un'operazione pericolosa ;o). Prima di far partire il programma DEFRAG da DOS quindi, vediamo come agire sui file 'irremovibili'. A tale scopo torna utile il dischetto di avvio DOS che abbiamo preparato prima, in quanto occorre eseguire alcune operazioni sotto DOS. Ogni file presente su disco (sotto DOS/Windows) ha 4 attributi: 1) Sola lettura, 2) Nascosto, 3) Archivio e 4) Sistema. I file nascosti e di sistema non possono essere spostati dal programma di deframmentazione, pertanto occorre eliminare tali attributi. Cliccare su Avvio/Programmi/Prompt di MS-DOS, si aprira' una finestra DOS. All'interno di questa finestra digitare i seguenti comandi:

C:\ (e premere INVIO)

DIR C:\ /A:H >> C:\ELENCO.BAT (e premere INVIO)

DIR C:\ /A:S >> C:\ELENCO.BAT (e premere INVIO)

EDIT PIPPO.BAT

A questo punto si aprira' il file ELENCO.BAT appena creato che conterra' qualcosa di simile:


Il volume nell'unità C non ha etichetta
Numero di serie del volume: 1E38-1D09
Directory di C:\

RECYCLED <DIR> 18/11/01 18.53 RECYCLED
DETLOG TXT 73.158 10/08/02 16.44 DETLOG.TXT
DETLOG OLD 74.829 17/11/01 23.59 DETLOG.OLD
IO SYS 222.390 05/05/99 22.22 IO.SYS
3 file 370.377 byte
1 dir Spazio disponibile 2.617.41 MB

Se non si dispone di Windows98 ma di una versione di Windows diversa si potrebbe avere anche una versione di DOS diversa e la sintassi del comando DIR potrebbe risultare leggermente diversa. Per scoprire la sintassi di tale comando digitare DIR /? (verra' mostrata la sintassi del comando). IMPORTANTE: Da questo file cosi' ottenuto eliminare tutte le righe che contengono IO.SYS, MSDOS.SYS, IBMBIO.COM e IBMDOS.COM. In caso contrario tali file verranno spostati dal programma deframmentatore e probabilmente il sistema non partira' piu' (se dovesse accadere cio' ad ogni modo sara' sufficiente ripartire dal dischetto riavviando il PC e successivamente digitare il comando A:SYS C:). Eliminare le righe che non contengono nomi di file:

Il volume nell'unità C non ha etichetta
Numero di serie del volume: 1E38-1D09
Directory di C:\

ed anche:

3 file 370.377 byte
1 dir Spazio disponibile 2.617.41 MB

Alla fine si dovrebbe ottenere qualcosa di simile:

RECYCLED <DIR> 18/11/01 18.53 RECYCLED
DETLOG TXT 73.158 10/08/02 16.44 DETLOG.TXT
DETLOG OLD 74.829 17/11/01 23.59 DETLOG.OLD

Eliminare da queste righe tutta la prima parte lasciando solo il nome del file (ad esempio DETLOG.TXT) e per ogni riga inserire questa scritta:

attrib -s -h (elimina gli attributi sistema e nascosto, cioe' system e hidden)

Alla fine il file dovrebbe risultare simile a questo:

attrib -s -h C:\RECYCLED
attrib -s -h C:DETLOG.TXT
attrib -s -h C:\DETLOG.OLD

A questo punto occorre salvare premendo i tasti ALT e F contemporaneamente scegliere SALVA e premere INVIO, poi di nuovo ALT e F e scegliere ESCI.

Abbiamo appena creato un file .BAT che e' un piccolo programmino. E' come un nuovo comando che puo' essere eseguito digitando:

ELENCO.BAT (e premere INVIO)

Copiare il file ELENCO.BAT nel dischetto chiamandolo ELENCO2.BAT con questo comando:

COPY C:\ELENCO.BAT A:\ELENCO2.BAT

Modificare il secondo file (ELENCO2.BAT) in modo da ripristinare gli attributi:

EDIT A:\ELENCO2.BAT (e premere INVIO)

attrib s h C:\RECYCLED
attrib s h C:DETLOG.TXT
attrib s h C:\DETLOG.OLD

Salvare e uscire da EDIT come fatto in precedenza. Ora il file ELENCO.BAT elimina gli attributi (-s e -h) mentre il file ELENCO2.BAT li ripristina ( s e h). Infatti '-' elimina un attributo e ' ' lo imposta. Percio' una volta effettuata la deframmentazione del disco e' possibile ripristinare gli attributi dei file lanciando il comando ELENCO2.BAT.

E' possibile ora deframmentare il disco, ma prima occorre disabilitare la memoria virtuale di Windows ed entrare in modalita' provvisoria, per far partire la deframmentazione da li'. Molti sistemi operativi Windows incluso, usano un tipo di gestione della memoria RAM chiamata memoria virtuale. In sostanza poiche' la dimensione della memoria RAM e' limitata, e poiche' viene esaurita in brevissimo tempo, il sistema operativo crea su disco il file Win386.swp, dove copia momentaneamente le applicazioni che sono caricate in memoria RAM ma non sono in uso. Quando la CPU deve leggere le istruzioni che sono contenute all'interno di questi programmi, questi vengono nuovamente caricati in RAM. Questo continuo processo di travaso da disco a memoria RAM viene detto swap-in/swap-out, o swapping, cioe' trasferisci da RAM a disco e viceversa. Ecco perche' il file di Windows si chiama Win386.swp: swp sta per SWaP file, ossia file usato per lo swapping, ossia i 'travasi'. Il file Win386.swp non puo' essere spostato dal programma di deframmentazione e quindi e' un ostacolo che va eliminato. Occorre quindi disabilitare la memoria virtuale, riavviare Windows in modalita' provvisoria ed effettuare la deframmentazione. Per disabilitare la memoria virtuale cliccare con il tasto destro del mouse sull'icona Risorse del computer, cliccare su Proprietà, cliccare su Prestazioni, cliccare su Memoria virtuale, selezionare le caselle Impostazione manuale della memoria virtuale e Disattiva memoria virtuale. Cliccare su OK, cliccare su SI (ignorare il messaggio di avvertimento di Windows), riavviare il PC. Non appena il PC riparte, prima che venga visualizzata la schermata di Windows, premere il tasto F8 oppure tenere premuto il tasto CTRL (se si usa Windows98) e apparira' un menu' di scelta: scegliere Avvia in modalita' provvisoria. Una volta entrati sotto Windows in modalita' provvisoria, lanciare il programma di deframmentazione:

Avvio/Programmi/Accessori/Utilita' di sistema/Utilita' di deframmentazione dischi

Partira' a questo punto il programma defrag.exe, ossia il deframmentatore del disco di Windows. Un'ultima cosa: ci sono alcuni programmi in esecuzione, come ad esempio gli antivirus che interferiscono con l'azione del deframmentatore costringendolo a ricominciare da capo continuamente: occorre chiudere tali programmi. Alcuni programmi che interferiscono e che vanno chiusi o disabilitati sono gli antivirus e lo screen saver. Per disabilitare lo screen saver (salvaschermo):

Risorse del computer/Pannello di controllo/Schermo/Screen saver e selezionare: nessuno

Nel caso il programma di deframmentazione si rifiutasse di spostare un file che non e' di sistema, nascosto o di swap, ma e' un file normalissimo, e' possibile procedere in questo modo:

  • copiare il file nella stessa cartella dove si trova
  • eliminare il file originario
  • rinominare il file copiato con il nome del file originario

Se per esempio pippo e' il file incriminato, copiandolo nella stessa cartella dove si trova, verra' chiamato da Windows 'copia di pippo'. Eliminando pippo e rinominando 'copia di pippo' come pippo, avremo in pratica spostato il file pippo al blocco del disco successivo a quello dove si trovava originariamente. ;o)

Finita la deframmentazione e' possibile riavviare Windows normalmente, riabilitare la memoria virtuale procedendo inversamente a quanto si e' fatto per disabilitarla ed infine suddividere il disco in partizioni: qui entra in azione il programma FIPS.

8.15 Preparazione del disco, fase 6: suddivisione della partizione Windows con FIPS

Se si possiede un PC vecchio con un vecchio BIOS, a causa del problema del 1024o cilindro illustrato prima, sara' bene creare una partizione per Linux che sia all'inizio del disco e che non superi 1023 cilindri. Nel caso cio' non fosse possibile, e' sempre possibile creare una piccola partizione esclusivamente dedicata all'avvio di Linux. In pratica occorre creare una partizione /boot di 16 Mb: in tale partizione il programma di installazione di Linux sistemera' tutti i file necessari al suo avvio. Ma torniamo a FIPS. L'unica cosa che FIPS e' in grado di fare e' suddividere la partizione primaria in due partizioni piu' piccole. Niente di piu'. Una servira' per Windows e l'altra per Linux. Terminata la deframmentazione eseguire immediatamente FIPS, in modo da evitare che Windows cominci a scrivere sul disco. FIPS e' un programma DOS e come tale deve essere eseguito in ambiente DOS, pertanto occorre uscire da Windows e riavviare il PC con il dischetto di avvio DOS che avremo precedentemente preparato. Inserire quindi il dischetto di avvio DOS nel drive, uscire da Windows e riavviare il PC con il dischetto inserito. Una volta riavviato saremo sotto DOS e potremo digitare il comando FIPS al prompt (il prompt e' rappresentato da:

A:>_

dove A: rappresenta il dischetto di avvio ed il carattere di sottolineatura '_' rappresenta il cursore lampeggiante. Questo significa che il DOS e' in attesa (pronto, prompt) di eseguire qualsiasi comando venga dato dall'utente. Pertanto digitare:

FIPS (e premere INVIO. In realta' il file/comando si chiama FIPS.EXE, ma non serve scriverlo per intero in quanto il DOS e' in grado di capire che si tratta di un programma da eseguire dall'estensione '.exe'. La stessa cosa e' valida per le estensioni '.com' e '.bat').

Per passare alle schermate successive di FIPS premere qualsiasi tasto, mentre per uscire in qualsiasi momento da FIPS premere i tasti CTRL e C contemporaneamente. A questo punto FIPS si accerta di essere fuori da Windows. Accertato cio', controlla i dischi presenti e qualora ne trovasse piu' di uno chiede all'utente su quale disco intende operare. Infine mostra la tabella delle partizioni trovata sul disco scelto dall'utente. Nel caso venissero trovate due o piu' partizioni, FIPS chiede all'utente su quale partizione intende operare. Dopo aver eseguito alcuni controlli (operazione che puo' durare qualche minuto) FIPS chiede se si intende salvare su dischetto una copia dei settori root e boot. In caso affermativo tali settori verranno salvati all'interno del file rootboot.000. Nel caso si volesse annullare tutte le operazioni fatte con FIPS questo file servira' per ripristinare la configurazione originare precedente. In questo caso occorrera' lanciare il comando restorrb (presente nel dischetto) e seguire le istruzioni. Quindi sara' opportuno rispondere affermativamente (premendo Y due volte) alla richiesta di creazione di una copia di backup dei settori root e boot. Di solito funziona tutto, ma a volte possono esserci errori, pertanto e' caldamente consigliato rispondere affermativamente alla richiesta di creazione di una copia di backup dei settori di boot e di root! A questo punto FIPS chiedera' il numero del cilindro dal quale dovra' partire la nuova partizione visualizzando un range di valori tra cui scegliere. Ad esempio:

Enter start cylinder for new partition (456 - 892):

Use the cursor keys to choose the cylinder, <enter> to continue

Old partition Cylinder New Partition
2565 MB 456 3584 MB

Per specificare il numero del cilindro si usano le frecce (a sinistra si aumenta mentre a destra si decrementa di 1) oppure i tasti pagina su e pagina giu' che permettono di andare avanti o indietro di 10 cilindri per volta. Una volta scelto il cilindro di partenza FIPS mostra la nuova situazione. A questo punto e' possibile proseguire o tornare indietro e modificare nuovamentei il numero del cilindro di partenza. Per tornare indietro premere R e per proseguire peremere C. Se si prosegue, una volta effettuati gli ultimi controlli FIPS chiede se si vuole continuare scrivendo le modifiche sul disco. Per continuare premere Y. A questo punto FIPS scrive sul disco ed esce. IMPORTANTE: non eseguire alcuna operazione su disco ma riavviare immediatamente! Percio' appena usciti da FIPS premere i tasti CTRL ALT e CANC (o CTRL ALT DEL) contemporaneamente senza togliere il dischetto dal drive: il sistema si riavviera' sempre in ambiente DOS. E' molto pericoloso eseguire scritture sul disco senza aver prima riavviato il PC!!! Una volta riavviato il PC senza togliere il dischetto, si puo' eseguire una prova digitando il comando:

FIPS /T

Ripartira' FIPS in modalita' test, ossia visualizzera' nuovamente le varie schermate e la situazione del disco senza pero' scrivere nulla. Se tutto e' a posto sara' possibile arrivare al menu che propone il numero del cilindro di partenza da selezionare per la nuova partizione. Se si riesce ad arrivare a questa schermata, e' tutto corretto ed e' possibile uscire da FIPS premendo i tasti CTRL e C contemporaneamente. A questo punto togliere il dischetto e riavviare il PC normalmente. Una volta tornati sotto Windows eseguire Scandisk nuovamente e se tutto e' a posto riattivare la memoria virtuale, l'antivirus, lo screen saver ed eventuali altri programmi disabilitati. Questa nuova partizione appena creata' potra' essere formattata per essere usata da Windows o da DOS oppure dovra' essere modificata ulteriormente per poter essere utilizzata da Linux. Poiche' lo scopo di questa nuova partizione e' l'installazione di Linux, sara' necessario modificarla usando un altro programma: FDISK. Prima di illustrare FDISK pero' occorre creare un altro dischetto di avvio: quello per Linux.

8.16 Preparazione del disco, fase 7: creazione dei dischetti di avvio Linux

Oggi la creazione del dischetto di avvio (boot) di Linux e' in realta' necessaria solo se non si dispone del CD-Rom di installazione. Infatti anche la classica distribuzione Slackware ormai permette l'installazione da CD-Rom e non richiede piu' la preparazione dei dischetti di avvio (per installare da CD-Rom occorre ricordarsi di modificare la configurazione del BIOS in modo da avviare il PC da CD-Rom e non da disco o da dischetto). Questa fase viene percio' riportata a solo scopo didattico. Per creare il dischetto di avvio occorre utilizzare il programma Rawrite. Tale programma e' presente all'interno della distribuzione (di solito nella cartella 'dosutils'). Esiste una versione per DOS ed una per Windows. Nella versione per Windows appare una finestra che richiede il nome del file immagine che si instende usare, mentre nella versione DOS occorre lanciare il comando rawrite e specificare il file immagine da usare quando richiesto. Ecco un esempio dell'uso di rawrite da DOS (con rawrite presente sul CD-Rom della distribuzione Linux):

C:\>_ (prompt del DOS con il cursore lampeggiante che attende i comandi dell'utente)

C:\> D: (premere INVIO)
D:\> cd \dosutils (premere INVIO)
D:\> rawrite (premere INVIO)

D:\dosutils> Enter disk image source file name:

..\images\boot.img (premere INVIO)

Enter target diskette drive:

a: (premere INVIO)

Please insert a formatted diskette into drive A: and press --ENTER-- : [Enter]

Quest'ultima riga significa che occorre inserire un dischetto formattato. Quando rawrite ha terminato, il disco di boot di Linux e' pronto. Ma cosa e' il file immagine (image file)? Ogni distribuzione Linux prevede piu' image file, ognuno valido per una data configurazione hardware del PC. Occorre scegliere quella piu' adatta in base alle caratteristiche del proprio PC (ad esempio presenza o meno del CD-Rom). Con la distribuzione Slackware occorrono pero' 2 dischetti. Per installare una vecchia versione della distribuzione Slackware (precedente alla 8.1) infatti, poiche' non e' supportata l'installazione da CD-Rom, occorre creare il dischetto di boot e il dischetto di root. Il dischetto di boot infatti serve per far partire il PC con Linux e contiene solo i file essenziali, mentre il dischetto di root contiene i programmi di utilita' utili ad esempio per procedere all'installazione di Linux (come il programma FDISK ad esempio). Per avvire il PC con il dischetto di boot di Linux appena creato, lasciare il dischetto nel drive e riavviare il PC. Apparira' il prompt:

boot:

Qui premere semplicemente INVIO. Se serve si possono digitare dei parametri aggiuntivi, ma in questo caso non e' richiesto. Esempi di parametri aggiuntivi:

mount=root /dev/hdaX

dove X e' il disco dove e' stata montata la partizione di Linux native, in genere hda1 o hda2 se si dispone di un solo disco. Da non confondere con il comando mount. Qui mount non e' un comando ma solo una etichetta che serve per distinguere i vari tipi di avvio che il dischetto di boot e' in grado di gestire. Oppure:

mount=/dev/fd0

Dove fd0 rappresenta il floppy disk.

Una volta premuto invio al prompt boot: il sistema carichera' il kernel minimo e, se si sta installando una distribuzione Slackware, il sistema chiedera' di inserire il secondo dischetto, quello di root:

VFS: Insert root floppy disk to be loaded into ramdisk and press ENTER

Una volta inserito il dischetto e premuto invio, dopo una serie di altre informazioni a video, Linux invitera' ad entrare come utente 'root'. Premendo nuovamente INVIO si otterra' il prompt '#', che significa utente root. A questo punto e' possibile creare le partizioni Linux, in quanto fino ad ora il sistema e' stato caricato dal dischetto di avvio e continua ad utilizzare tale dischetto. Per poter accedere al disco fisso occorre prima partizionarlo.

8.17 Preparazione del disco, fase 8: creazione partizioni Linux con FDISK

La partizione appena creata con il programma FIPS cosi' come si trova ora e' perfettamente inutilizzabile da Linux. Si tratta infatti di una partizione DOS e non Linux (FIPS e' un programma DOS) e Linux ha bisogno di una partizione particolare. Per creare quindi una partizione Linux occorre usare il programma FDISK. Attenzione: FDISK e' presente in 2 versioni: una per DOS ed una per Linux; inutile dire che a questo punto occorre usare la versione per Linux. ;o) Con FDISK e' possibile creare la partizione o meglio le partizioni per Linux. Linux richiede infatti almeno 2 partizioni: quella di root (/root) e quella di swap (/swap). A differenza di Windows infatti, Linux richiede una partizione a se' stante per la gestione della memoria virtuale (partizione di swap). Windows usa un file (win386.swp) all'interno della stessa partizione dove risiede il sistema operativo. Il sistema adottato da Linux e' percio' molto piu' efficiente. In realta' e' possibile, anzi e' consigliabile creare delle ulteriori partizioni: quella di boot, quella degli utenti e quella usr. Ma vediamo il comando FDISK. La sintassi e':

FDISK dispositivo

dove 'dispositivo' e' il nome del disco che si desidera partizionare. Se il nostro PC contiene un unico disco fisso al cui interno e' gia' presente Windows, il nome del disco sara' hda. Pertanto occorrera' lanciare FDISK in questo modo:

FDISK /dev/hda (e premere INVIO)

FDISK rispondera' con il prompt:

Command (m for help)

Digitando m e premendo INVIO apparira' l'elenco dei comandi utilizzabili ed il corrispondente effetto:

Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
p print the partition table
q quit without saving changs
t change a partition's system id
u change/display entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)

Per creare la prima partizione (quella di swap) occorre verificare lo stato del disco visualizzando l'elenco delle partizioni gia' presenti dando a FDISK il comando p (print the partition table):

p (e premere INVIO)

Verra' visualizzata a video una situazione del disco simile a questa:

Disk /dev/hda: 16 heads, 63 sectors, 1024 cylinders
Units = cylinders of 1008 * 512 bytes

Device Boot Begin Start End Block Id System
/dev/hda1 * 1 1 82 41296 6 DOS 16-bit >=32M
/dev/hda2   83 83 1024 474768 6 DOS 16-bit >=32M

I valori potrebbero essere molto diversi (qui ad esempio e' presente una FAT a 16 bit ed un disco non molto grande), ma non e' importante. E' invece importante sapere che la prima partizione e' quella DOS contenente Windows, mentre la seconda e' la partizione DOS creata con FIPS che occorre sostituire con una partizione Linux. Percio' come prima cosa occorre eliminare la seconda partizione, quella vuota, con il comando d (delete a partition):

d (e premere INVIO)

FDISK chiedera' il numero di partizione da eliminare:

Partition number (1-4):

dove si dovra' rispondere 2:

2 (e premere INVIO)

Visualizzando nuovamente lo stato delle partizioni sul disco con il comando p si otterra' ora:

Device Boot Begin Start End Block Id System
/dev/hda1 * 1 1 82 41296 6 DOS 16-bit >=32M

E' possibile ora creare la nuova partizione Linux con il comando n (add a new partition):

n (e premere INVIO)

FDISK chiedera' il tipo di partizione da creare (primaria od estesa):

Command action:
e extended
p primari partition (1-4)

Si dovra' creare una partizione primaria (p):

p (e premere INVIO)

Ora FDISK chiedera' il numero della partizione e, dovendo ricreare la seconda partizione, si rispondera' 2:

2 (e premere INVIO)

FDISK richiedera' ora il cilindo di partenza della nuova partizione indicando i valori possibili:

First cylinder (83-1024)

Si dovra' rispondere ovviamente digitando il primo cilindro disponibile, in questo esempio sara' 83:

83 (e premere INVIO)

Ora FDISK chiedera' l'ultimo cilindo o comunque la dimensione minima della partizione che si sta creando:

Last cylinder or size or sizeM or sizeK (83-102):

E' possibile specificare il cilindro finale o la dimensione minima in Megabye o in Kilobyte. Poiche' si sta creando una partizione di swap la dimensione sara' ridotta, ad esempio 16 Mb:

16M (e premere INVIO)

Visualizzando la situazione con il solito comando p si otterra':

Device Boot Begin Start End Block Id System
/dev/hda1 * 1 1 82 41296 6 DOS 16-bit >=32M
/dev/hda2   83 83 148 33264 83 Linux native

Come si puo' vedere la partizione appena creata e' una partizione di tipo Linux native (id=83) mentre la partizione che si desidera creare e' di tipo swap. Occorre quindi cambiare il tipo di identificazione della partizione con il comando t (change a partition's system id):

t (e premere INVIO)

Verra' richiesto il numero di partizione da modificare:

Partition number (1-4):

Che ovviamente sara' 2:

2 (e premere INVIO)

Ora FDISK chiedera' il codice esadecimale del tipo di partizione ma sara' possibile visualizzare un elenco di valori possibili se non si conosce gia' il codice:

Hex code (type L to list codes):

digitando L per visualizzare l'elenco dei codici:

L (e premere INVIO)

Si otterra' qualcosa di simile:

0 Empty 9 AIX bootable 75 PC/IX b7 BSDI fs
1 DOS 12-bit FAT a OS/2 Boot Manag 80 Old MINIX b8 BSDI swap
2 XENIX root 40 Venix 80286 81 Linux/MINIX c7 Syrinx
3 XENIX usr 51 Novell 82 Linux swap db CP/M
4 DOS 16-bit <32M 52 microport 83 linux native e1 DOS access
5 Extended 63 GNU HURD 93 Amoeba e3 DOS R/O
6 DOS 16-bit >=32 64 Novell Netware 94 Amoeba BBT f2 DOS secondar
7 OS/2 HPFS 65 novell Netware a5 BSD/386 ff BBT
8 AIX      

E molti altri valori ancora. Come si puo' vedere i sistemi operativi ed i relativi filesystem supportati da Linux sono molti. Questo e' un elenco un po' vecchiotto in quanto non sono presenti ad esempio i filesystem Windows (vfat) a 32 bit, ma la cosa importante e' notare che il codice della partizione Linux di tipo swap e' 82 e non 83. Si potra' percio' indicare 82:

82 (e premere INVIO)

FDISK avvertira' l'avvenuta modifica del tipo di partizione:

Changed system type of partition 2 to 82 (Linux swap)

Si potra' verificare cio' con il solito comando p:

Device Boot Begin Start End Block Id System
/dev/hda1 * 1 1 82 41296 6 DOS 16-bit >=32M
/dev/hda2   83 83 148 33264 82 Linux swap

Per memorizzare le varizioni sul disco si utilizzera' il comando w (write table to disk and exit):

w (e premere INVIO)

A questo punto occorre riavviare il PC senza togliere il dischetto di avvio Linux con il comando shutdown:

shutdown -r now (e premere INVIO)

Una volta riavviato il sistema occorrera' inizializzare la partizione di swap appena creata usando il comando Linux mkswap, specificando la partizione (hda2) ed il numero di blocchi (33264 in questo esempio):

mkswap -c /dev/hda2 33264 (e premere INVIO)

Se si possiede poca memoria RAM (cosa abbastanza inverosimile con i PC di oggi) si puo' attivare subito la partizione di swap con il comando swapon:

swapon /dev/hda2 (e premere INVIO)

Ma poiche' non e' questo il caso, a questo punto e' possibile procedere con FDISK per creare la terza partizione, cioe' la partizione di tipo Linux native. Il procedimento e' lo stesso usato per la partizione di swap solo che occorrera' specificare 3 come numero di partizione, il numero di cilindro immediatamente successivo a quello finale della partizione di swap come cilindro di partenza (in questo esempio 149, dato che la partizione di swap termina al cilindro 148), l'ultimo cilindro utilizzabile come cilindro finale (1024 o superiore). Una volta dato il comando w per scrivere le modifiche sul disco, sara' possibile visualizzare lo stato delle partizioni con il solito comando p:

Device Boot Begin Start End Block Id System
/dev/hda1 * 1 1 82 41296 6 DOS 16-bit >=32M
/dev/hda2   83 83 148 33264 82 Linux swap
/dev/hda3   149 149 1024 441504 83 Linux native

Occorrera' ora formattare la partizione Linux native con il comando mke2fs (che corrisponde al comando format del DOS), specificando il numero della partizione (hda3) ed il numero di blocchi (441504 in questo esempio):

mke2fs -c /dev/hda3 441504 (e premere INVIO)

Riavviare quindi il sistema con il solito comando shutdown:

shutdown -r now (e premere INVIO)

Le partizioni Linux indispensabili sono state create. Come gia' specificato in precedenza, in realta' con le distribuzioni di oggi la procedura di installazione avviene automaticamente facendo partire il PC da CD-Rom, pertanto non occorre conoscere tutti i dettagli esposti per installare Linux. A esempio la distribuzione Mandrake permette di creare le varie partizioni (swap, root, boot, usr etc) usando il programma Diskrake presente all'interno del programma di installazione. E' un programma facile da usare come Partition Magic e permette di vedere graficamente cio' che si sta facendo sul disco. Inoltre la distribuzione Mandrake consente un partizionamento del disco di tipo automatico, preimpostando le partizioni che servono ed i relativi parametri.

8.18 L'installazione dei pacchetti

In questa fase della procedura di installazione Linux chiede quali pacchetti (programmi) si intende installare. Sono presenti centinaia e centinaia di pacchetti all'interno di una distribuzione e non e' possibile spiegarli uno per uno. L'unico consiglio valido e' quindi installare tutto, provare i vari pacchetti e poi magari, quando si e' sufficientemente esperti reinstallare Linux con i soli pacchetti che servono (o semplicemente disinstallare i pacchetti che non si desiderano). Molti pacchetti sono inutili per un utente medio (ad esempio i pacchetti per lo sviluppo di software o per la gestione di un server) ma perche' non provarli ugualmente? Ci si potrebbe scoprire appassionati programmatori o si potrebbe semplicemente essere curiosi di vedere questi pacchetti. Purtroppo non si possono dare altri consigli. Occorre solo provare.

Infine, come fare per eliminare un sistema Linux dal PC? Per eliminare la partizione Linux occorre ripristinare l'MBR di Windows (se si e' installato LILO) avviando il PC con il dischetto di avvio DOS e dando il comando:

FDISK /MBR

Inizio della guida  Le distribuzioni  Indice  Linux

Copyright (c) 2002-2003 Maurizio Silvestri