4.9.2. Object Selection This section provides a series of tables that list the information you can display about the LVM objects with the pvs , vgs , and lvs commands. For convenience, a field name prefix can be dropped if it matches the default for the command. For example, with the pvs command, name means pv_name , but with the vgs command, name is interpreted as vg_name . Executing the following command is the equivalent of executing pvs -o pv_free . The pvs Command Table 4.1, "pvs Display Fields" lists the display arguments of the pvs command, along with the field name as it appears in the header display and a description of the field. Table 4.1. pvs Display Fields Argument Header Description dev_size DevSize The size of the underlying device on which the physical volume was created pe_start 1st PE Offset to the start of the first physical extent in the underlying device pv_attr Attr Status of the physical volume: (a)llocatable or e(x)ported. pv_fmt Fmt The metadata format of the physical volume ( lvm2 or lvm1 ) pv_free PFree The free space remaining on the physical volume pv_name PV The physical volume name pv_pe_alloc_count Alloc Number of used physical extents pv_pe_count PE Number of physical extents pvseg_size SSize The segment size of the physical volume pvseg_start Start The starting physical extent of the physical volume segment pv_size PSize The size of the physical volume pv_tags PV Tags LVM tags attached to the physical volume pv_used Used The amount of space currently used on the physical volume pv_uuid PV UUID The UUID of the physical volume The pvs command displays the following fields by default: pv_name , vg_name , pv_fmt , pv_attr , pv_size , pv_free . The display is sorted by pv_name . Using the -v argument with the pvs command adds the following fields to the default display: dev_size , pv_uuid . You can use the --segments argument of the pvs command to display information about each physical volume segment. A segment is a group of extents. A segment view can be useful if you want to see whether your logical volume is fragmented. The pvs --segments command displays the following fields by default: pv_name , vg_name , pv_fmt , pv_attr , pv_size , pv_free , pvseg_start , pvseg_size . The display is sorted by pv_name and pvseg_size within the physical volume. You can use the pvs -a command to see devices detected by LVM that have not been initialized as LVM physical volumes. The vgs Command Table 4.2, "vgs Display Fields" lists the display arguments of the vgs command, along with the field name as it appears in the header display and a description of the field. Table 4.2. vgs Display Fields Argument Header Description lv_count #LV The number of logical volumes the volume group contains max_lv MaxLV The maximum number of logical volumes allowed in the volume group (0 if unlimited) max_pv MaxPV The maximum number of physical volumes allowed in the volume group (0 if unlimited) pv_count #PV The number of physical volumes that define the volume group snap_count #SN The number of snapshots the volume group contains vg_attr Attr Status of the volume group: (w)riteable, (r)eadonly, resi(z)eable, e(x)ported, (p)artial and (c)lustered. vg_extent_count #Ext The number of physical extents in the volume group vg_extent_size Ext The size of the physical extents in the volume group vg_fmt Fmt The metadata format of the volume group ( lvm2 or lvm1 ) vg_free VFree Size of the free space remaining in the volume group vg_free_count Free Number of free physical extents in the volume group vg_name VG The volume group name vg_seqno Seq Number representing the revision of the volume group vg_size VSize The size of the volume group vg_sysid SYS ID LVM1 System ID vg_tags VG Tags LVM tags attached to the volume group vg_uuid VG UUID The UUID of the volume group The vgs command displays the following fields by default: vg_name , pv_count , lv_count , snap_count , vg_attr , vg_size , vg_free . The display is sorted by vg_name . Using the -v argument with the vgs command adds the following fields to the default display: vg_extent_size , vg_uuid . The lvs Command Table 4.3, "lvs Display Fields" lists the display arguments of the lvs command, along with the field name as it appears in the header display and a description of the field. Table 4.3. lvs Display Fields Argument Header Description chunksize chunk_size Chunk Unit size in a snapshot volume copy_percent Copy% The synchronization percentage of a mirrored logical volume; also used when physical extents are being moved with the pv_move command devices Devices The underlying devices that make up the logical volume: the physical volumes, logical volumes, and start physical extents and logical extents lv_attr Attr The status of the logical volume. The logical volume attribute bits are as follows: Bit 1: Volume type: (m)irrored, (M)irrored without initial sync, (o)rigin, (p)vmove, (s)napshot, invalid (S)napshot, (v)irtual Bit2: Permissions: (w)riteable, (r)ead-only Bit 3: Allocation policy: (c)ontiguous, (n)ormal, (a)nywhere, (i)nherited. This is capitalized if the volume is currently locked against allocation changes, for example while executing the pvmove command. Bit 4: fixed (m)inor Bit 5 State: (a)ctive, (s)uspended, (I)nvalid snapshot, invalid (S)uspended snapshot, mapped (d)evice present without tables, mapped device present with (i)nactive table Bit 6: device (o)pen lv_kernel_major KMaj Actual major device number of the logical volume (-1 if inactive) lv_kernel_minor KMIN Actual minor device number of the logical volume (-1 if inactive) lv_major Maj The persistent major device number of the logical volume (-1 if not specified) lv_minor Min The persistent minor device number of the logical volume (-1 if not specified) lv_name LV The name of the logical volume lv_size LSize The size of the logical volume lv_tags LV Tags LVM tags attached to the logical volume lv_uuid LV UUID The UUID of the logical volume. mirror_log Log Device on which the mirror log resides modules Modules Corresponding kernel device-mapper target necessary to use this logical volume move_pv Move Source physical volume of a temporary logical volume created with the pvmove command origin Origin The origin device of a snapshot volume regionsize region_size Region The unit size of a mirrored logical volume seg_count #Seg The number of segments in the logical volume seg_size SSize The size of the segments in the logical volume seg_start Start Offset of the segment in the logical volume seg_tags Seg Tags LVM tags attached to the segments of the logical volume segtype Type The segment type of a logical volume (for example: mirror, striped, linear) snap_percent Snap% Current percentage of a snapshot volume that is in use stripes #Str Number of stripes or mirrors in a logical volume stripesize stripe_size Stripe Unit size of the stripe in a striped logical volume The lvs command displays the following fields by default: lv_name , vg_name , lv_attr , lv_size , origin , snap_percent , move_pv , mirror_log , copy_percent . The default display is sorted by vg_name and lv_name within the volume group. Using the -v argauament with the lvs command adds the following fields to the default display: seg_count , lv_major , lv_minor , lv_kernel_major , lv_kernel_minor , lv_uuid . You can use the --segments argument of the lvs command to display information with default columns that emphasize the segment information. When you use the segments argument, the seg prefix is optional. The lvs --segments command displays the following fields by default: lv_name , vg_name , lv_attr , stripes , segtype , seg_size . The default display is sorted by vg_name , lv_name within the volume group, and seg_start within the logical volume. If the logical volumes were fragmented, the output from this command would show that. Using the -v argument with the lvs --segments command adds the following fields to the default display: seg_start , stripesize , chunksize . The following example shows the default output of the lvs command on a system with one logical volume configured, followed by the default output of the lvs command with the segments argument specified.

