Question “Fdisk -l” comme la liste des partitions et leurs types pour les volumes logiques LVM?


Vous savez comment "fdisk -l" répertorie les tables de partition des lecteurs et affiche l’identifiant / les types de partition pour chaque partition?

Existe-t-il un moyen similaire d’obtenir l’ID de partition pour les volumes logiques LVM?

EDIT: Je suis au courant de "lvs", ce qui est principalement ce que je recherche (il me donne la liste des volumes logiques, un peu comme "fdisk -l" ... sauf qu'il serait également utile de savoir quoi les types de partitions des volumes logiques (que j’aime qualifier de "partitions virtuelles") sont ces informations. C’est ce que "fdisk -l" répertorie dans les deux dernières colonnes à droite (par exemple, "8e" pour un fichier physique). Partition LVM ou "83" pour Linux ext, etc.).

L'outil que je recherche ne fait peut-être pas partie de LVM; peut-être juste un autre utilitaire qui peut imprimer des identifiants / types de partition pour une partition?


21
2018-06-20 00:23


origine


Essayer cat /etc/fstab afficher le type du système de fichiers, même avec LVM ... Cela semble évident, mais cela répond à la question ...


Réponses:


L'ID de partition pour Linux LVM est 8e, signalé par fdisk.

$ sudo fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00008ec7

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        1013     8136891   8e  Linux LVM
/dev/sda2            1014        1044      249007+   5  Extended
/dev/sda5            1014        1044      248976   83  Linux

LVM est une couche d'abstraction située au-dessus du périphérique de stockage afin de faciliter sa gestion. Je ne suis pas sûr des informations autres que celles fournies par fdisk, car l'ID de partition pour LVM est affiché. Cependant, pour plus d'informations sur les volumes logiques LVM, vous pouvez utiliser 'lvscan', 'lvs' et 'lvdisplay'.

$ sudo lvscan 
  ACTIVE            '/dev/ops1test/root' [7.35 GB] inherit
  ACTIVE            '/dev/ops1test/swap_1' [388.00 MB] inherit

$ sudo lvs 
  LV     VG       Attr   LSize   Origin Snap%  Move Log Copy%  Convert
  root   ops1test -wi-ao   7.35G                                      
  swap_1 ops1test -wi-ao 388.00M                                      

$ sudo lvdisplay
  --- Logical volume ---
  LV Name                /dev/ops1test/root
  VG Name                ops1test
  LV UUID                BfKOpy-L7Ql-905o-7tFk-nnsV-0c7I-w4g9y6
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                7.35 GB
  Current LE             1881
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Name                /dev/ops1test/swap_1
  VG Name                ops1test
  LV UUID                8SNfQ9-Hlfk-Edsb-vmL1-DeE3-nBRR-YAM1dV
  LV Write Access        read/write
  LV Status              available
  # open                 2
  LV Size                388.00 MB
  Current LE             97
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

De même, vous pouvez apprendre des informations sur le groupe de volumes lui-même avec "vgscan", "vgs" et "vgdisplay".

$ sudo vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "ops1test" using metadata type lvm2

$ sudo vgs
  VG       #PV #LV #SN Attr   VSize VFree 
  ops1test   1   2   0 wz--n- 7.76G 32.00M

$ sudo vgdisplay
  --- Volume group ---
  VG Name               ops1test
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               7.76 GB
  PE Size               4.00 MB
  Total PE              1986
  Alloc PE / Size       1978 / 7.73 GB
  Free  PE / Size       8 / 32.00 MB
  VG UUID               ofpvks-2EDZ-limu-0wAh-tYUN-ISG3-mSS65O

15
2018-06-20 00:48



Aussi: pvs, pvdisplay et pvscan pour obtenir des données sur les volumes physiques ... - freiheit


Les volumes logiques n'ont pas de "type" comme les anciennes partitions DOS. Comme les fichiers Unix, vous devrez les lire pour savoir ce qu’ils sont. Quelque chose comme ça devrait faire l'affaire:

lvs --all --noheadings | while read lv vg rest; do file --dereference --special-files "/dev/mapper/$(echo $vg | sed 's/-/--/')-$lv"; done

Voici un exemple de sortie que cette commande donnerait (un peu tronquée):

[...]
/dev/mapper/VolGroup00-LogVol00: Linux rev 1.0 ext4 filesystem data, UUID=b000000e-00f0-0cde-b000-fa0d000ddc00 (extents) (64bit) (large files) (huge files)
[...]

9
2017-07-05 10:12



Très bonne réponse. Il semble que personne d'autre n'ait compris ce que le PO demandait. Je devais apporter une modification à votre script: j'ai ajouté l'option --dereference à la commande de fichier. Chaque LV est lié à / dm-X par le mappeur de périphérique. - codewaggle
@codewaggle Merci; option ajoutée. Lorsque j'ai répondu à cette question en 2009, l'option n'était pas nécessaire, mais les temps changent. - Teddy
Cela devrait être la réponse acceptée! - lanoxx
Ne fonctionne pas quand vous avez des tirets dans votre nom VG, ceux-ci sont doublés et mis à jour la réponse. Peut-être le même problème s'applique-t-il aux noms LV, mais je n'ai pas testé cela. - sjas


LVM est une abstraction au-dessus des disques physiques.

Les volumes logiques (sur lesquels vous pouvez formater et placer des fichiers) sont alloués à partir de groupes de volumes, qui peuvent être constitués d'une ou plusieurs extensions physiques: les partitions de disque physique réelles.

Votre question n'est pas claire. Si vous souhaitez afficher les partitions de disque sur lesquelles réside physiquement un volume logique, lvdisplay --maps peut vous aider:

# lvdisplay --maps
  --- Volume logique ---
  Nom LV / dev / VolGroup00 / root
  VG Nom VolGroup00
  LV UUID xxxxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxx
  Accès en écriture LV en lecture / écriture
  Statut LV disponible
  # ouvert 1
  Taille LV 5.00 GB
  LE 160 actuel
  Segments 1
  Allocation hériter
  Lire à l'avance les secteurs auto
  - actuellement réglé à 256
  Dispositif de blocage 253: 0

  --- Segments ---
  Étendue logique 0 à 159:
    Type linéaire
    Volume physique / dev / sda2
    Étendue physique 0 à 159

6
2018-06-20 00:57



Ne pas répondre à la question, mais le seul moyen de vérifier si votre LV est fragmenté ou non. Vote positif, je n'ai encore jamais vu cela ailleurs. - sjas


Les volumes logiques n'ont pas de concept de "type", ils sont simplement des périphériques en mode bloc. Si vous souhaitez examiner le contenu d’un périphérique en mode bloc et déterminer son contenu, vous pouvez consulter la blkid outil, qui fait exactement cela.


6
2018-06-20 01:39





1) Un volume logique n'est PAS une partition de disque (physique). Il s'agit d'un périphérique de bloc virtuel créé dans le noyau Linux avec Device Mapper. C'est une technologie que l'on peut utiliser pour configurer un périphérique monobloc en utilisant deux partitions de disque, ainsi que deux périphériques en bloc utilisant une seule partition de disque, et bien plus encore.

