Cari di RHE Linux 
    Red Hat Enterprise Linux Manual
Daftar Isi
(Sebelumnya) 10 : 4.4. Logical Volume Admin ...10 : Chapter 5. LVM Configurat ... (Berikutnya)

Logical Volume Manager Administration

4.5. Controlling LVM Device Scans with Filters

At startup, the vgscan command is run to scan the block devices on the system looking for LVM labels, to determine which of them are physical volumes and to read the metadata and build up a list of volume groups. The names of the physical volumes are stored in the cache file of each node in the system, /etc/lvm/cache/.cache. Subsequent commands may read that file to avoiding rescanning.
You can control which devices LVM scans by setting up filters in the lvm.conf configuration file. The filters in the lvm.conf file consist of a series of simple regular expressions that get applied to the device names that are in the /dev directory to decide whether to accept or reject each block device found.
The following examples show the use of filters to control which devices LVM scans. Note that some of these examples do not necessarily represent best practice, as the regular expressions are matched freely against the complete pathname. For example, a/loop/ is equivalent to a/.*loop.*/ and would match /dev/solooperation/lvol1.
The following filter adds all discovered devices, which is the default behavior as there is no filter configured in the configuration file:
filter = [ "a/.*/" ]
The following filter removes the cdrom device in order to avoid delays if the drive contains no media:
filter = [ "r|/dev/cdrom|" ]
The following filter adds all loop and removes all other block devices:
filter = [ "a/loop.*/", "r/.*/" ]
The following filter adds all loop and IDE and removes all other block devices:
filter =[ "a|loop.*|", "a|/dev/hd.*|", "r|.*|" ]
The following filter adds just partition 8 on the first IDE drive and removes all other block devices:
filter = [ "a|^/dev/hda8$|", "r/.*/" ]
For more information on the lvm.conf file, see Appendix B, The LVM Configuration Files and the lvm.conf(5) man page.

4.6. Online Data Relocation

You can move data while the system is in use with the pvmove command.
The pvmove command breaks up the data to be moved into sections and creates a temporary mirror to move each section. For more information on the operation of the pvmove command, see the pvmove(8) man page.

Note

In order to perform a pvmove operation in a cluster, you should ensure that the cmirror and cmirror-kmod packages are installed and the cmirror service is running. The cmirror-kmod package that must be installed depends on the kernel that is running. For example, if the running kernel is kernel-largesmp, it is necessary to have cmirror-kmod-largesmp for the corresponding kernel version.
The following command moves all allocated space off the physical volume /dev/sdc1 to other free physical volumes in the volume group:
# pvmove /dev/sdc1
The following command moves just the extents of the logical volume MyLV.
# pvmove -n MyLV /dev/sdc1
Since the pvmove command can take a long time to execute, you may want to run the command in the background to avoid display of progress updates in the foreground. The following command moves all extents allocated to the physical volume /dev/sdc1 over to /dev/sdf1 in the background.
# pvmove -b /dev/sdc1 /dev/sdf1
The following command reports the progress of the move as a percentage at five second intervals.
# pvmove -i5 /dev/sdd1

4.7. Activating Logical Volumes on Individual Nodes in a Cluster

If you have LVM installed in a cluster environment, you may at times need to activate logical volumes exclusively on one node.
To activate logical volumes exclusively on one node, use the lvchange -aey command. Alternatively, you can use lvchange -aly command to activate logical volumes only on the local node but not exclusively. You can later activate them on additional nodes concurrently.
You can also activate logical volumes on individual nodes by using LVM tags, which are described in Appendix C, LVM Object Tags. You can also specify activation of nodes in the configuration file, which is described in Appendix B, The LVM Configuration Files.

4.8. Customized Reporting for LVM

You can produce concise and customizable reports of LVM objects with the pvs, lvs, and vgs commands. The reports that these commands generate include one line of output for each object. Each line contains an ordered list of fields of properties related to the object. There are five ways to select the objects to be reported: by physical volume, volume group, logical volume, physical volume segment, and logical volume segment.
The following sections provide:
  • A summary of command arguments you can use to control the format of the generated report.
  • A list of the fields you can select for each LVM object.
  • A summary of command arguments you can use to sort the generated report.
  • Instructions for specifying the units of the report output.

4.8.1. Format Control