Commands:
pvs -o free PFree 17.14G 17.09G 17.14G
pvs PV VG Fmt Attr PSize PFree /dev/sdb1 new_vg lvm2 a- 17.14G 17.14G /dev/sdc1 new_vg lvm2 a- 17.14G 17.09G /dev/sdd1 new_vg lvm2 a- 17.14G 17.13G
pvs -v Scanning for physical volume names PV VG Fmt Attr PSize PFree DevSize PV UUID /dev/sdb1 new_vg lvm2 a- 17.14G 17.14G 17.14G onFF2w-1fLC-ughJ-D9eB-M7iv-6XqA-dqGeXY /dev/sdc1 new_vg lvm2 a- 17.14G 17.09G 17.14G Joqlch-yWSj-kuEn-IdwM-01S9-XO8M-mcpsVe /dev/sdd1 new_vg lvm2 a- 17.14G 17.13G 17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-tUqkCS
pvs --segments PV VG Fmt Attr PSize PFree Start SSize /dev/hda2 VolGroup00 lvm2 a- 37.16G 32.00M 0 1172 /dev/hda2 VolGroup00 lvm2 a- 37.16G 32.00M 1172 16 /dev/hda2 VolGroup00 lvm2 a- 37.16G 32.00M 1188 1 /dev/sda1 vg lvm2 a- 17.14G 16.75G 0 26 /dev/sda1 vg lvm2 a- 17.14G 16.75G 26 24 /dev/sda1 vg lvm2 a- 17.14G 16.75G 50 26 /dev/sda1 vg lvm2 a- 17.14G 16.75G 76 24 /dev/sda1 vg lvm2 a- 17.14G 16.75G 100 26 /dev/sda1 vg lvm2 a- 17.14G 16.75G 126 24 /dev/sda1 vg lvm2 a- 17.14G 16.75G 150 22 /dev/sda1 vg lvm2 a- 17.14G 16.75G 172 4217 /dev/sdb1 vg lvm2 a- 17.14G 17.14G 0 4389 /dev/sdc1 vg lvm2 a- 17.14G 17.14G 0 4389 /dev/sdd1 vg lvm2 a- 17.14G 17.14G 0 4389 /dev/sde1 vg lvm2 a- 17.14G 17.14G 0 4389 /dev/sdf1 vg lvm2 a- 17.14G 17.14G 0 4389 /dev/sdg1 vg lvm2 a- 17.14G 17.14G 0 4389
pvs -a PV VG Fmt Attr PSize PFree /dev/VolGroup00/LogVol01 -- 0 0 /dev/new_vg/lvol0 -- 0 0 /dev/ram -- 0 0 /dev/ram0 -- 0 0 /dev/ram2 -- 0 0 /dev/ram3 -- 0 0 /dev/ram4 -- 0 0 /dev/ram5 -- 0 0 /dev/ram6 -- 0 0 /dev/root -- 0 0 /dev/sda -- 0 0 /dev/sdb -- 0 0 /dev/sdb1 new_vg lvm2 a- 17.14G 17.14G /dev/sdc -- 0 0 /dev/sdc1 new_vg lvm2 a- 17.14G 17.09G /dev/sdd -- 0 0 /dev/sdd1 new_vg lvm2 a- 17.14G 17.14G
vgs VG #PV #LV #SN Attr VSize VFree new_vg 3 1 1 wz--n- 51.42G 51.36G
vgs -v Finding all volume groups Finding volume group "new_vg" VG Attr Ext #PV #LV #SN VSize VFree VG UUID new_vg wz--n- 4.00M 3 1 1 51.42G 51.36G jxQJ0a-ZKk0-OpMO-0118-nlwO-wwqd-fD5D32
lvs LV VG Attr LSize Origin Snap% Move Log Copy% lvol0 new_vg owi-a- 52.00M newvgsnap1 new_vg swi-a- 8.00M lvol0 0.20
lvs -v Finding all logical volumes LV VG #Seg Attr LSize Maj Min KMaj KMin Origin Snap% Move Copy% Log LV UUID lvol0 new_vg 1 owi-a- 52.00M -1 -1 253 3 LBy1Tz-sr23-OjsI-LT03-nHLC-y8XW-EhCl78 newvgsnap1 new_vg 1 swi-a- 8.00M -1 -1 253 5 lvol0 0.20 1ye1OU-1cIu-o79k-20h2-ZGF0-qCJm-CfbsIx
lvs --segments LV VG Attr #Str Type SSize LogVol00 VolGroup00 -wi-ao 1 linear 36.62G LogVol01 VolGroup00 -wi-ao 1 linear 512.00M lv vg -wi-a- 1 linear 104.00M lv vg -wi-a- 1 linear 104.00M lv vg -wi-a- 1 linear 104.00M lv vg -wi-a- 1 linear 88.00M
lvs -v --segments Finding all logical volumes LV VG Attr Start SSize #Str Type Stripe Chunk lvol0 new_vg owi-a- 0 52.00M 1 linear 0 0 newvgsnap1 new_vg swi-a- 0 8.00M 1 linear 0 8.00K
lvs LV VG Attr LSize Origin Snap% Move Log Copy% lvol0 new_vg -wi-a- 52.00M lvs --segments LV VG Attr #Str Type SSize lvol0 new_vg -wi-a- 1 linear 52.00M