Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.8. LVM에 대한 사용자 정의 보고

LVM은 사용자 지정 보고서를 생성하고 보고서의 출력을 필터링하는 다양한 구성 및 명령줄 옵션을 제공합니다. LVM 보고 기능 및 기능에 대한 자세한 내용은 lvmreport(7) 매뉴얼 페이지를 참조하십시오.
pvs,lvs 및 Cryostats 명령을 사용하여 LVM 오브젝트에 대한 간결하고 사용자 지정 가능한 보고서를 생성할 수 있습니다. 이러한 명령이 생성되는 보고서에는 각 오브젝트에 대한 출력 한 줄이 포함됩니다. 각 줄에는 오브젝트와 관련된 속성의 정렬된 필드 목록이 포함되어 있습니다. 보고할 오브젝트를 선택하는 방법은 물리 볼륨, 볼륨 그룹, 논리 볼륨, 물리 볼륨 세그먼트 및 논리 볼륨 세그먼트에서 선택할 수 있습니다.
Red Hat Enterprise Linux 7.3 릴리스에서는 lvm fullreport 명령을 사용하여 물리 볼륨, 볼륨 그룹, 논리 볼륨 세그먼트, 물리 볼륨 세그먼트 및 논리 볼륨 세그먼트에 대한 정보를 한 번에 보고할 수 있습니다. 이 명령 및 해당 기능에 대한 자세한 내용은 lvm-fullreport(8) 도움말 페이지를 참조하십시오.
Red Hat Enterprise Linux 7.3 릴리스부터 LVM에서는 작업, 메시지, 개체별 상태 로그와 LVM 명령 실행 중에 수집된 전체 오브젝트 식별이 포함된 로그 보고서를 지원합니다. LVM 로그 보고서의 예는 4.8.6절. “명령 로그 보고(Red Hat Enterprise Linux 7.3 이상)” 를 참조하십시오. LVM 로그 보고서에 대한 자세한 내용은 lvmreport(7) 도움말 페이지를 참조하십시오.
다음 섹션에서는 pvs,lvs 및 Cryostats 명령을 사용하여 보고서를 사용자 지정하는 방법에 대한 요약 정보를 제공합니다.

4.8.1. 형식 제어

pvs,lvs 또는 Cryostats 명령을 사용할지 여부에 따라 표시된 기본 필드 세트와 정렬 순서가 결정됩니다. 다음 인수를 사용하여 이러한 명령의 출력을 제어할 수 있습니다.
  • -o 인수를 사용하여 기본값 이외의 필드에 표시되는 필드를 변경할 수 있습니다. 예를 들어 다음 출력은 pvs 명령의 기본 표시입니다(물리 볼륨에 대한 정보를 표시함).
    # 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
    
    다음 명령은 물리 볼륨 이름과 크기만 표시합니다.
    # pvs -o pv_name,pv_size
      PV         PSize
      /dev/sdb1  17.14G
      /dev/sdc1  17.14G
      /dev/sdd1  17.14G
    
  • -o 인수와 함께 사용되는 더하기 기호(+)를 사용하여 출력에 필드를 추가할 수 있습니다.
    다음 예제는 기본 필드 외에 물리 볼륨의 UUID를 표시합니다.
    # 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
    
  • 명령에 -v 인수를 추가하면 몇 가지 추가 필드가 포함됩니다. 예를 들어 pvs -v 명령은 기본 필드 외에도 DevSizePV 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.14G  17.14G yvfvZK-Cf31-j75k-dECm-0RZ3-0dGW-tUqkCS
    
  • --noheadings 인수는 제목 행을 표시하지 않습니다. 이 명령은 스크립트를 작성하는 데 유용할 수 있습니다.
    다음 예제에서는 모든 물리 볼륨 목록을 생성하는 pv_name 인수와 함께 --noheadings 인수를 사용합니다.
    # pvs --noheadings -o pv_name
      /dev/sdb1
      /dev/sdc1
      /dev/sdd1
    
  • --separator separator 인수는 구분 자를 사용하여 각 필드를 구분합니다.
    다음 예제에서는 equals 기호(=)를 사용하여 pvs 명령의 기본 출력 필드를 구분합니다.
    # 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
    
    구분 기호 인수를 사용할 때 필드를 정렬하려면 --aligned 인수와 함께 separator 인수를 사용합니다.
    # 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
    