Whether you use the pvs, lvs, or vgs command determines the default set of fields displayed and the sort order. You can control the output of these commands with the following arguments:
  • You can change what fields are displayed to something other than the default by using the -o argument. For example, the following output is the default display for the pvs command (which displays information about physical volumes).
    # 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.14G
    The following command displays only the physical volume name and size.
    # pvs -o pv_name,pv_size  PV PSize  /dev/sdb1  17.14G  /dev/sdc1  17.14G  /dev/sdd1  17.14G
  • You can append a field to the output with the plus sign (+), which is used in combination with the -o argument.
    The following example displays the UUID of the physical volume in addition to the default fields.
    # pvs -o +pv_uuid  PV VG Fmt  Attr PSize  PFree  PV UUID  /dev/sdb1  new_vg lvm2 a-   17.14G 17.14G onFF2w-1fLC-ughJ-D9eB-M7iv-6XqA-dqGeXY  /dev/sdc1  new_vg lvm2 a-   17.14G 17.09G Joqlch-yWSj-kuEn-IdwM-01S9-X08M-mcpsVe  /dev/sdd1  new_vg lvm2 a-   17.14G 17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-UqkCS
  • Adding the -v argument to a command includes some extra fields. For example, the pvs -v command will display the DevSize and PV UUID fields in addition to the default fields.
    # 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.14G  17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-tUqkCS
  • The --noheadings argument suppresses the headings line. This can be useful for writing scripts.
    The following example uses the --noheadings argument in combination with the pv_name argument, which will generate a list of all physical volumes.
    # pvs --noheadings -o pv_name  /dev/sdb1  /dev/sdc1  /dev/sdd1
  • The --separator separator argument uses separator to separate each field.
    The following example separates the default output fields of the pvs command with an equals sign (=).
    # pvs --separator =  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.14G
    To keep the fields aligned when using the separator argument, use the separator argument in conjunction with the --aligned argument.
    # pvs --separator = --aligned  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.14G
You can use the -P argument of the lvs or vgs command to display information about a failed volume that would otherwise not appear in the output. For information on the output this argument yields, see Section 6.2, "Displaying Information on Failed Devices".
For a full listing of display arguments, see the pvs(8), vgs(8) and lvs(8) man pages.
Volume group fields can be mixed with either physical volume (and physical volume segment) fields or with logical volume (and logical volume segment) fields, but physical volume and logical volume fields cannot be mixed. For example, the following command will display one line of output for each physical volume.
# vgs -o +pv_name  VG #PV #LV #SN Attr   VSize  VFree  PV  new_vg   3   1   0 wz--n- 51.42G 51.37G /dev/sdc1  new_vg   3   1   0 wz--n- 51.42G 51.37G /dev/sdd1  new_vg   3   1   0 wz--n- 51.42G 51.37G /dev/sdb1

4.8.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.
# pvs -o +free  PFree  17.14G  17.09G  17.14G

The pvs Command

Table 4.2, "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.2. pvs Display Fields

ArgumentHeaderDescription
dev_sizeDevSizeThe size of the underlying device on which the physical volume was created
pe_start1st PEOffset to the start of the first physical extent in the underlying device
pv_attrAttrStatus of the physical volume: (a)llocatable or e(x)ported.
pv_fmtFmtThe metadata format of the physical volume (lvm2 or lvm1)
pv_freePFreeThe free space remaining on the physical volume
pv_namePVThe physical volume name
pv_pe_alloc_countAllocNumber of used physical extents
pv_pe_countPENumber of physical extents
pvseg_sizeSSizeThe segment size of the physical volume
pvseg_startStartThe starting physical extent of the physical volume segment
pv_sizePSizeThe size of the physical volume
pv_tagsPV TagsLVM tags attached to the physical volume
pv_usedUsedThe amount of space currently used on the physical volume
pv_uuidPV UUIDThe 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.
# 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
Using the -v argument with the pvs command adds the following fields to the default display: dev_size, pv_uuid.
# 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
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.
# 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
You can use the pvs -a command to see devices detected by LVM that have not been initialized as LVM physical volumes.
# 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

The vgs Command

Table 4.3, "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.3. vgs Display Fields