# dmsetup targets 

Si vous voulez en savoir plus sur DM visit c'est page d'accueil, vérifie c'est pages de manuel, lisez RedHat Manuel ou par exemple ce article. C'est de la grande technologie seulement mentionné sur Wikipedia.

2) Par exemple, sur mon ordinateur personnel, j'ai des partitions de disques physiques ainsi que des périphériques DM (volumes logiques).

# cat /proc/partitions

majeur mineur #blocs nom

   3     0   80043264 hda
   3     1     204800 hda1
   3     2   79831029 hda2
   3    64   19589976 hdb
   3    65     104391 hdb1
   3    66   19478812 hdb2
 253     0   17432576 dm-0
 253     1    2031616 dm-1
 253     2   77762560 dm-2
 253     3    2064384 dm-3

Principalement, ils n'ont aucun type ou ID, ils sont définis avec uniquement le numéro du secteur de début et la longueur.

# dmsetup status -j 253 -m 0
0 34865152 linear

Donc, dm-0 est un fragment composé de 34865152 secteurs d’un périphérique physique.

# dmsetup deps -j 253 -m 0
1 dependencies  : (3, 66)

Et ce périphérique est la partition / dev / hdb2!

# fdisk /dev/hdb
Command (m for help): p
   Device Boot      Start         End      Blocks   Id  System