표시 인수의 전체 목록은 pvs(8), Cryostats(8) 및 lvs(8) 도움말 페이지를 참조하십시오.
볼륨 그룹 필드는 물리 볼륨(및 물리 볼륨 세그먼트) 필드 또는 논리 볼륨(및 논리 볼륨 세그먼트) 필드와 혼합할 수 있지만 물리 볼륨 및 논리 볼륨 필드는 혼합할 수 없습니다. 예를 들어 다음 명령은 각 물리 볼륨에 대해 하나의 출력 행을 표시합니다.
# 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. 오브젝트 표시 필드

이 섹션에서는 pvs, Cryostats 및 lvs 명령을 사용하여 LVM 오브젝트에 대해 표시할 수 있는 정보를 나열하는 일련의 테이블을 제공합니다.
편의를 위해 명령에 대한 기본값과 일치하는 경우 필드 이름 접두사를 삭제할 수 있습니다. 예를 들어 pvs 명령을 사용하면 name은 pv_ name 을 의미하지만, Cryostats 명령을 사용하면 name 이 Cryostat _name으로 해석됩니다.
다음 명령을 실행하는 것은 pvs -o pv_free 를 실행하는 것과 동일합니다.
# pvs -o free
  PFree
  17.14G
  17.09G
  17.14G
참고
pvs, Cryostats , lvs 출력 특성 필드에 있는 문자 수가 이후 릴리스에서 증가할 수 있습니다. 기존 문자 필드는 위치가 변경되지 않지만 새 필드가 끝에 추가될 수 있습니다. 이를 위해서는 특정 특성 문자를 검색하는 스크립트를 작성할 때 필드 시작 부분에 대한 상대적 위치에 따라 문자를 검색하지만 필드의 끝 부분에 대한 상대적 위치는 고려하지 않아야 합니다. 예를 들어 lv_attr 필드의 ninth 비트에서 문자 p 를 검색하려면 문자열 "^/......p/"을 검색할 수 있지만 문자열 "/*p$/"를 검색해서는 안 됩니다.

4.8.2.1. pvs 명령

표 4.3. “pvs 명령 표시 필드” pvs 명령의 표시 인수와 함께 헤더 표시 및 필드에 표시된 대로 필드 이름을 나열합니다.

표 4.3. pvs 명령 표시 필드

인수header설명
dev_sizeDevSize 물리 볼륨이 생성된 기본 장치의 크기
pe_start첫 번째 PE 기본 장치에서 첫 번째 물리 확장 영역의 시작 부분까지 오프셋
pv_attrattr 물리 볼륨의 상태: (a)llocatable 또는 e(x)ported.
pv_fmtFMT 물리 볼륨의 메타데이터 형식(lvm2 또는 lvm1)
pv_freePFree 물리 볼륨에 남은 여유 공간
pv_namePV 물리 볼륨 이름
pv_pe_alloc_countalloc 사용된 물리 확장 영역 수
pv_pe_countPE 물리 확장 영역 수
pvseg_sizeSSize 물리 볼륨의 세그먼트 크기입니다.
pvseg_start시작 물리 볼륨 세그먼트의 시작 물리 확장
pv_sizePSize 물리 볼륨의 크기
pv_tagsPV 태그 물리 볼륨에 연결된 LVM 태그
pv_used사용됨 물리 볼륨에서 현재 사용된 공간의 크기
pv_uuidPV UUID 물리 볼륨의 UUID
pvs 명령은 기본적으로 pv_name , pv_name,pv_fmt,pv_attr,pv_size,pv_free 라는 필드를 표시합니다. 디스플레이는 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
pvs 명령과 함께 -v 인수를 사용하면 기본 디스플레이인 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
pvs 명령의 --segments 인수를 사용하여 각 물리 볼륨 세그먼트에 대한 정보를 표시할 수 있습니다. 세그먼트는 확장 영역 그룹입니다. 세그먼트 보기는 논리 볼륨이 조각화되는지 여부를 확인하려는 경우 유용할 수 있습니다.
pvs --segments 명령은 기본적으로 pv_name, Cryostat_name ,pv_ fmt,pv_attr,pv_size,pv_free,pvseg_start,pvseg_size. 디스플레이는 물리 볼륨 내에서 pv_namepvseg_size 에 따라 정렬됩니다.
# 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 명령을 사용하여 LVM 물리 볼륨으로 초기화되지 않은 LVM에서 감지한 장치를 확인할 수 있습니다.
# 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

