Anda di halaman 1dari 48

GNU/Linux Intermedio

Prima Lezione:

INSTALLARE GNU/Linux

Da dove si installa?

Le periferiche da cui possibile installare GNU/Linux


sono diverse:

CD-Rom / DVD-Rom (uno o piu)

Reperibili:

In negozio/centri commerciali
Soprattutto distribuzioni commerciali, vengono
solitamente accompagnate da un corposo manuale
tecnico (che copre installazione, configurazione, uso e
risoluzione problemi) e da garanzia.
Il costo si aggira solitamente intorno ai 50 euro
Esempi:
Novell Linux (SuSe)
RedHat Linux Enterprise Edition (difficile trovare)

Da dove si installa?

Le periferiche da cui possibile installare GNU/Linux


sono diverse:

CD-Rom / DVD-Rom (uno o piu)

Reperibili:

In edicola
Allegati solitamente a distribuzioni che parlano di
GNU/Linux (costo medio 5 euro).
Nessuna garanzia (nemmeno sul funzionamento)
All'interno della rivista si trova solitamente una breve
spiegazione delle peculiarit della distribuzione
allegata
Ogni mese una versione diversa (anche se le
distribuzioni principali vengono solitamente allegate
pochi giorni dopo il rilascio)

Da dove si installa?

Le periferiche da cui possibile installare GNU/Linux


sono diverse:

CD-Rom / DVD-Rom (uno o piu)

Reperibili:

