Come montare un volume LVM?


36

Sto cercando di montare un volume LVM2 su Linux, ma tutte le istruzioni che vedo online dicono di montare il gruppo di volumi, come ad esempio:

mkdir -p /mnt/VolGroup00/LogVol00

ma non so come capirne il nome. Vedo l'unità in Palimpsest, e sono tutte le informazioni che conosco.


Sono sorpreso che nessuno abbia menzionato il findmntcomando. Puoi semplicemente fare un findmnt -le otterrai quello che vuoi. E per una versione migliore Prova questo:findmnt -l | grep ' /dev/\S\+'
C0deDaedalus

Purtroppo non vede alcuna soluzione per il montaggio di un volume LVM da un'immagine dd / raw nelle risposte. Sarebbe bello vedere se alcune delle soluzioni funzionano anche per questo caso d'uso.
gies0r

Risposte:


52

Ecco i passaggi che ho usato per accedere a un LVM da Fedora 17, dovrebbe funzionare con la maggior parte delle forme di Linux.

Avvia Fedora 17.

Assicurarsi che lvm2 sia installato:

$ sudo yum install lvm2

Carica i moduli necessari come root:

$ sudo modprobe dm-mod

Effettua la scansione del sistema per i volumi LVM e identifica nell'output il nome del gruppo di volumi che ha il tuo volume Fedora (il mio si è rivelato essere VolGroup00):

$ sudo vgscan

Attiva il volume:

$ sudo vgchange -ay VolGroup00

Trova il volume logico che ha il tuo filesystem di root Fedora (il mio si è dimostrato essere LogVol00):

$ sudo lvs

Crea un mount point per quel volume:

$ sudo mkdir /mnt/fcroot

Montalo:

$ sudo mount /dev/VolGroup00/LogVol00 /mnt/fcroot -o ro,user

Fatto, vai su / mnt / fcroot e copia i file e incollali altrove.


1
Lavorare attraverso questo è stato facile da seguire e ha funzionato per me in Ubuntu (scambiando yum con apt-get ovviamente). L'attivazione in particolare, non coperta da altre risposte, era importante. Questa è la strada da percorrere se si dispone di un vecchio disco con LVM e lo si collega a un altro sistema funzionante.
Mr Purple,

3
Questa risposta dovrebbe essere accettata. vgscan, quindi vgchange -a y'sono i passaggi necessari.
Daniel Dinnyes,

1
In effetti, la parte di attivazione è stata vitale per farlo funzionare.
Zitrax,

In RedHat 7, per prima cosa ho dovuto eseguire pvscan --cache. Senza quello, vgscan non vedrebbe nemmeno il nuovo gruppo di volumi.
Kevin Keane,

25

Di fronte a questo problema qualche tempo fa, l'avevo postato sul mio blog

Elenca tutte le tue partizioni, digita

linux:/ # lvmdiskscan

Otterrai un elenco di qualcosa del genere

File descriptor 3 left open
File descriptor 4 left open
/dev/dm-0 [ 9.67 GB]
/dev/sda1 [ 78.41 MB]
/dev/dm-1 [ 6.44 GB]
/dev/sda2 [ 115.52 GB]
/dev/dm-2 [ 2.00 GB]
/dev/sda3 [ 18.11 GB] LVM physical volume
/dev/sda5 [ 15.33 GB]

Prendi nota di /dev/dm-xquesti sono i dispositivi che corrispondono alle partizioni LVM. Nota anche le dimensioni.

Quindi, digitare lvdisplay per mostrare un elenco dettagliato di tutti i volumi logici disponibili.

lvdisplay |more

LV Name /dev/system/home
VG Name system
LV UUID 1QP9XM-vlKi-umNO-CXvV-TnZN-RCLk-e1FDIr
LV Write Access read/write
LV Status available
# open 1
LV Size 9.67 GB
Current LE 2475
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0

— Logical volume —
LV Name /dev/system/root
VG Name system
LV UUID D1fKUJ-uU1C-jlVB-4imh-rrgy-FQu0-TC2Ssm
LV Write Access read/write
LV Status available
# open 1

LV Size 6.44 GB
Current LE 1649
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1

— Logical volume —
LV Name /dev/system/swap
VG Name system
LV UUID w5LqIb-xvcr-Xsbk-y3wg-lT3i-LqdN-GFK8Mi
LV Write Access read/write
LV Status available
# open 0
LV Size 2.00 GB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2

Ora dal set di dati di cui sopra, si può dedurre che la mia /homepartizione di dimensioni 9,67 GB è disponibile come gruppo LV /dev/system/homesu/dev/dm-0

Ora che sappiamo dove è disponibile la partizione, possiamo procedere con il montaggio usando il comando mount, come

mount /dev/dm-0 /home

Ed ecco fatto, la tua partizione LV è montata!


7

È possibile ottenere un elenco di nomi di volumi eseguendo lvscan. L'output sarà simile

/dev/VG1/LV1
/dev/VG1/LV2
/dev/VG2/LV3

vale a dire con i nomi dei gruppi di volumi nel mezzo e volumi logici alla fine. Verifica se uno di essi corrisponde alle informazioni in Utility Disco Palimpsest.

Inoltre, confronta con l'elenco dei dischi già montati ( mount) e vedi quale non è presente. Potrebbe apparire un po 'diverso, ad esempio:

$ mount
/dev/mapper/VG1-LV1 is mounted on /usr
/dev/mapper/VG1-LV2 is mounted on /home

Puoi vedere dove appaiono il gruppo di volumi e il volume logico alla fine.

Una volta trovato quello giusto, montalo nel solito modo:

mount /dev/VG2/LV3 /mnt

3

Trovo guestmount (1) il modo più semplice.

# guestmount -m /invalid/path  -a /path/to/block/device /mnt/
guestmount: '/invalid/path' could not be mounted.
guestmount: Did you mean to mount one of these filesystems?
(...)
guestmount:     /dev/vg0/root (ext4)
(...)

# guestmount -m /dev/vg0/root -a /path/to/block/device /mnt

Vedi anche http://libguestfs.org/guestmount.1.html .

Pacchetto guestmountsu Ubuntu, libguestfs-toolssu RHEL e derivati.


2

Ecco un altro modo per montarlo che ho trovato utile:

DISK=mydisk

lvdisplay | grep $DISK | grep "LV Path" | sed 's/.* //g'
LV_DISK=$(lvdisplay | grep $DISK | grep "LV Path" | sed 's/.* //g')

fdisk -l $LV_DISK
fdisk -lu $LV_DISK | sed -n '/lv[0-9]p[1-3]/ p' | grep p1 | awk '{print $2}'

OFFSET=$(fdisk -lu $LV_DISK | sed -n '/lv[0-9]p[1-3]/ p' | grep p1 | awk '{print $2}')
OFFSET=$((OFFSET * 512))

MOUNT=/mnt/$DISK
mkdir -p $MOUNT
mount -o loop,offset=$OFFSET $LV_DISK $MOUNT

1

puoi visualizzare il nome di lvm usando il comando

lsblk

allora puoi trovare quel nome in / dev / mapper / dierctory, ad esempio posso montare la mia vecchia directory home da:

mount /dev/mapper/rhel-home /mnt

0

Questo può essere fatto dall'interfaccia utente con KVPM.

Basta selezionare il gruppo che si desidera montare e fare clic sull'opzione "mount fs".

inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.