/dev/hdb1   *           1          13      104391   83  Linux
/dev/hdb2              14        2438    19478812+  8e  Linux LVM

Et c'est une partition de type LVM (8e), mentionnée par timberman.

# pvs
  PV         VG         Fmt  Attr PSize  PFree
  /dev/hda2  VolGroup   lvm2 a-   76,13G    0 
  /dev/hdb2  VolGroup00 lvm2 a-   18,56G    0 

Cette partition de disque (physique) unique peut contenir des volumes logiques au sein d'un groupe. J'ai deux disques, donc il y a deux groupes de ce type et chaque groupe contient deux périphériques logiques.

# lvs
  LV       VG         Attr   LSize  Origin Snap%  Move Log Copy%  Convert
  lv_root  VolGroup   -wi-a- 74,16G                                      
  lv_swap  VolGroup   -wi-a-  1,97G                                      
  LogVol00 VolGroup00 -wi-ao 16,62G
  LogVol01 VolGroup00 -wi-ao  1,94G 

Donc dm-0 et dm-1 sont deux LV (lvroot et lvswap) créés sur la partition / dev / hdb2 de mon premier disque (avec CentOS), tandis que dm-2 et dm-3 sont des LV créés sur la partition / dev / hda2 de mon deuxième disque (avec Fedora).

Les périphériques logiques peuvent avoir des étiquettes (UUID). Vous pouvez les vérifier avec la commande lvdisplay, mentionnée ci-dessus. Mais ce ne sont que des étiquettes que vous pouvez utiliser (-u) au lieu de nombres majeurs majeurs (commutateurs -j -m).


5
2017-08-28 23:36





Est-ce que lsblk fournit les informations dont vous avez besoin?

[root@localhost ~]# lsblk -o TYPE,NAME,KNAME,UUID,MOUNTPOINT,SIZE                                                                                                                                                                        
TYPE NAME                KNAME UUID                                   MOUNTPOINT  SIZE
rom  sr0                 sr0   2014-07-04-15-59-23-00                             362M
disk vda                 vda                                                        1G
part └─vda1              vda1  7eadd712-6571-4722-8a5e-5d419176f6dc   /boot      1023M
disk vdb                 vdb   eVbl9d-dxf0-yqiV-evZC-FHPB-RrZb-eb1897              20G
lvm  ├─vg_system-lv_swap dm-0  44bb22f8-d8c6-482c-8763-36ee58c2528e   [SWAP]        1G
lvm  ├─vg_system-lv_usr  dm-1  c1f9ac62-17a3-4dfa-88b6-6a26394dd270   /usr          2G
lvm  ├─vg_system-lv_root dm-2  6724461a-2401-42ec-8180-fb7582040b68   /            10G
lvm  ├─vg_system-lv_var  dm-3  f2044fb7-5a64-4ae3-8407-891f75aba534   /var          2G
lvm  └─vg_system-lv_home dm-4  8ad80cce-bdf4-43e9-b755-b987169ed062   /home         2G
[root@localhost ~]# 

4
2018-01-21 04:58





Les volumes logiques n'ont pas d'ID ou de type de partition. Ils sont composés de étendues physiques (PE) pouvant être répartie sur plusieurs volumes physiques (PV), chacun pouvant être une partition (par exemple, / dev / sda2) ou un disque complet (par exemple, / dev / sdb).


0
2018-06-20 02:52