I come Informatica - I como Informática - I for Information Technology | ||||||||
---|---|---|---|---|---|---|---|---|
PORTALE PORTAL PORTAL |
FORUM FORO FORUM |
Informatica Informática Information Technology |
Stefano Pederzani Consulente informatico |
ARTE |
Homepages |
Curricula Curricula Resumes |
Pubblicità Publicidad Advertisement |
Ci sono tre livelli tra cui distinguere. Di Stefano Pederzani
Quando si parla di filesystem o di "partizioni", su
sistemi operativi odierni, i due concetti vengono confusi.
A volte anche il RAID software viene confuso insieme alle prime due cose.
Ma si tratta di TRE COSE DIVERSE.
Esiste più o meno in tutti i sistemi operativi la possibilità di
creare partizioni logiche e partizioni fisiche sui propri
dischi.
L'esigenza nacque soprattutto con l'aumentare della capacità dei dischi
in commercio.
Facciamo un esempio ideale. Abbiamo il classico disco C: di Windows, ossia il
disco sistema, di 80GB; non ha senso partizionarlo. Se si vuole aggiungere
spazio, si aggiunge un disco da 120GB, perché reperibile in
commercio.
Questo secondo disco non viene partizionato, e sarà il disco D:,
ovviamente con tutti i vantaggi di un disco dati trasferibile facilmente,
perché separato dal disco sistema.
Se io oggi compro un PC, avrò al suo interno un disco SATA da 500GB o
da 1TB. Sarebbe saggio partizionarlo in modo da avere una partizione per C:,
una per D:, come minimo. Poi, visto che lo spazio è tanto,
prevedo una installazione di Linux in dual boot. Considerando che di
partizioni ne posso fare 4, posso permettermi una
partizione per il filesystem sistema di Linux ed una per un filesystem non
di sistema, proprio come in Windows.
Essendo una suddivisione oggettiva operata sull'hardware le partizioni
fisiche possono essere create con qualsiasi sistema operativo e vengono viste
da qualsiasi sistema operativo.
Una volta avviato un sistema operativo, questo può riconoscere
o meno le partizioni degli altri sistemi: quando si legge la tabella delle
partizioni ci sono delle TAG che marcano ognuna con un codice.
Windows interpreta le partizioni marcate con un codice diverso da suoi come
non sue e basta.
Linux riconosce più o meno tutti i codici di partizione ed associa ad
essi una stringa di testo. Alcuni è anche in grado di montarli, se
presente il driver del filesystem, quando esiste. Questo succede ad esempio
con FAT32 e NTFS di Windows. Linux è quindi in
grado di montare filesystem non suoi, se riconosciuti, che possono essere
impostati anche da montare automaticamente al boot come tutti gli altri.
Le partizioni logiche, invece, sia in Windows che in Linux sono una
suddivisione ulteriore di una partizione fisica che in genere non viene vista
al di fuori del sistema operativo che le ha create, un po' come il proprio
filesystem. Sono da evitare perché non portano alcun vantaggio ma
soltanto possibili disguidi.
Vediamo ora la figura 1.
Abbiamo un grafo diviso in due orizzontalmente, per distinguere tra area
hardware sotto ed area software sopra. La realtà non è
esattamente come nello
schema, ma logicamente il grafo funge allo scopo di capire i concetti.
Il rettangolo lungo e stretto rappresenta il nostro hard disk, con le 4
partizioni numerate.
Su di esse vengono creati 4 filesystem, due di Windows e due di Linux.
Le partizioni marchiate come bootable saranno
la 1 e la 3. Le partizioni 1 e 2 saranno marcate come NTFS mentre la 3 e la 4
saranno marcate come EXT4.
In questo schema i filesystem insistono direttamente su partizioni fisiche.
È il caso classico composto da due livelli, perché non è
presente alcun RAID.
Una volta create le partizioni, magari tutte e 4 insieme con la utility di uno
dei due sistemi operativi, ogni sistema operativo formatterà i propri
filesystems. Ma si tratta di due livelli separati: su di una partizione
potrebbe non esserci ancora un filesystem, oppure si può utilizzare in
modo alternativo.
Cominciamo ad introdurre il concetto di RAID, e lo facciamo con il RAID 1,
quello che originariamente veniva chiamato mirroring.
Due volumi fisici uguali, su dischi fisici diversi, vengono accoppiati per
creare un solo volume logico.
Al guastarsi di uno dei due dischi, viene a mancare un volume fisico, ma il il
volume logico continua a funzionare perché si appoggia al volume fisico
superstite, evitando interruzioni di servizio.
Il disco guasto dovrà essere sostituito tempestivamente, e il mirroring
riallineato per ricostituire la ridondanza e di conseguenza la fault
tolerance.
Quasi tutti i sistemi operativi ormai offrono la possibilità di creare
volumi logici mirrorando dei volumi fisici. La terminologia cambia da SO a SO,
ma più o meno è questa.
La caratteristica principale del RAID 1 software è quella della
flessibilità: partizionando i dischi, si creano coppie di partizioni
di uguale grandezza su dischi diversi per accoppiarle in RAID 1 come nella
figura 2.
Nell'esempio utilizziamo una macchina con soltanto il sistema operativo Linux
installato. Abbiamo addirittura la possibilità di gestire 2 dischi di
dimensioni diverse, avendo alcune accortezze.
Dovremo fare boot con il DVD di installazione di Linux e preparare le
partizioni ancora prima di procedere con il setup. Se l'utility del DVD di
installazione non ci piace, possiamo usarne un'altra, ma abbiamo bisogno di un
Linux attivo per impostare il RAID 1, facendo boot dal DVD di
installazione.
In questo caso sceglieremo la grandezza per le prime 3 partizioni che avranno
il mirroring: la grandezza del disco 1 viene divisa in 3 parti di grandezza
opportuna.
Andiamo a creare 3 partizioni sul disco 2 con le stesse grandezze del disco 1,
e lo spazio rimanente diventa la quarta partizione.
Attenzione: per gestire il RAID su Linux occorre marcare le partizioni
1, 2 e 3 di entrambi i dischi con la TAG "Linux RAID" per far
sì che al boot Linux assembli le varie parti dei RAID e li renda
disponibili automaticamente.
La partizione 4 del secondo disco invece sarà marcata EXT4
perché priva di RAID (non ha un copia), e su di essa va creato un
filesystem direttamente.
Sempre prima di lanciare il setup potremo creare il RAID 1 sulle prime 3
partizioni, che nello schema ho colorato con 3 colori diversi: con comandi
opportuni si creano i 3 volumi logici dei 3 RAID, che sono
rappresentati dal rettangolo tricolore in alto nello schema, in area
software.
Nello schema, la quarta partizione del secondo disco rimane a livello
hardware, senza RAID.
Ora si può procedere con il setup, che nelle fasi iniziali
proporrà delle partizioni per i 3 filesystem che si vogliono fare e
per la partizione di swap (memoria virtuale).
In passato alcuni sistemi operativi non supportavano il RAID software, mentre
altri ne soffrivano l'overhead. Esiste anche un I/O doppio del normale per
gestire un RAID software.
Un RAID hardware permette di demandare ad una scheda controller RAID tutto il
lavoro, anche all'interno di un PC.
Questa soluzione non ha una grande flessibilità: in genere non sono
consentiti dischi di grandezza diversa, e comunque non si può lavorare
sulle partizioni come nel RAID software, però non pesa per niente sul
sistema.
La scheda controller RAID, nello schema a livello hardware, controlla la
coppia di dischi uguali e tiene allineato un RAID 1 con il firmware
installato. La CPU integrata nella scheda esegue il firmware rendendo
disponibile alla macchina un disco virtuale, un volume logico quindi, che il
sistema operativo "vede" come fosse un disco fisico qualsiasi.
Ecco quindi che può essere "tagliato a fette" ossia
partizionato fisicamente come se fosse un disco vero, come nel primo
caso di questo articolo.
Il mirroring hardware costituisce una situazione in cui due o più
dischi interni si comportano come se fossero in un box esterno, con la scheda
RAID che si comporta da controller a due sensi: due controller semplici lato
disco, ed una controller "intelligente" lato macchina.
Ancora: avendo un disco logico disponibile sulla macchina, partizionabile
come se fosse fisico, si potrebbe ulteriormente costruire sopra di esso un
RAID software, con l'ausilio di un altro disco logico anch'esso costituito da
un RAID hardware su due dischi fisici. Questa pratica, tecnicamente possibile,
è fortemente sconsigliata in quanto andrebbe ad appesantire
inutilmente la CPU e l'I/O del sistema quando un RAID già è
presente, oltre ad abbassare le prestazioni date le risorse impiegate
per tenere allineato un doppio RAID.
Alcune implementazioni di RAID hardware prevedono un riallineamento
intelligente, che consente addirittura di clonare sistemi, purché su
hardware identico, allineando al mirroring un terzo disco, che poi
verrà usato sulla seconda macchina per allineare il quarto, ed
ottenendo cos� una seconda coppia di dischi allineati sul secondo sistema.
Questa pratica si è invece dimostrata valida, dopo accurati controlli,
soprattutto per costruire una macchina di riserva pronta a sostituire la
prima.
Di Stefano Pederzani. Bologna, novembre 2015
I come Informatica - I como Informática - I for Information Technology | ||||||||
---|---|---|---|---|---|---|---|---|
Vai al PORTALE - Ir a el PORTAL - Go to PORTAL |
Stefano Pederzani Consulenze informatiche Bologna |
Automatic barriers and access control Barriere stradali e controllo accessi |
MMS IMPIANTI Cablaggio strutturato - telefonia Elettricità - climatizzazione |
DISCLAIMER
Tutte le immagini del sito sono di proprietà di Stefano Pederzani
o dei rispettivi proprietari quando specificato.
Ogni persona si assume la responsabilità di ciò che
afferma.
Per qualsiasi problema contattare:
[email protected]
Ogni articolo o immagine che rechi offesa a qualcuno verrà rimosso.
Todas las imagenes del sitio pertenecen a Stefano Pederzani u a los
respectivos propietarios cuando especificado.
Toda persona asume la responsabilidad de lo que afirma.
Por cualquier problema ponerse en contacto con:
[email protected]
Cada articulo u imagen que ofenda alguien será quitado.
Every images on this site are property of Stefano Pederzani
or property of specified owners.
Each person takes responsibility of what he or she claims.
For any problems please contact:
[email protected]
Every article or image offending somebody will be removed.