LVM: funzionamento: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
m
nessun oggetto della modifica
(border-radius)
mNessun oggetto della modifica
Riga 2: Riga 2:
In questa sezione sono introdotti i principi elementi che compongo l'''LVM'' ed è introdotto il funzionamento dello stesso.
In questa sezione sono introdotti i principi elementi che compongo l'''LVM'' ed è introdotto il funzionamento dello stesso.


==La struttura base dell'''LVM''==
==La struttura base dell'''LVM''==
Il LVM basa il proprio funzionamento sulla seguente struttura:
Il LVM basa il proprio funzionamento sulla seguente struttura:
; ''Volume Group'' ('''VG'''): trattasi del più alto livello di astrazione che raggruppa in sé una collezione di Logical Volume e di Physical Device.
; ''Volume Group'' ('''VG'''): trattasi del più alto livello di astrazione che raggruppa in sé una collezione di Logical Volume e di Physical Device.
Riga 25: Riga 25:
Come si evince dalla figura precedente, '''l'elemento innovativo (che quindi conferisce maggiore flessibilità ad LVM) è il Volume Group'''.<br/>
Come si evince dalla figura precedente, '''l'elemento innovativo (che quindi conferisce maggiore flessibilità ad LVM) è il Volume Group'''.<br/>
Esso in pratica fonde i volumi fisici disponibili (partizioni varie, raid, etc.) in una specie di "massa grezza" pronta per essere manipolata al fine di creare uno o più Logical Volume.<br/>
Esso in pratica fonde i volumi fisici disponibili (partizioni varie, raid, etc.) in una specie di "massa grezza" pronta per essere manipolata al fine di creare uno o più Logical Volume.<br/>
Questi ultimi, come già detto, svolgono il ruolo delle partizioni quindi sono disponibili per essere innestati nel sistema in specifici mountpoint ma in una maniera più flessibile (in termini di espandibilità e riduzione di spazio) rispetto alle partizioni tradizionali.
Questi ultimi, come già detto, svolgono il ruolo delle partizioni quindi sono disponibili per essere innestati nel sistema in specifici [[mountpoint]] ma in una maniera più flessibile (in termini di espandibilità e riduzione di spazio) rispetto alle partizioni tradizionali.