4.8.2.2. vgs 명령

표 4.4. “VGs 필드 표시” 헤더 표시에 표시되는 필드 이름 및 필드에 대한 설명과 함께 field name의 표시 인수를 나열합니다.

표 4.4. VGs 필드 표시

인수header설명
lv_count#LV 볼륨 그룹에 포함된 논리 볼륨 수
max_lvMaxLV 볼륨 그룹에 허용되는 최대 논리 볼륨 수(0 무제한)
max_pvMaxPV 볼륨 그룹에 허용되는 최대 물리 볼륨 수(0 무제한)
pv_count#PV 볼륨 그룹을 정의하는 물리 볼륨 수
snap_count#SN 볼륨 그룹에 포함된 스냅샷 수
vg_attrattr 볼륨 그룹의 상태: (w)r(r)eadonly, resi(z)eported, (p)artial 및 (c)lustered.
vg_extent_count#ext 볼륨 그룹의 물리 확장 영역 수
vg_extent_sizeext 볼륨 그룹의 물리 확장 영역의 크기
vg_fmtFMT 볼륨 그룹의 메타데이터 형식(lvm2 또는 lvm1)
vg_freeVFree 볼륨 그룹에 남아 있는 여유 공간의 크기
vg_free_count무료 볼륨 그룹에서 사용 가능한 물리 확장 영역 수
vg_nameVG 볼륨 그룹 이름
vg_seqnoseq 볼륨 그룹의 리버전을 나타내는 숫자
vg_sizeVSize 볼륨 그룹의 크기
vg_sysidSYS ID LVM1 시스템 ID
vg_tagsVG 태그 볼륨 그룹에 연결된 LVM 태그
vg_uuidVG UUID 볼륨 그룹의 UUID
Cryostats 명령은 기본적으로 다음 필드를 표시합니다. Cryostat _name,pv_count,lv_count,snap_count, Cryostat_attr, Cryostat_ size. 디스플레이는 vg_name 에 따라 정렬됩니다.
# vgs
  VG     #PV #LV #SN Attr   VSize  VFree
  new_vg   3   1   1 wz--n- 51.42G 51.36G
Cryostats 명령과 함께 -v 인수를 사용하면 기본 디스플레이에 다음 필드가 추가됩니다. Cryostat _extent_size, Cryostat_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

4.8.2.3. lvs 명령

표 4.5. “LVs 표시 필드” lvs 명령의 표시 인수와 함께 헤더 표시에 표시되는 필드 이름 및 필드에 대한 설명을 나열합니다.
참고
Red Hat Enterprise Linux의 최신 릴리스에서는 출력에 추가 필드가 추가되면서 lvs 명령의 출력이 다를 수 있습니다. 그러나 필드의 순서는 동일하게 유지되며 추가 필드는 디스플레이 끝에 표시됩니다.

표 4.5. LVs 표시 필드

