LVM: introduzione: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
(→‎LVM-1 o LVM-2?: rimosso riferimento LVM-1)
 
(30 versioni intermedie di 5 utenti non mostrate)
Riga 1: Riga 1:
{{Stub}}{{Versioni compatibili|Debian Etch 4.0 o superiore|}}
{{Template:LVM}}
 
=Che cos'è LVM=
=Che cos'è LVM=
Il Logical Volume Manager è un software a livello kernel Linux che permette una gestione ed allocazione della memoria sui supporti di memoria in modo flessibile e dinamico, ma soprattutto non limitata allo schema rigido delle partizioni.
Il Logical Volume Manager è un software a livello kernel Linux che permette una gestione ed allocazione della memoria sui supporti di memoria in modo flessibile e dinamico, ma soprattutto non limitata allo schema rigido delle partizioni.


La brillante idea da cui nasce la potenzialità di questo strumento è di non utilizzare le partizioni in maniera classica ma di utilizzare dei volumi logici virtuali create da LVM sulle partizioni assegnategli. In questa maniera, non essendo più vincolati alle partizioni, ne consegue una gestione molto più fluida dei dispositivi di memorizzazione.
La brillante idea da cui derivano tutte le potenzialità di questo strumento è quella di non utilizzare più le partizioni in maniera classica come definite nell'MBR ma di adoperare al posto di queste dei volumi logici virtuali creati e gestiti dall'''LVM'' sui dispositivi assegnategli. In questa maniera, non essendo più vincolati alle partizioni, ne consegue una gestione molto più fluida dei dispositivi di memorizzazione il cui unico limite è l'immaginazione.
 
Da Lenny è disponibile la versione LVM2 facilmente installabile con l'omonimo pacchetto.


==Potenzialità==
==Potenzialità==
Per rendere immediatamente conto del perché questo strumento lo consigli vivamente a tutti e di quali siano i suoi punti di forza, ecco una breve analisi dei suoi punti di forza.
Per rendere immediatamente conto del perché questo strumento lo consigli vivamente a tutti - sia desktop che server, sia usi domestici che professionali - ecco a seguire una breve analisi dei suoi punti di forza.
===Vantaggi===
===Vantaggi===
Tra i principali vantaggi troviamo:
Tra i principali vantaggi troviamo:
* Libertà di ampliare/ridurre le partizioni;
* Libertà di ampliare/ridurre "le partizioni" (il termina corretto è ''Logical Volume'');
* Possibilità di eseguire snapshot "a caldo" (senza dover spegnere il computer);
* Possibilità di eseguire snapshot ''a caldo'' (senza dover spegnere il computer);
* Possibilità di estendere una partizione su altri supporti di memoria;
* Possibilità di estendere una partizione su altri supporti di memoria (modalità ''striped'');
* Possibilità di adottare soluzioni RAID.
* Possibilità di implementare una ridondanza delle partizioni (modalità ''mirrored'');
* Possibilità di trasferire ''a caldo'' "le partizioni" (il termina corretto è ''Logical Volume'') da un supporto fisico ad un altro.
 