==Approfondimenti==
==Approfondimenti==
Riga 42: Riga 42:
All'atto pratico <u>la modalità di funzionamento dell'''LVM''</u> può essere riassunta nel seguente modo. L'unità principale sulla quale si basa il sistema è il '''Volume Group'''. Detto ''VG'' verrà da noi dotato di una certa capacità di memoria pari alla capacità di tutti i supporti di massa che gli assegnaremo.<br />
All'atto pratico <u>la modalità di funzionamento dell'''LVM''</u> può essere riassunta nel seguente modo. L'unità principale sulla quale si basa il sistema è il '''Volume Group'''. Detto ''VG'' verrà da noi dotato di una certa capacità di memoria pari alla capacità di tutti i supporti di massa che gli assegnaremo.<br />
Tali supporti possono essere dischi SATA, PATA, USB, configurazioni RAID, SSD o quant'altro e mi riferirò ad essi come '''Physical Device'''. I ''PD'' possono anche non avere alcuna partizione, seppure si consiglia di dotarli almeno di una partizione primaria siccome altri sistemi operativi, qualora non riscontrino alcuna partizione, potrebbero inavvertitamente sovrascriverli.<br />
Tali supporti possono essere dischi SATA, PATA, USB, configurazioni RAID, SSD o quant'altro e mi riferirò ad essi come '''Physical Device'''. I ''PD'' possono anche non avere alcuna partizione, seppure si consiglia di dotarli almeno di una partizione primaria siccome altri sistemi operativi, qualora non riscontrino alcuna partizione, potrebbero inavvertitamente sovrascriverli.<br />
I ''PD'', quando sono assegnati ad un ''VG'', sono gestiti dall'''LVM'' suddividendo lo spazio disponibile su ognuno di essi tramite una suddivisione in unità fisiche ridotte (di default di qualche Mb) dette '''Physical Extent'''. Per questo motivo, prima di aggiungere un ''PD'' ad un ''VG'' sarà necessario inizializzarlo proprio per creare su di esso i vari ''PE''.<br />
I ''PD'', quando sono assegnati ad un ''VG'', sono gestiti dall'''LVM'' suddividendo lo spazio disponibile su ognuno di essi tramite una suddivisione in unità fisiche ridotte (di default di qualche MB) dette '''Physical Extent'''. Per questo motivo, prima di aggiungere un ''PD'' ad un ''VG'' sarà necessario inizializzarlo proprio per creare su di esso i vari ''PE''.<br/>
Quando creeremo un '''Logical Volume''' (ovvero lo spazio che useremo come "partizione") l'''LVM'' gestirà lo spazio virtuale (logico) da noi richiesto suddividendolo in tanti '''Logical Extent''' tali da permettere di distribuire ogni ''LE'', che altro non è che un pezzo del nostro ''LV'', tra i ''PD''. Questa allocazione avviene facendo corrispondere ad ogni ''LE'' un determinato ''PE'' secondo necessità.<br />
Quando creeremo un '''Logical Volume''' (ovvero lo spazio che useremo come "partizione") l'''LVM'' gestirà lo spazio virtuale (logico) da noi richiesto suddividendolo in tanti '''Logical Extent''' tali da permettere di distribuire ogni ''LE'', che altro non è che un pezzo del nostro ''LV'', tra i ''PD''. Questa allocazione avviene facendo corrispondere ad ogni ''LE'' un determinato ''PE'' secondo necessità.<br />
<br />
<br />
Da tale modo di spezzettare i ''LV'' ed i ''PD'' nasce tutta la potenzialità dell'''LVM''. Infatti, quando all'interno del nostro ''VG'' creeremo un ''LV''  l&#39;''LVM'' non sarà obbligato a distribuire lo spazio da noi richiesto tra i ''PD'' ma tra le ''PE''. Pertanto sarà possibile spostare/allargare/ridurre il ''LV'' semplicemente agendo sulla distribuzione delle ''LE'' tra i ''PE'' disponibili.<br />
Da tale modo di spezzettare i ''LV'' ed i ''PD'' nasce tutta la potenzialità dell'''LVM''. Infatti, quando all'interno del nostro ''VG'' creeremo un ''LV''  l'''LVM'' non sarà obbligato a distribuire lo spazio da noi richiesto tra i ''PD'' ma tra le ''PE''. Pertanto sarà possibile spostare/allargare/ridurre il ''LV'' semplicemente agendo sulla distribuzione delle ''LE'' tra i ''PE'' disponibili.<br />
Ad esempio, quando in questo articolo creeremo il nostro ''LV'' in modalità mirrored, l&#39;''LVM'' si limiterà semplicemente a sincronizzare alcune ''PE'' di un ''PD'' con le ''PE'' del nostro secondo ''PD''. Pertanto ad ogni coppia di ''PE'' sincronizzata corrisponderà il medesimo ''LE'' (e quindi il medesimo ''LV'').<br />
Ad esempio, quando in questo articolo creeremo il nostro ''LV'' in modalità mirrored, l&#39;''LVM'' si limiterà semplicemente a sincronizzare alcune ''PE'' di un ''PD'' con le ''PE'' del nostro secondo ''PD''. Pertanto ad ogni coppia di ''PE'' sincronizzata corrisponderà il medesimo ''LE'' (e quindi il medesimo ''LV'').<br />
<br />
<br />
Per chi, perso tra queste sigle, volesse maggiormente approfondire segnalo alcuni utili HOWTO [http://en.wikipedia.org/wiki/Logical_volume_management [2]] [http://tldp.org/HOWTO/LVM-HOWTO/index.html [3]].<br />
Per chi, perso tra queste sigle, volesse maggiormente approfondire segnalo alcuni utili HOWTO [http://en.wikipedia.org/wiki/Logical_volume_management [2] [http://tldp.org/HOWTO/LVM-HOWTO/index.html [3].<br />
<br />
<br />
Chi è riuscito a seguire fin qui il discorso, ecco un grafico esemplificativo del funzionamento. In questo caso i ''LE'' sono omessi in quanto corrispondono 1:1 ai ''PE'', ovviamente se vi ci fosse un ''mirror'' la corrispondenza tra ''LE'' e ''PE'' sarebbe 1:2 (un ''LV'' fa riferimento a due diversi spazi sui ''PD''). Infine si osservi il ''LV'' /home, quest'ultimo è in modalità ''striped'' ovvero è in parte sul primo ''PD'' ed in parte sul secondo ''PD''.<br />
Chi è riuscito a seguire fin qui il discorso, ecco un grafico esemplificativo del funzionamento. In questo caso i ''LE'' sono omessi in quanto corrispondono 1:1 ai ''PE'', ovviamente se vi ci fosse un ''mirror'' la corrispondenza tra ''LE'' e ''PE'' sarebbe 1:2 (un ''LV'' fa riferimento a due diversi spazi sui ''PD''). Infine si osservi il ''LV'' /home, quest'ultimo è in modalità ''striped'' ovvero è in parte sul primo ''PD'' ed in parte sul secondo ''PD''.<br />
6 999

contributi

Menu di navigazione