ArgumentHeaderDescription
lv_count#LVThe number of logical volumes the volume group contains
max_lvMaxLVThe maximum number of logical volumes allowed in the volume group (0 if unlimited)
max_pvMaxPVThe maximum number of physical volumes allowed in the volume group (0 if unlimited)
pv_count#PVThe number of physical volumes that define the volume group
snap_count#SNThe number of snapshots the volume group contains
vg_attrAttrStatus of the volume group: (w)riteable, (r)eadonly, resi(z)eable, e(x)ported, (p)artial and (c)lustered.
vg_extent_count#ExtThe number of physical extents in the volume group
vg_extent_sizeExtThe size of the physical extents in the volume group
vg_fmtFmtThe metadata format of the volume group (lvm2 or lvm1)
vg_freeVFreeSize of the free space remaining in the volume group
vg_free_countFreeNumber of free physical extents in the volume group
vg_nameVGThe volume group name
vg_seqnoSeqNumber representing the revision of the volume group
vg_sizeVSizeThe size of the volume group
vg_sysidSYS IDLVM1 System ID
vg_tagsVG TagsLVM tags attached to the volume group
vg_uuidVG UUIDThe 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.
# vgs  VG #PV #LV #SN Attr   VSize  VFree  new_vg   3   1   1 wz--n- 51.42G 51.36G
Using the -v argument with the vgs command adds the following fields to the default display: vg_extent_size, vg_uuid.
# 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

The lvs Command

Table 4.4, "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.4. lvs Display Fields