Sul web
Ogni distribuzione possiede un proprio sito web, che
solitamente mette a disposizione quella che viene
chiamata immagine ISO (dall'estensione .iso)
Si tratta di una vera e propria immagine del disco,
delle dimensioni di circa 700Mb (possono essere
diverse)
Dandola in pasto ad un masterizzatore cd (su qualsiasi
sistema operativo) e bruciandola (gergale), si
ottiene un cdrom avviabile

Da dove si installa?

Le periferiche da cui possibile installare GNU/Linux


sono diverse:

CD-Rom / DVD-Rom (uno o piu)

Contengono tutti i pacchetti che compongono la


distribuzione

La distribuzione viene suddivisa in tanti pezzettini


atomici, detti pacchetti, ognuno dei quali contiene un
applicativo, un set di librerie, della documentazione.
Esiste il pacchetto di Mozilla Firefox, il pacchetto
delle pagine di manuale, il pacchetto del kernel...
La composizione di tutti questi pacchetti viene detta
distribuzione, ed il sistema completo
Ogni distribuzione presenta un diverso set di pacchetti,
scelti in modo da ottenere un preciso scopo: un sistema
server particolarmente sicuro, un sistema adatto agli
utenti meno esperti, e via dicendo

Da dove si installa?

Le periferiche da cui possibile installare GNU/Linux


sono diverse:

CD-Rom / DVD-Rom (uno o piu)

Per procedere all'installazione, si deve avviare il sistema


a partire dal cd.

Lo si inserisce nel lettore


Si riavvia il computer
Si imposta il BIOS in modo da consentire l'avvio tramite
CD-Rom
Si attende il caricamento del sistema

A seconda delle tipologie di cd, si potr avere di fronte


il programma di installazione, oppure un sistema
operativo completo, che potr eventualmente essere
installato tramite un'apposita procedura (live-CD)

Da dove si installa?

Le periferiche da cui possibile installare GNU/Linux


sono diverse:

Installazione via rete

Solitamente si appoggia ad un cd-rom, che non fa altro


che configurare la rete ed installare un sistema
minimale
Dopo aver riavviato il computer, togliendo il cd-rom, il
sistema minimale proceder all'installazione a partire da
server remoti, solitamente messi a disposizione da chi
sviluppa la distribuzione
Un classico esempio di questa tecnologia e la netinstall di Debian
Il vantaggio che il software scaricato solitamente piu
aggiornato di quanto non possa esserlo su cd/dvd-rom
Lo svantaggio sono le connessioni lente

Requisiti minimi

I requisiti minimi di un sistema GNU/Linux possono


variare moltissimo a seconda dell'uso che ne vogliamo
fare

Sistemi Embedded

Si tratta di sistemi con disponibilit hardware


ridottissime (palmari, cellulari, lavatrici...)
Per consentire a Linux di girare su queste piattaforme,
possibile ridurre la dimensione del codice a livello di
configurazione del kernel, oppure modificando
manualmente i sorgenti ed eliminando tutte le parti
superflue.
Non si tratta di un'operazione banale

Requisiti minimi

I requisiti minimi di un sistema GNU/Linux possono


variare moltissimo a seconda dell'uso che ne vogliamo
fare

Sistema firewall

Un firewall non deve fare altro che filtrare la rete in


entrata ed in uscita, verificando che i pacchetti in
viaggio rispettino una serie di regole. Eventualmente
intervenire su quei pacchetti che non corrispondono a
queste regole (eliminare il pacchetto, dirottarlo...)
Le risorse hardware necessarie a fare ci sono
ridottissime: un processore da 100/200Mhz, 16-32Mb di
RAM, un floppy disk, una chiavetta USB o un disco Flash
su cui memorizzare i dati, sono piu che sufficienti.
Esistono distribuzioni pensate a questo scopo: LEAF

Requisiti minimi

I requisiti minimi di un sistema GNU/Linux possono


variare moltissimo a seconda dell'uso che ne vogliamo
fare

Sistema server

A differenza di quello che si pensa, un server non ha


solitamente bisogno di grandi risorse (non sono
necessarie periferiche audio/video avanzate)
Possono crescere notevolmente a seconda dell'uso

Streaming audio/video
Grande numero di utenti connessi (effetto SlashDot)

Possono essere sufficienti 500Mhz e 128Mb di RAM


Grande importanza per va data alla sicurezza dei dati:
dischi allo stato solido, componenti molto resistenti
(magari senza ventole), sistemi di backup (nastro)

Requisiti minimi

I requisiti minimi di un sistema GNU/Linux possono


variare moltissimo a seconda dell'uso che ne vogliamo
fare

Sistema desktop

Sono i sistemi che richiedono maggiori requisiti, ma


possono variare anche qui davvero parecchio
E' possibile far girare decentemente un sistema che
faccia da solo client web/posta con 1Ghz, 256Mb di RAM
ed un disco da una ventina di GB, ma se si vuole fare
elaborazione grafica, montaggi audio, o calcolo
intensivo (anche i videogiochi) allora ci vuole molto di
piu, fino ad arrivare al top di gamma
Una via di mezzo va bene: 3Ghz, 512Mb di RAM, una
buona scheda video (accelerazione grafica), 100Gb di
memoria di massa

Piu sistemi sul sistema

Come molti di voi sapranno, su uno stesso computer


possibile installare piu sistemi operativi.
Una volta completata l'installazione, in fase di avvio un
menu di selezione ci consente di scegliere quale sistema
operativo avviare per quella sessione.
Quel menu di selezione, parte integrante di un
applicativo, detto Boot Loader la cui funzione
principale, una volta eseguito dal BIOS, quella di
caricare in memoria il kernel del sistema operativo
prescelto, e consegnare a lui il controllo dell'esecuzione.
Ogni sistema operativo, risiede solitamente su un disco
diverso, ma possibile suddividere uno stesso disco fisso
in piu parti (dette partizioni) ed utilizzarne alcune per
installare diversi sistemi operativi (vedremo in dettaglio)

Piu sistemi sul sistema

I boot-loader piu utilizzati sui sistemi GNU/Linux sono


fondamentalmente 2:

LiLo

Estremamente semplice e compatto, viene installato


interamente all'interno dell'MBR (primi 512 byte) del
disco da cui il BIOS esegue l'avvio.
Pu tranquillamente essere ospitato all'interno di un
floppy disk
Una delle principali limitazioni di LiLo, quella di non
poter accedere al filesystem su cui risiede il kernel da
avviare.
E' quindi necessario che l'indirizzo a cui questo si trova
venga specificato in fase di installazione di LiLo
Nel caso in cui questo venga cambiato o spostato, si
dovr necessariamente reinstallare LiLo

Piu sistemi sul sistema

I boot-loader piu utilizzati sui sistemi GNU/Linux sono


fondamentalmente 2:

GRUB

Inizialmente nato per essere il boot-loader del kernel


Hurd , un boot-loader molto piu grande e complesso di
LiLo, al punto che non entra completamente nell'MBR,
ma vi installa uno dei suoi 3 stages, che si occupa di
consentire l'accesso al filesystem dove si trovani gli altri
Gli altri 2 stage di Grub, si occupani di eseguire il boot
vero e proprio, caricando in RAM il kernel prescelto.
Questa divisione in parti consente a Grub di accedere a
diversi filesystem (fat, ext3, reiserfs...) e risolvere
dinamicamente l'indirizzo fisico del kernel da avviare, il
che lo rente estremamente flessibile
Configurabile all'avvio (tasto e)

Piu sistemi sul sistema

La configurazione di entrambi i filesystem


estremamente semplice.

LiLo

Il file di configurazione di LiLo si trova in /etc/lilo.conf

Si compone di due parti

Nella prima sezione possibile specificare le opzioni


che riguardano il boot-loader in se:

boot = /dev/hda
Dove il boot-loader verr scritto
timeout = 120
Il boot-loader attender 120 decimi di secondo prima
di avviare il kernel di default (il primo della lista se
non specificato ulteriormente)
default = linux-2.6.14
Definisce quale sistema operativo avviare di default.

Piu sistemi sul sistema

Nella seconda sezione del file di configurazione


troviamo i diversi sistemi da avviare:

label= Linux2.6.14

Il nome che apparir nell'elenco. Niente spazi.


image = /boot/vmlinuz-2.6.14
Il file del kernel da avviare
root = /dev/hda1
La root da usare per questo kernel (vedremo)
read-only
Questo chiede che la partizione di root sia
inizialmente montata in sola lettura e che ne venga
controllata l'integrit
append = acpi=off

L'opzione append consente di specificare parametri


da passare al kernel. In questo caso, ad esempio, la
disabilitazione dell'ACPI (controllo av. alimentazione)

Piu sistemi sul sistema

Per avviare sistemi non Linux, possiamo usare, al posto


dell'opzione image, la other
other = /dev/hdb1

Anche in questo caso andr specificata una label in


modo da poter scegliere questo sistema operativo nel
menu al momento dell'avvio.
Al termine della configurazione, una volta salvato il file
/etc/lilo.conf dovremo eseguire il comando lilo -v che
provvede a compilare il boot-loader e ad installarlo
dove indicato dal parametro boot del file di
configurazione.
Maggiori dettagli sulle opzioni di configurazione di LiLo,
sono elencati nell'apposita pagina di manuale:
man lilo.conf

Piu sistemi sul sistema

La configurazione di entrambi i filesystem


estremamente semplice.

Grub

Il file di configurazione di GRUB si trova nella cartella


/boot/grub/ e si chiama menu.lst
Si tratta di un file estremamente semplice, molto simile
a quello di LiLo, a differenza del quale non prevede =
Anche qui troviamo l'opzione timeout, l'opzione default,
che consente di definire quale dei sistemi installati
avviare per default (anche se LiLo prende come
parametro un label, mentre Grub un numero ordinale)
Grub presenta inoltre un'opzione fallback, che
consente di definire l'ordinale di un secondo sistema
operativo (o kernel) da avviare nel caso in cui fallisca
l'avvio del primo.

Piu sistemi sul sistema

L'opzione label di LiLo, in Grub si chiama title e a


differenza dell'altro boot-loader, consente l'inserimento
di spazi

L'opzione image viene sostituita da quella kernel


che include anche la append

kernel /boot/vmlinuz-2.6.14 ro vga=773

La piu notabile differenza con LiLo, la troviamo nel


modo con cui Grub definisce la root da cui avviare il
sistema. Mentre LiLo utilizza il nome della device, Grub
utilizza una numerazione tutta sua:

title GNU/Linux 2.6.14

root (hd0,0)

Il primo 0 indica il controller su cui si trova il disco, il


secondo il numero della partizione.
Per avviare sistemi non-linux, aggiungeremo le opzioni
makeactive e chainloader +1 a root e title

Mettiamoci su le mani

Avviare il sistema

Per accedere al BIOS,


dovremo premere il tasto
CANC durante i primi
momenti della fase
d'avvio (durante il cosi
detto POST, Power On
Self Test)

