J'essaie de monter un volume LVM2 sous Linux, mais toutes les instructions que je vois en ligne indiquent de monter le groupe de volumes, telles que:
mkdir -p /mnt/VolGroup00/LogVol00
mais je ne sais pas comment en comprendre le nom. Je vois la voiture à Palimpseste et c'est toute l'info que je connais.
Voici les étapes que j'avais l'habitude d'accéder à un LVM à partir de Fedora 17, cela devrait fonctionner avec la plupart des formes de Linux.
Boot Fedora 17.
Assurez-vous que LVM2 est installé:
$ Sudo yum install lvm2
Chargez le ou les modules nécessaires en tant que root:
$ Sudo modprobe dm-mod
Recherchez les volumes LVM dans votre système et identifiez dans la sortie le nom du groupe de volumes contenant votre volume Fedora (le mien s’est avéré être VolGroup00):
$ Sudo vgscan
Activer le volume:
$ Sudo vgchange -ay VolGroup00
Recherchez le volume logique contenant votre système de fichiers racine Fedora (le mien s’est avéré être LogVol00):
$ Sudo lvs
Créez un point de montage pour ce volume:
$ Sudo mkdir /mnt/fcroot
Le monter:
$ Sudo mount /dev/VolGroup00/LogVol00 /mnt/fcroot -o ro,user
Vous avez terminé, accédez à/mnt/fcroot, copiez les fichiers et collez-les ailleurs.
Face à ce problème il y a un moment, j'avais posté ceci sur mon blog
Répertoriez toutes vos partitions, tapez
linux:/ # lvmdiskscan
Vous obtiendrez une liste de quelque chose comme ça
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]
Notez que /dev/dm-x
, ce sont les périphériques qui correspondent aux partitions LVM. Notez également les tailles.
Ensuite, tapez lvdisplay pour afficher une liste détaillée de tous les volumes logiques disponibles.
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
Maintenant, à partir de l'ensemble de données ci-dessus, nous pouvons en déduire que ma partition /home
, de taille 9,67 Go, est disponible en tant que groupe LV /dev/system/home
sur /dev/dm-0
Maintenant que nous savons où la partition est disponible, nous pouvons procéder au montage en utilisant la commande mount,
mount /dev/dm-0 /home
Et voilà, votre partition LV est montée!
Vous pouvez obtenir une liste des noms de volume en exécutant lvscan
. La sortie ressemblera à
/dev/VG1/LV1
/dev/VG1/LV2
/dev/VG2/LV3
c'est-à-dire avec les noms de groupe de volumes au milieu et les volumes logiques à la fin. Vérifiez si certains d’entre eux correspondent aux informations de Palimpsest Disk Utility.
Comparez également à la liste des disques déjà montés (mount
) et voyez lesquels ne sont pas présents. Cela peut paraître un peu différent, par exemple:
$ mount
/dev/mapper/VG1-LV1 is mounted on /usr
/dev/mapper/VG1-LV2 is mounted on /home
Vous pouvez voir où le groupe de volumes et le volume logique apparaissent à la fin.
Une fois que vous avez trouvé le bon, montez-le de la manière habituelle:
mount /dev/VG2/LV3 /mnt
Je trouve guestmount (1) le plus simple.
# 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
Voir aussi http://libguestfs.org/guestmount.1.html .
Paquet guestmount
sur ubuntu, libguestfs-tools
sur RHEL et ses dérivés.
Voici un autre moyen de le monter que j'ai trouvé pratique:
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
vous pouvez voir le nom du lvm en utilisant la commande
lsblk
alors vous pouvez trouver ce nom sous/dev/mapper/dierctory, par exemple, je peux monter mon ancien répertoire de base en:
mount /dev/mapper/rhel-home /mnt