ArgumentHeaderDescription
chunksize
chunk_size
ChunkUnit size in a snapshot volume
copy_percentCopy%The synchronization percentage of a mirrored logical volume; also used when physical extents are being moved with the pv_move command
devicesDevicesThe underlying devices that make up the logical volume: the physical volumes, logical volumes, and start physical extents and logical extents
lv_attrAttrThe 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, (O)rigin with merging snapshot, (r)aid, (R)aid without initial sync, (s)napshot, merging (S)napshot, (p)vmove, (v)irtual, mirror or raid (i)mage, mirror or raid (I)mage out-of-sync, mirror (l)og device, under (c)onversion, thin (V)olume, (t)hin pool, (T)hin pool data, raid or thin pool m(e)tadata
Bit 2: Permissions: (w)riteable, (r)ead-only, (R)ead-only activation of non-read-only volume
Bit 3: Allocation policy: (c)ontiguous, c(l)ing, (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, snapshot (m)erge failed, suspended snapshot (M)erge failed, mapped (d)evice present without tables, mapped device present with (i)nactive table
Bit 6: device (o)pen
Bit 7: Target type: (m)irror, (r)aid, (s)napshot, (t)hin, (u)nknown, (v)irtual. This groups logical volumes related to the same kernel target together. So, for example, mirror images, mirror logs as well as mirrors themselves appear as (m) if they use the original device-mapper mirror kernel driver, whereas the raid equivalents using the md raid kernel driver all appear as (r). Snapshots using the original device-mapper driver appear as (s), whereas snapshots of thin volumes using the thin provisioning driver appear as (t).
Bit 8: Newly-allocated data blocks are overwritten with blocks of (z)eroes before use.
lv_kernel_majorKMajActual major device number of the logical volume (-1 if inactive)
lv_kernel_minorKMINActual minor device number of the logical volume (-1 if inactive)
lv_majorMajThe persistent major device number of the logical volume (-1 if not specified)
lv_minorMinThe persistent minor device number of the logical volume (-1 if not specified)
lv_nameLVThe name of the logical volume
lv_sizeLSizeThe size of the logical volume
lv_tagsLV TagsLVM tags attached to the logical volume
lv_uuidLV UUIDThe UUID of the logical volume.
mirror_logLogDevice on which the mirror log resides
modulesModulesCorresponding kernel device-mapper target necessary to use this logical volume
move_pvMoveSource physical volume of a temporary logical volume created with the pvmove command
originOriginThe origin device of a snapshot volume
regionsize
region_size
RegionThe unit size of a mirrored logical volume
seg_count#SegThe number of segments in the logical volume
seg_sizeSSizeThe size of the segments in the logical volume
seg_startStartOffset of the segment in the logical volume
seg_tagsSeg TagsLVM tags attached to the segments of the logical volume
segtypeTypeThe segment type of a logical volume (for example: mirror, striped, linear)
snap_percentSnap%Current percentage of a snapshot volume that is in use
stripes#StrNumber of stripes or mirrors in a logical volume
stripesize
stripe_size
StripeUnit 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, convert_lv. The default display is sorted by vg_name and lv_name within the volume group.
# lvs  LV VG Attr   LSize  Origin Snap%  Move Log Copy%  Convert  lvol0  new_vg owi-a- 52.00M  newvgsnap1 new_vg swi-a-  8.00M lvol0 0.20
Using the -v argument 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.
# lvs -v Finding all logical volumes  LV VG #Seg Attr   LSize  Maj Min KMaj KMin Origin Snap%  Move Copy%  Log Convert 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
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.
# 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
Using the -v argument with the lvs --segments command adds the following fields to the default display: seg_start, stripesize, chunksize.
# 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
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.
# 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

4.8.3. Sorting LVM Reports

Normally the entire output of the lvs, vgs, or pvs command has to be generated and stored internally before it can be sorted and columns aligned correctly. You can specify the --unbuffered argument to display unsorted output as soon as it is generated.
To specify an alternative ordered list of columns to sort on, use the -O argument of any of the reporting commands. It is not necessary to include these fields within the output itself.
The following example shows the output of the pvs command that displays the physical volume name, size, and free space.
# pvs -o pv_name,pv_size,pv_free  PV PSize  PFree  /dev/sdb1  17.14G 17.14G  /dev/sdc1  17.14G 17.09G  /dev/sdd1  17.14G 17.14G
The following example shows the same output, sorted by the free space field.
# pvs -o pv_name,pv_size,pv_free -O pv_free  PV PSize  PFree  /dev/sdc1  17.14G 17.09G  /dev/sdd1  17.14G 17.14G  /dev/sdb1  17.14G 17.14G
The following example shows that you do not need to display the field on which you are sorting.
# pvs -o pv_name,pv_size -O pv_free  PV PSize  /dev/sdc1  17.14G  /dev/sdd1  17.14G  /dev/sdb1  17.14G
To display a reverse sort, precede a field you specify after the -O argument with the - character.
# pvs -o pv_name,pv_size,pv_free -O -pv_free  PV PSize  PFree  /dev/sdd1  17.14G 17.14G  /dev/sdb1  17.14G 17.14G  /dev/sdc1  17.14G 17.09G

4.8.4. Specifying Units

To specify the unit for the LVM report display, use the --units argument of the report command. You can specify (b)ytes, (k)ilobytes, (m)egabytes, (g)igabytes, (t)erabytes, (e)xabytes, (p)etabytes, and (h)uman-readable. The default display is human-readable. You can override the default by setting the units parameter in the global section of the lvm.conf file.
The following example specifies the output of the pvs command in megabytes rather than the default gigabytes.
# pvs --units m  PV VG Fmt  Attr PSize PFree  /dev/sda1 lvm2 --   17555.40M 17555.40M  /dev/sdb1  new_vg lvm2 a-   17552.00M 17552.00M  /dev/sdc1  new_vg lvm2 a-   17552.00M 17500.00M  /dev/sdd1  new_vg lvm2 a-   17552.00M 17552.00M
By default, units are displayed in powers of 2 (multiples of 1024). You can specify that units be displayed in multiples of 1000 by capitalizing the unit specification (B, K, M, G, T, H).
The following command displays the output as a multiple of 1024, the default behavior.
# 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.14G
The following command displays the output as a multiple of 1000.
#  pvs --units G  PV VG Fmt  Attr PSize  PFree  /dev/sdb1  new_vg lvm2 a-   18.40G 18.40G  /dev/sdc1  new_vg lvm2 a-   18.40G 18.35G  /dev/sdd1  new_vg lvm2 a-   18.40G 18.40G
You can also specify (s)ectors (defined as 512 bytes) or custom units.
The following example displays the output of the pvs command as a number of sectors.
# pvs --units s  PV VG Fmt  Attr PSize PFree  /dev/sdb1  new_vg lvm2 a-   35946496S 35946496S  /dev/sdc1  new_vg lvm2 a-   35946496S 35840000S  /dev/sdd1  new_vg lvm2 a-   35946496S 35946496S
The following example displays the output of the pvs command in units of 4 MB.
# pvs --units 4m  PV VG Fmt  Attr PSize PFree  /dev/sdb1  new_vg lvm2 a-   4388.00U 4388.00U  /dev/sdc1  new_vg lvm2 a-   4388.00U 4375.00U  /dev/sdd1  new_vg lvm2 a-   4388.00U 4388.00U
(Sebelumnya) 10 : 4.4. Logical Volume Admin ...10 : Chapter 5. LVM Configurat ... (Berikutnya)