인수header설명
chunksize
chunk_size
chunk 스냅샷 볼륨의 단위 크기
copy_percentCopy% pv_move 명령을 사용하여 물리 확장 영역을 이동할 때에도 미러링된 논리 볼륨의 동기화 백분율
장치장치 논리 볼륨을 구성하는 기본 장치: 물리 볼륨, 논리 볼륨, 물리 확장 영역 및 논리 확장 영역을 시작합니다.
lv_ancestors상위 (Red Hat Enterprise Linux 7.2 이상) 씬 풀 스냅샷의 경우 논리 볼륨의 상위
lv_descendants하위 항목 (Red Hat Enterprise Linux 7.2 이상) 씬 풀 스냅샷의 경우 논리 볼륨의 하위 항목입니다.
lv_attrattr 논리 볼륨의 상태. 논리 볼륨 특성 비트는 다음과 같습니다.
비트 1: 볼륨 유형: (m)irrored, (m)irrored, (o)rigin, (o)rigin과 병합 스냅샷 (r)aid, (r)aid, (s)napshot, 병합 (S)napshot, (p)vrating, (v)irtual, (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 data, raid or thin pool m(e)tadata 또는 pool metadata space.
비트 2: 권한: (w)r(r)ead 전용, (R) 비 읽기 전용 볼륨의 활성화
비트 3: 할당 정책: (a)nywhere, (c)ontiguous, (i)nherited, c(l)ing, (n)ormal. 예를 들어 pvmove 명령을 실행하는 동안 볼륨이 현재 할당 변경에 대해 잠겨 있으면 대문자로 표시됩니다.
비트 4: 고정된 (m)inor
비트 5: 상태: (a)ctive, (s)uspended 스냅샷, (I)nvalid 스냅샷, 유효하지 않은 (S)uspended 스냅샷, 스냅샷 (m)erge failed, 일시 정지 스냅샷 (M)erge failed, mapped (d)evice without tables, mapped device present with (i)active table
비트 6: 장치 (o)pen
비트 7: 대상 유형: (m)irror, (r)aid, (s)napshot, (t)hin, (u)nknown, (v)irtual. 이렇게 하면 동일한 커널 대상과 관련된 논리 볼륨이 함께 그룹화됩니다. 따라서 예를 들어 미러 이미지, 미러 로그는 원본 장치 매퍼 미러 커널 드라이버를 사용하는 경우 (m)로 표시되는 반면 md raid 커널 드라이버를 사용하는 것과 동일한 방식으로 모두 (r) 표시됩니다. 원래 장치 매퍼 드라이버를 사용하는 스냅샷은 (s)로 표시되는 반면 thin 프로비저닝 드라이버를 사용하는 스냅샷은 (t)로 표시됩니다.
비트 8: 새로 할당된 데이터 블록을 사용하기 전에 (z)ero 블록으로 덮어씁니다.
비트 9: (p)artial, (r)efresh 필요, (m)ismatches (w)ismatches가 거의 존재하지 않음을 나타냅니다. (p) 이 논리 볼륨이 시스템에서 사용되는 물리 볼륨 중 하나 이상이 누락되었음을 나타냅니다. (r)efresh는 이 RAID 논리 볼륨에서 사용하는 물리 볼륨 중 하나 이상이 누락되었음을 나타냅니다. (r)efresh는 쓰기 오류가 발생했음을 나타냅니다. 쓰기 오류는 해당 물리 볼륨의 일시적인 오류 또는 실패한 표시로 인해 발생할 수 있습니다. 장치를 새로 고치거나 교체해야 합니다. (m)ismatches는 RAID 논리 볼륨에 일관성이 없는 배열의 일부가 있음을 나타냅니다. 불일치는 RAID 논리 볼륨에서 검사 작업을 시작하여 검색됩니다. (검사 작업, 점검복구lvchange 명령을 통해 RAID 논리 볼륨에서 수행할 수 있습니다.) (w)rite는 대부분 쓰기로 표시된 RAID 1 논리 볼륨의 장치를 나타냅니다.
비트 10: s(k)ip 활성화: 이 볼륨은 활성화 중에 건너뛰도록 플래그가 지정됩니다.
lv_kernel_majorKMaj 논리 볼륨의 실제 주요 장치 번호( 비활성인 경우-1)
lv_kernel_minorKMIN 논리 볼륨의 실제 마이너 장치 번호( 비활성인 경우-1)
lv_majorMaj 논리 볼륨의 영구 주요 장치 번호(수정되지 않은 경우-1)
lv_minor 논리 볼륨의 영구 마이너 장치 번호(수정되지 않은 경우-1)
lv_nameLV 논리 볼륨의 이름
lv_sizeLSize 논리 볼륨의 크기
lv_tags포르 태그 논리 볼륨에 연결된 LVM 태그
lv_uuidLV UUID 논리 볼륨의 UUID입니다.
mirror_loglog 미러 로그가 있는 장치
modules모듈 이 논리 볼륨을 사용하는 데 필요한 커널 장치 매퍼 대상
move_pv이동 pvmove 명령을 사용하여 생성된 임시 논리 볼륨의 소스 물리 볼륨
origin출처 스냅샷 볼륨의 원본 장치
regionsize
region_size
리전 미러링된 논리 볼륨의 단위 크기
seg_count#Seg 논리 볼륨의 세그먼트 수
seg_sizeSSize 논리 볼륨의 세그먼트 크기입니다.
seg_start시작 논리 볼륨의 세그먼트 오프셋
seg_tagsSeg 태그 논리 볼륨의 세그먼트에 연결된 LVM 태그
segtype유형 논리 볼륨의 세그먼트 유형(예: mirror, striped, linear)
snap_percentsnap% 사용 중인 스냅샷 볼륨의 현재 백분율
스트라이프#Str 논리 볼륨의 스트라이프 수 또는 미러 수
stripesize
stripe_size
스트라이프 스트라이핑된 논리 볼륨의 단위 크기
lvs 명령은 기본적으로 lv_name, Cryostat_name ,lv_ attr,lv_size,origin,snap_percent,move_pv,mirror_log,copy_percent,convert_lv. 기본 디스플레이는 볼륨 그룹 내의 vg_namelv_name 에 따라 정렬됩니다.
# 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
lvs 명령과 함께 -v 인수를 사용하면 기본 디스플레이에 다음 필드가 추가됩니다. seg_count,lv_major,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
lvs 명령의 --segments 인수를 사용하여 세그먼트 정보를 강조하는 기본 열이 있는 정보를 표시할 수 있습니다. segments 인수를 사용하면 seg 접두사가 선택 사항입니다. lvs --segments 명령은 기본적으로 lv_name, Cryostat_name ,lv_ at trs ,스트라이프 유형 ,segtype,seg_size 필드를 표시합니다. 기본 디스플레이는 vg_name, 볼륨 그룹 내의lv_name, 논리 볼륨 내에서 seg_start 에 따라 정렬됩니다. 논리 볼륨이 조각화된 경우 이 명령의 출력에 다음이 표시됩니다.
# 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 --segments 명령과 함께 -v 인수를 사용하면 기본 디스플레이( 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
다음 예제에서는 하나의 논리 볼륨이 구성된 시스템의 lvs 명령의 기본 출력 다음에 지정된 세그먼트 인수와 함께 lvs 명령의 기본 출력을 보여줍니다.
# 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. LVM 보고서 정렬

일반적으로 lvs, Cryostats 또는 pvs 명령의 전체 출력은 올바르게 정렬되고 정렬되기 전에 내부적으로 생성되어 저장해야 합니다. --unbuffered 인수를 지정하여 불필요한 출력을 생성하는 즉시 표시할 수 있습니다.
정렬할 열 대체 정렬된 목록을 지정하려면 보고 명령의 -O 인수를 사용합니다. 이러한 필드를 출력 자체에 포함할 필요는 없습니다.
다음 예제에서는 물리 볼륨 이름, 크기, 사용 가능한 공간을 표시하는 pvs 명령의 출력을 보여줍니다.
# 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
다음 예제에서는 사용 가능한 공간 필드를 기준으로 정렬한 동일한 출력을 보여줍니다.
# 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
다음 예제에서는 정렬할 필드를 표시할 필요가 없음을 보여줍니다.
# pvs -o pv_name,pv_size -O pv_free
  PV         PSize
  /dev/sdc1  17.14G
  /dev/sdd1  17.14G
  /dev/sdb1  17.14G
역방향 정렬을 표시하려면 - 문자를 사용하여 -O 인수 뒤에 지정하는 필드 앞에 표시됩니다.
# 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. 단위 지정

LVM 보고서 디스플레이의 장치를 지정하려면 report 명령의 --units 인수를 사용합니다. (b) ilottes, (k)egabytes, (g)igabytes, (t)erabytes, (e)xabytes, (p)etabytes, (h)uman-readable-readable-readable-readable를 지정할 수 있습니다. 기본 디스플레이는 사람이 읽을 수 있습니다. lvm.conf 파일의 global 섹션에서 units 매개변수를 설정하여 기본값을 덮어쓸 수 있습니다.
다음 예제에서는 기본 기가바이트 대신 pvs 명령의 출력을 메가바이트로 지정합니다.
# 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
기본적으로 단위는 2의 거듭제곱(24개)으로 표시됩니다. 단위 사양 (B, K, M, G, T, H)을 활용하여 1000의 여러 단위에 장치를 표시하도록 지정할 수 있습니다.
다음 명령은 기본 동작인 1024의 수로 출력을 표시합니다.
# 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
다음 명령은 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
또한 (s)ectors(512바이트로 정의됨) 또는 사용자 지정 단위를 지정할 수도 있습니다.
다음 예제에서는 pvs 명령의 출력을 여러 섹터로 표시합니다.
# 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
다음 예제는 PVC 명령 출력을 4MB 단위로 표시합니다.
# 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

4.8.5. JSON 형식 출력(Red Hat Enterprise Linux 7.3 이상)

Red Hat Enterprise Linux 7.3부터 LVM 디스플레이 명령의 --reportformat 옵션을 사용하여 출력을 JSON 형식으로 표시할 수 있습니다.
다음 예제에서는 lv의 출력을 표준 기본 형식으로 보여줍니다.
# lvs
  LV      VG            Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  my_raid my_vg         Rwi-a-r---  12.00m                                    100.00
  root    rhel_host-075 -wi-ao----   6.67g
  swap    rhel_host-075 -wi-ao---- 820.00m
다음 명령은 JSON 형식을 지정할 때 동일한 LVM 구성의 출력을 보여줍니다.
# lvs --reportformat json
  {
      "report": [
          {
              "lv": [
                  {"lv_name":"my_raid", "vg_name":"my_vg", "lv_attr":"Rwi-a-r---", "lv_size":"12.00m", "pool_lv":"", "origin":"", "data_percent":"", "metadata_percent":"", "move_pv":"", "mirror_log":"", "copy_percent":"100.00", "convert_lv":""},
                  {"lv_name":"root", "vg_name":"rhel_host-075", "lv_attr":"-wi-ao----", "lv_size":"6.67g", "pool_lv":"", "origin":"", "data_percent":"", "metadata_percent":"", "move_pv":"", "mirror_log":"", "copy_percent":"", "convert_lv":""},
                  {"lv_name":"swap", "vg_name":"rhel_host-075", "lv_attr":"-wi-ao----", "lv_size":"820.00m", "pool_lv":"", "origin":"", "data_percent":"", "metadata_percent":"", "move_pv":"", "mirror_log":"", "copy_percent":"", "convert_lv":""}
              ]
          }
      ]
  }
output_format 설정을 사용하여 /etc/lvm/lvm.conf 파일에서 보고서 형식을 구성 옵션으로 설정할 수도 있습니다. 그러나 명령줄의 --reportformat 설정은 이 설정보다 우선합니다.

4.8.6. 명령 로그 보고(Red Hat Enterprise Linux 7.3 이상)

Red Hat Enterprise Linux 7.3부터 보고서 중심 및 처리 지향 LVM 명령 모두 log/report_command_log 구성 설정으로 활성화된 경우 명령 로그를 보고할 수 있습니다. 표시할 필드 집합을 확인하고 이 보고서에 따라 정렬할 수 있습니다.You can determine the set of fields to display and to sort by for this report.
다음 예제에서는 LVM 명령에 대한 전체 로그 보고서를 생성하도록 LVM을 구성합니다. 이 예에서는 볼륨이 포함된 볼륨 그룹 VG 와 마찬가지로 lvol0lvol1 모두 성공적으로 처리되었음을 확인할 수 있습니다.
# lvmconfig --type full log/command_log_selection
command_log_selection="all"

# lvs
  Logical Volume
  ==============
  LV    LSize Cpy%Sync
  lvol1 4.00m 100.00
  lvol0 4.00m

  Command Log
  ===========
  Seq LogType Context    ObjType ObjName ObjGrp  Msg     Errno RetCode
    1 status  processing lv      lvol0   vg      success     0       1
    2 status  processing lv      lvol1   vg      success     0       1
    3 status  processing vg      vg              success     0       1

# lvchange -an vg/lvol1
  Command Log
  ===========
  Seq LogType Context    ObjType ObjName ObjGrp  Msg     Errno RetCode
    1 status  processing lv      lvol1   vg      success     0       1
    2 status  processing vg      vg              success     0       1
LVM 보고서 및 명령 로그를 구성하는 방법에 대한 자세한 내용은 lvmreport 도움말 페이지를 참조하십시오.