LVM2, LV 생성 시 PV 지정 여부를 확인하는 방법

LVM2, LV 생성 시 PV 지정 여부를 확인하는 방법

LV를 생성할 때 LV(에 대한 데이터)가 특정 물리적 장치에만 기록될 수 있도록 지정할 수 있습니다(lvm이 적합하다고 판단되는 곳에 데이터를 배치하도록 허용하는 대신).

예를 들어.

lvcreate -L 100G -n lvOnSdb1 theVG /dev/sdb1

lvcreate 매뉴얼 페이지에서:

새 LV에서 사용할 PV를 제어하려면 명령줄 끝에 하나 이상의 PV를 위치 인수로 지정합니다. lvcreate는 지정된 PV에서만 물리적 확장 영역을 할당합니다.

그러나 그것이 완료되었는지 나중에 어떻게 알 수 있습니까? LV는 특정 PV로 제한되나요?

편집 이 질문은 내 오해로 인해 발생했습니다. LV 크기 조정/크기 조정이 필요했기 때문에/LV가 사용되었기 때문에 풀의 다양한 부분에서 실제 미디어를 사용하는 LVM이라고 생각했습니다. . 따라서 나중에 별도로 지시하지 않는 한 현재 나열된 PV만 사용합니다. (이 문제를 명확히 해준 Vojtech Trefny에게 감사드립니다!)

답변1

이를 사용하여 lvdisplay -m해당 세그먼트가 할당된 LV 세그먼트 및 PV를 표시할 수 있습니다.

  --- Logical volume ---
  LV Name                root
...
 Segments               1
...
  --- Segments ---
  Logical extents 0 to 17916:
    Type                linear
    Physical volume     /dev/mapper/luks-dfcda59b-1322-4705-bb04-e09a72b2d678
    Physical extents    210601 to 228517

내 논리 볼륨에는 세그먼트가 하나만 있고 암호화된 PV에 배치되어 있음을 알 수 있습니다 root(여러 PV에 걸쳐 있는 여러 LV가 있는 물리 볼륨이 하나만 있으며 여기에는 더 많은 세그먼트가 표시됩니다).

두 개의 세그먼트가 있는 논리 볼륨의 예(하나의 PV에만 적합):

# lvdisplay -m test/lvol0
  --- Logical volume ---
  LV Name                lvol0
...
  Segments               2
...
  --- Segments ---
  Logical extents 0 to 123:
    Type                linear
    Physical volume     /dev/sdb
    Physical extents    0 to 123
   
  Logical extents 124 to 162:
    Type                linear
    Physical volume     /dev/sdc
    Physical extents    0 to 38

편집: LV가 나열된 PV에 수동으로 배치되었는지 알 수 없습니다. lvcreate선택적 매개변수는 생성된 LV가 아닌 "생성" 작업에만 영향을 미칩니다. 지정된 PV를 사용하여 생성된 LV와 LV 사이에는 차이가 없습니다. 특정 PV에 할당된 LV의 LVM에 의해 생성됩니다. 유사한 명령을 사용하는 향후 작업에는 영향을 미치지 않습니다 lvresize(PV를 지정할 수도 있음 lvresize).

어떤 lvm 명령이 실행되었는지 확인하려면 로깅과 로그 파일을 설정할 수 있습니다.lvm.conf.

관련 정보