Su alcuni sistemi
(soprattutto i portatili)
possibile che questo
venga cambiato, e
potrebbe quindi essere
necessario usare un altro
tasto, come F2 o F12

Mettiamoci su le mani

A seconda del software


che gestisce il BIOS,
potreste trovarvi a
modificare una sequenza
prefissata di periferiche
d'avvio nella prima pagina,
o dovervi spostare in una
pagina dedicata
Solitamente vi troverete
davanti una schermata di
questo tipo, e potrete
cambiare i vari settaggi
premendo +, - o spazio, e
usando [enter] ed [esc]
per muovervi tra i menu

Mettiamoci su le mani

Altre volte potreste


trovarvi ad usare le
freccette, ed i tasti PgUp
e PgDown
Terminata la
configurazione
(impostando il CDRom
come prima periferica
d'avvio), tornate alla
schermata principale (esc)
e scegliete Save Changes
and Exit, e confermate il
salvataggio.
Il sistema si riavvia, con la
configurazione aggiornata

Mettiamoci su le mani

A questo punto, inserito il


cd-rom nel lettore, il
sistema si avvier a partire
da esso.
Come prima schermata,
appare il logo di Debian che
ci consente di passare alcuni
parametri opzionali al kernel
ed eventualmente
consultare una pagina di
aiuto (F1)
Premiamo il tasto invio

Mettiamoci su le mani

Durante il caricamento del


sistema, alcuni sistemi
visualizzano una barra di
caricamento.
Non si tratta di un
comportamento standard
del kernel di Linux, ma di
una modifica grafica
piuttosto comune.
Alcuni di questi sistemi
consentono di visualizzare
i messaggi caratteristici
dell'avvio di Linux
premendo il tasto ESC in
questa fase.

Mettiamoci su le mani

A seconda che il cd di
installazione sia riuscito o
meno ad avviare
l'interfaccia grafica, ci
troveremo di fronte un
menu in grafica testuale
(ncurses) o grafico.
Ci viene chiesto di
selezionare la lingua
dell'installazione
Possono esistere diverse
varianti della stessa lingua
e ci verr chiesto di
scegliere nella schermata
successiva

Mettiamoci su le mani

Ci viene poi chiesto di


selezionare la tipologia di
tastiera che vogliamo
utilizzare.
La scelta proposta viene
ricavata direttamente
dalla scelta della lingua
effettuata poco prima.
Si passa poi alla scansione
del sistema alla ricerca di
un lettore cdrom, il
caricamento dell'immagine
ivi contenuta, analisi dei
moduli...

Mettiamoci su le mani

Dopo aver rilevato anche


la rete ed eventualmente
averla configurata tramite
dhcp, l'installer ci chiede
di assegnare un nome al
sistema.
Ci verr anche chiesto un
eventuale nome di
dominio, nell'ipotesi in cui
il sistema sia un server e
debba gestire un dominio
IP (non confondere con i
domini Microsoft)
Infine giungiamo al
partizionamento.

Il partizionamento

Una delle fasi piu delicate dell'installazione del sistema


(oltre a quella dell'installazione del boot-loader, che
Ubuntu automatizza in fase di installazione ma che
vedremo lo stesso nelle prossime lezioni) certamente
quella del partizionamento.
Questa fase prevede che i dischi fissi vengano configurati
in modo da poter contenere i files che compongono il
sistema. Un disco fisso infatti, non pu contenere alcun
dato, fino al momento in cui non viene costruita al suo
interno una struttura (il filesystem) che consente la
memorizzazione ordinata dei files su di esso.
Piu filesystem possono risiedere sullo stesso disco,
utilizzando (appunto) delle partizioni. Una partizione pu
contenere un solo filesystem, anche se non sempre vero
il contrario (RAID)

Il partizionamento

Il partizionamento si pu eseguire in diversi modi:

Da riga di comando

Da interfaccia grafica

Utilizzando strumenti come cfdisk o fdisk che non


sono particolarmente difficili da usare anche se spesso
gli utenti alle prime armi sono spaventati
dall'impossibilit di usare il mouse
Usando una delle migliaia di applicazioni in grado di
eseguire questa operazione. Tra le piu famose, QtParted
e Gparted (usata da Ubuntu nel suo installer)

Durante il partizionamento di un disco al fine di


installarvi un sistema GNU/Linux, dovremo prevedere
alcune partizioni di base: una conterr il filesystem /
(root) ed una sar la partizione di swap

Il partizionamento

La partizione root, quella che sar destinata a


contenere il filesystem principale del sistema.
La radice di questo filesystem, la cartella / (che si legge
root), l'origine dell'albero delle cartelle che
comprender tutte le cartelle del sistema.

etc/

boot/

grub/

usr/

samba/

bin/

home/

nomeutente/

Il partizionamento

Ci tengo a far notare che in questo modo ogni file e


cartella pu essere univocamente indirizzato all'interno
del filesystem.
Se un file pippo.txt si trova sul desktop dell'utente
pluto, da qualunque punto del sistema potremo
raggiungerlo tramite l'indirizzo

/home/pluto/Desktop/pippo.txt

Notare il carattere / all'inizio dell'indirizzo. Facendo


partire l'indirizzamento proprio dalla root (la radice)
staremo utilizzando un indirizzo di tipo assoluto.
Se non avessimo messo il carattere / all'inizio, avremmo
cercato di indirizzare una cartella home all'interno della
cartella corrente.

Il partizionamento

La seconda partizione che vi ho citato, che abbiamo


chiamato swap una partizione particolare, il cui
contenuto non accessibile agli utenti del sistema.
All'interno di questa partizione vengono memorizzati i
dati che non entrano piu nella memoria RAM.
Spieghiamo il meccanismo:

Quando un eseguibile viene avviato, il sui codice viene


caricato nella memoria RAM del sistema. Finch c' posto,
tutto va bene.

Quando il posto non c', bisogna farlo: si prende allora un


altro programma caricato in RAM e lo si scrive nella swap
(tanto il processore esegue sempre un processo alla volta)

Quando sar necessario rimettere in esecuzione quel


programma, verr ricaricato in RAM, leggendolo dalla swap

Il partizionamento

Ovviamente, essendo l'accesso ai dischi estremamente


piu lendo rispetto all'accesso alla RAM, questo poterter
un notevole rallentamento del sistema (fenomeno detto
trashing), ma eviter che lo stesso di pianti
completamente una volta esaurita la memoria RAM.
Fino a qualche tempo fa, si consigliava di dare alla
partizione di swap una dimensione pari a 2 volte quella
della memoria RAM.
Con il crescere della RAM disponibile per, non piu
necessario creare partizioni di swap di queste dimensioni.
La cosa migliore crearla leggermente piu grande della
RAM disponibile.
Questo consente tra l'altro di salvarvi tutta la RAM in
modo da consentire il cosi detto suspend to disk

Il partizionamento

La root e la swap sono le due partizioni che devono


in ogni caso esistere sul sistema ( possibile fare a meno
della swap, ma non consigliato).
Si possono per definire partizioni aggiuntive, che
verranno poi innestate sull'albero della /.
Spesso e volentieri si crea una terza partizione sul
sistema, destinata a contenere le Home degli utenti.

Questo consente da un lato di limitare lo spazio a


disposizione degli utenti evitando che file molto grandi in
questa cartella vadano a ridurre lo spazio a disposizione del
resto del sistema (vitale)

Dall'altro consente di sostituire la / (quindi il sistema)


con una nuova installazione senza perdere i dati relativi
agli utenti (che trovandosi su un'altra partizione non
vengono modificati)

Il partizionamento

Tutte le partizioni che compongono il sistema devono


essere montate (innestate sulla /) durante l'avvio del
sistema.
Per fare questo, vengono scritte all'interno del file
/etc/fstab che viene letto in fase di avvio e tutte le
partizioni configurate vengono montate nella loro
corretta posizione.

La struttura del file

Su colonne, troviamo:

/etc/fstab

Device da montare

Dove montarla

Tipologia di filesystem

Opzioni di montaggio

estremamente semplice.

Il partizionamento

Ecco un esempio di

/etc/fstab

# <dev>

<dir>

<type>

<options>

/dev/hda1

/mnt/windows

ntfs

defaults,umask=022 0

/dev/hda2

swap

swap

defaults

/dev/hda3

reiserfs

defaults

/dev/hda4

/home

reiserfs

defaults

/dev/sda1

/mnt/sda1

auto

defaults,noauto

auto

ro,user,noauto

/dev/hdc

/mnt/dvd

<dump> <pass>

Mettiamoci su le mani

Torniano alla nostra


installazione, ed in
particolare alle opzioni di
partizionamento.
La prima cosa che ci viene
proposta quella di
utilizzare tutto il disco
fisso del sistema, o il
massimo spazio libero
contiguo
Nel caso in cui questo non
fosse possibile/gradito,
selezioneremo la voce
manuale

Mettiamoci su le mani

Apparir una lista


contenente tutte le
partizioni attualmente
esistenti sul sistema, sui
diversi (eventuali) dischi
fissi presenti.
Selezionando

una partizione

potremo accedere ad
un menu di modifica

un disco

andremo a riscrivere
la sua partition table

Mettiamoci su le mani

Potremo anche chiede


all'installer di partizionare
automaticamente lo
spazio che abbiamo
riservato a Linux
(partizione primaria o
disco che sia)
In questo caso, ci verr
chiesto di definire come
vogliamo che questo venga
fatto.
E' una buona idea, anche
su un sistema desktop,
separare la /home dal
resto del sistema

Mettiamoci su le mani

Una volta terminato il


partizionamento, ci verr
mostrata a video la
schermata riepilogativa
con l'elenco di tutte le
partizioni presenti, le loro
dimensioni, i loro punti
di mount, la loro
tipologia.
Dovremo selezionare
Terminare il
partizionamento e
confermare nella
schermata successiva per
applicare le modifiche.

Mettiamoci su le mani

A questo punto tocca alla


password dell'utente root
(da confermare per
sicurezza)
L'utente root
l'amministratore del
sistema, che vanta
privilegi particolari e non
dovrebbe essere usato se
non per operazioni di
manutenzione/riconfigura
zione del sistema e
installazione di nuovi (e
fidati!) programmi.

Mettiamoci su le mani

In seguito, dovremo
assegnare nome,
username e password ad
un utente non privilegiato,
che poi quello con cui
utilizzeremo realmente il
sistema
Questo utente avr pieni
poteri all'interno della
propria home directory,
ma per apportare
modifiche piu importanti
al sistema, dovr
necessariamente
autenticarsi.

Mettiamoci su le mani

A questo punto, le
informazioni di base del
sistema sono state
introdotte, e si pu
procedere
nell'installazione del
sistema base, che verr
poi esteso nel sistema
definitivo.
Questa una peculiarit
di net-install. Altri
installer provvedono
direttamente a creare il
sistema completo.

Mettiamoci su le mani

La cosa che ci viene


chiesta al termine
dell'installazione del
sistema base infatti, se
vogliamo estendere
l'installazione grazie
all'uso di un mirror e ci
viene chiesto di scegliere
quale dei tanti disponibili
vogliamo utilizzare
Subito dopo, ci viene
chiesto di inserire le
impostazioni di un
eventuale proxy web atto
a raggiungere il mirror.

Mettiamoci su le mani

A questo punto, APT


(gestore di pacchetti)
scandisce il mirror alla
ricerca dei pacchetti
disponibili
Una volta terminata la
scansione, ci proporr un
menu tramite il quale
potremo selezionare le
categorie di software da
installare (usando la barra
spaziatrice per
selezionare)

Mettiamoci su le mani

Selezionate le macrocategorie di software,


APT comincia a scaricare
i pacchetti dal mirror,
installarli ed
eventualmente
configurarli la dove
necessario.
Per filosofia, il
configuratore (qualora
avesse bisogno di input da
parte dell'utente) propone
come scelta di default
quella che comporta meno
problemi.

Mettiamoci su le mani

Terminata l'installazione
dei vari pacchetti
selezionati, viene il
momento di installare il
boot-loader
Debian installa il bootloader Grub, scegliendo di
default l'MBR come
destinazione e
configurandolo in gran
parte autonomamente.

Mettiamoci su le mani

A questo punto
l'installazione terminata.
Possiamo banalmente
riavviare il sistema, e,
tolto il cdrom, ci
troveremo di fronte a
Grub che ci chiede quale
kernel avviare.
Alla fine del processo
d'avvio, potremo loggarci
ed utilizzare il sistema.
NB: Debian non si avvia
automaticamente da
interfaccia grafica.

Anda mungkin juga menyukai