===Svantaggi===
===Svantaggi===
Si ravvisa un rallentamento della velocità I/O dei supporti di archiviazione seppure trascurabile, una maggiore difficoltà in caso di dover recuperare dati dal disco, possibili [[#Boot Loader e LVM|problemi in fase di boot]] con alcuni boot loader.
Nonostante gli innumerevoli vantaggi, sono stati ravvisati alcuni aspetti negativi di LVM, tra i quali:
 
* un possibile rallentamento della velocità di I/O dei supporti di archiviazione (seppure molto trascurabile);
=La struttura del LVM=
* una maggiore difficoltà in caso di recupero di dati dal disco (fattore che spesso desta preoccupazione);
Il LVM basa il proprio funzionamento sulla seguente struttura:
* possibili [[#Boot Loader e LVM|problemi in fase di boot]] con alcuni boot loader.
; Volume Group (VG): trattasi del più alto livello di astrazione che raggruppa in sé una collezione di Logical Volume e Physical Volume.
; Physical Volume (PV): i nostri supporti di memorizzazione, possono essere Hard Disk, nastri ma anche ambianti RAID.
; Logical Volume (LV): l'equivalente per il nostro LVM di una partizione su un Hard Disk, con l'unica differenza per l'etichetta/label (ad es. /home invece di /sda1). Può contenere un file system a nostro piacimento.
 


In modo un po' stilizzato:
=Installare LVM-2=
Da Lenny in avanti è disponibile la versione ''LVM2'' facilmente installabile con l'omonimo pacchetto '''lvm2''':
<pre>
<pre>
  hd1    sda2      (Physical Device)
# apt-get install lvm2
    \    /
    \  /
    server1        (Volume Group)
    / | \
    /  |  \
  /  |  \
Home Root  Dati  (Logical Volume)
</pre>
</pre>


Questo è quanto basta per iniziare a divertirci...
[[Categoria:Filesystem]][[Categoria:Hard Disk]]
 
=Lista dei principali comandi=
Segue la trattazione dei comandi di shell che ci permettono la gestione del nostro LVM. Per ogni dubbio ricordatevi del forum.
 
{{ Warningbox | &Egrave; buona cosa di norma avere un backup dei propri dati, questo monito vale specialmente per quando si lavora con i filesystem e le partizioni. A buon intenditore poche parole. }}
 
Ricordati che le man page ti sono amiche! Inoltre ricordati di sfruttare l'autocompletamento: per avere ad esempio una lista dei possibili comandi con i Volume Group basta digitare nella shell vg e premere due volte tab, per i Logical Volume basta digitare lv e premere di nuovo tab.
==Gestire i Volume Group==
===Creare===
* <pre>pvcreate /dev/nome_device-nome_partizione</pre>
:Inizializza il disco/partizione per essere utilizzato come Volume Group (crea una specie di tabella di partizioni). Se si utilizza il device anche con altri OS si sconsiglia l'uso dell'intero supporto consigliando di utilizzare una partizione, ampia anche come tutto il supporto stesso. Altrimenti altri OS potrebbero non riconoscere il LVM e sovrascriverlo.
*<pre>vgcreate nome_Volume_Group /dev/supporto1 /dev/supporto2 ...</pre>
:Crea un Volume Group con un dato nome utilizzando la lista di supporti fisici. Questi devono essere stati prima opportunamente inizializzati con <code>pvcreate</code>.
===Rimuovere===
*<pre>vgremove nome_Volume_Group</pre>
:Rimuovi il Volume Group indicato.
 
===Modificare===
*<pre>vgchange -a y nome_Volume_Group</pre>
:Attiva il Volume Group indicato permettendone l'accesso. Per disattivare il VG usare l'opzione -a n (Avaible No).Con questo comando è possibile anche modificare altre opzioni più specifiche.
*<pre>vgextend nome_Volume_Group percorso_Physical_Device</pre>
:Aggiunge al VG il desiderato PD. Ricordarsi di inizializzare prima il PD con <code>pvcreate</code>. Si consiglia <code>pvdisplay percorso_Physical_Device</code> per verificare prima che la partizione/PD sia libera.
*<pre>vgreduce nome_Volume_Group percorso_Physical_Device</pre>
:Toglie il PD dal VG.
 
==Gestire i Logical Volume==
Lista dei comandi base.
===Creare===
<pre>lvcreate -L 1500 -n dati server1</pre>
Lvcreate permette di creare i LV. Le opzioni disponibili sono numerose, nell'esempio posto è stato creato un LV di 1.500 Mb, di nome dati ed all'interno del VG server1.
 
Inoltre è possibile specificare anche su quale PD creare il LV. Basta aggiungere il PATH corrispondente alla fine del comando. Questo può risultare utile in una logica di riduzione dei rischi di perdita di dati.
 
Creato il LV sarà necessario formattarlo in modo opportuno affinché diventi fruibile.
 
===Rimuovere===
<pre>umount LogicalVolume_da_rimuovere
lvremove LogicalVolume_da_rimuovere</pre>
Si noti che, prima di poterlo eliminare, sia necessario smontarlo.
 
===Modificare===
<pre>lvextend -L +1G LogicalVolumePath</pre>
'''Aumenta''' di un Giga il LV. In alternativa è possibile indicare con <code>-L 10G</code> per ampliare fino a 10G totali.<br/>Per terminare la procedura si consiglia se si adotta l'ext2 di smontare prima le partizioni, con l'ext3 non dovrebbero esserci problemi per l'aumento online ma pare che i rischi siano elevati. Premesso ciò, dopo aver ampliato il LV, si può procedere ad adattare anche il filesystem tramite <pre>resize2fs LogicalVolumePath </pre>Ovviamente quest'ultimo comando dipende dal filesystem, ad esempio con xfs si dovrà utilizzare <code>xfs_growfs</code>
----
<pre>lvreduce -L -1G LogicalVolumePath</pre>
'''Riduce''' di un Giga il LV. Ovviamente, se non si vogliono perdere dati, sarà necessario <u>prima di dare il comando</u> per ridurre il LV:
<pre>umount LogicalVolumePath
e2fsck LogicalVolumePath                    (valido solo per i filesystem ext2/ext3/ext4)
reduce2fs LogicalVolumePath -1G              (valido solo per i filesystem ext2/ext3/ext4)</pre>
 
=Comandi utili per una completa gestione dei file system=
In questa sezione sono elencati i comandi non facenti capo a lvm2 ma che sono necessari ai fini di compiere le operazioni specificate nel presente HOWTO.
==Lavorare con ext? (ext2, ext3, ext4)==
<pre>mkfs.ext3 $PATH_LV</pre>
Per creare il file system è sufficiente il comando dato. Per altri file system: mkfs.ext2, mkfs.ext4...
==Analisi dei supporti di memoria==
<pre>df $PATH_disco</pre>
Disk Free: ndica la quantità di spazio libero.
 
=Boot Loader e LVM=
Al momento Lilo e Grub hanno difficoltà ad accedere al LVM per effettuare il boot. Con Grub2 è possibile risolvere la situazione ed eseguire il boot da LVM. Però considerata l'esiguità della dimensione della cartella /boot consiglio, sia per semplificarsi la vita, sia per una maggiore sicurezza, di posizionare la cartella /boot su una partizione al di fuori del LVM.
 
=Riferimenti web=
 
HOWTO davvero completo: http://tldp.org/HOWTO/LVM-HOWTO/index.html
 
----
Autore: risca 21:04, 29 mar 2010 (CEST)
 
[[Categoria:Hardware]]
[[Categoria:Sistema]]

Versione attuale delle 16:03, 20 ago 2014

Guida all'LVM

Sommario

Parte I
Introduzione all'LVM
  1. Introduzione all'LVM
  2. Come funziona
  3. Gestire i VG
  4. Gestire i LV
  5. Gestire i PD
Parte II
Casi speciali
  1. Il Boot e l'LVM
  2. Installazione di Debian con l'LVM
  3. Impostare un mirror LVM
  4. Lavorare con gli snapshot
  5. Esempi
Appendice
  1. Comandi utili
  2. Sitografia

Che cos'è LVM

Il Logical Volume Manager è un software a livello kernel Linux che permette una gestione ed allocazione della memoria sui supporti di memoria in modo flessibile e dinamico, ma soprattutto non limitata allo schema rigido delle partizioni.

La brillante idea da cui derivano tutte le potenzialità di questo strumento è quella di non utilizzare più le partizioni in maniera classica come definite nell'MBR ma di adoperare al posto di queste dei volumi logici virtuali creati e gestiti dall'LVM sui dispositivi assegnategli. In questa maniera, non essendo più vincolati alle partizioni, ne consegue una gestione molto più fluida dei dispositivi di memorizzazione il cui unico limite è l'immaginazione.

Potenzialità

Per rendere immediatamente conto del perché questo strumento lo consigli vivamente a tutti - sia desktop che server, sia usi domestici che professionali - ecco a seguire una breve analisi dei suoi punti di forza.

Vantaggi

Tra i principali vantaggi troviamo:

  • Libertà di ampliare/ridurre "le partizioni" (il termina corretto è Logical Volume);
  • Possibilità di eseguire snapshot a caldo (senza dover spegnere il computer);
  • Possibilità di estendere una partizione su altri supporti di memoria (modalità striped);
  • Possibilità di implementare una ridondanza delle partizioni (modalità mirrored);
  • Possibilità di trasferire a caldo "le partizioni" (il termina corretto è Logical Volume) da un supporto fisico ad un altro.

Svantaggi

Nonostante gli innumerevoli vantaggi, sono stati ravvisati alcuni aspetti negativi di LVM, tra i quali:

  • un possibile rallentamento della velocità di I/O dei supporti di archiviazione (seppure molto trascurabile);
  • una maggiore difficoltà in caso di recupero di dati dal disco (fattore che spesso desta preoccupazione);
  • possibili problemi in fase di boot con alcuni boot loader.

Installare LVM-2

Da Lenny in avanti è disponibile la versione LVM2 facilmente installabile con l'omonimo pacchetto lvm2:

# apt-get install lvm2