Rocky Linux - 디스크 추가 GPT 파티션 설정 [Parted + LVM]

    앞서 들어가기 전 이전 내용을 꼭 참고하여 주시기 바랍니다 : https://foxydog.tistory.com/99

    테스트 환경

    □ VMware Workstation

    □ OS Rocky Linux release 8.5 (Green Obsidian)

     

    □ 가상 하드 디스크 8TB GPT 파티션에 파일 시스템 Linux LVM으로 구성, VMware에서 가상의 8TB의 하드 디스크를 하나 더 추가하여 동일하게 Linux LVM으로 세팅합니다. 이 두 개를 하나의 논리 볼륨으로 통합하여 총 16TB로 만들어 보도록 하겠습니다. [요약 : 8TB GPT Linux LVM + 8TB GPT Linux LVM = 16TB 적용]

    □ LVM 관련 내용은 포스팅 참고 : https://foxydog.tistory.com/20


    ■ 첫번째 8TB GPT + Linux LVM 설정 [Disk /dev/sdb]

    ① 추가된 파티션 확인

    [root@Rocky ~]# fdisk -l

    Disk /dev/sdb: 8 TiB, 8796093022208 bytes, 17179869184 sectors

    Units: sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 512 bytes

    ② /dev/sdb 파티션 작업

    [root@Rocky ~]# parted /dev/sdb

    GNU Parted 3.2

    Using /dev/sdb

    Welcome to GNU Parted! Type 'help' to view a list of commands.

     

    (parted) mklabel gpt

     

    (parted) mkpart primary 0 8796GB

    Warning: The resulting partition is not properly aligned for best performance: 34s % 2048s != 0s

    Ignore/Cancel? I

     

    (parted) print

    Model: VMware, VMware Virtual S (scsi)

    Disk /dev/sdb: 8796GB

    Sector size (logical/physical): 512B/512B

    Partition Table: gpt

    Disk Flags:

    Number     Start           End          Size      File system      Name     Flags

     1           17.4kB     8796GB      8796GB                       primary

    ③ 타입을 Linux LVM 으로 적용

    ※ 여기서 추가로 타입을 LVM으로 적용, 해당 파티션이 Flags 부분이 LVM 활성화하기 위해서는 [Status] 부분에 ON 적용을 하면 됩니다. 예시 : (parted) set [Number] lvm [Status]

    (parted) set 1 lvm on

    (parted) print

    Model: VMware, VMware Virtual S (scsi)

    Disk /dev/sdb: 8796GB

    Sector size (logical/physical): 512B/512B

    Partition Table: gpt

    Disk Flags:

    Number     Start           End          Size      File system      Name     Flags

     1           17.4kB     8796GB      8796GB                       primary      LVM (추가 확인)

    (parted) quit

    ④ Fdisk에서도 적용 확인

    [root@Rocky ~]# fdisk -l


    ■ 두번째 8TB GPT + Linux LVM 설정 [Disk /dev/sdc]

    ① VMware에서 8TB 가상 하드 디스크를 하나 더 추가합니다.

    이후 서버 재부팅

    [root@Rocky ~]# reboot

    ② 추가된 파티션 확인

    [root@Rocky ~]# fdisk -l

    Disk /dev/sdc: 8 TiB, 8796093022208 bytes, 17179869184 sectors

    Units: sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 512 bytes

    ③ /dev/sdc 파티션 작업

    [root@Rocky ~]# parted /dev/sdc

    GNU Parted 3.2

    Using /dev/sdb

    Welcome to GNU Parted! Type 'help' to view a list of commands.

     

    (parted) mklabel gpt

     

    (parted) mkpart primary 0 8796GB

    Warning: The resulting partition is not properly aligned for best performance: 34s % 2048s != 0s

    Ignore/Cancel? I

     

    (parted) print

    Model: VMware, VMware Virtual S (scsi)

    Disk /dev/sdc: 8796GB

    Sector size (logical/physical): 512B/512B

    Partition Table: gpt

    Disk Flags:

    Number     Start           End          Size      File system      Name     Flags
     1           17.4kB     8796GB      8796GB                       primary

    ③ 타입을 Linux LVM으로 적용

    ※ 여기서 추가로 타입을 LVM을 적용, 해당 파티션이 Flags 부분이 LVM 활성화하기 위해서는 [Status] 부분에 ON 적용을 하면 됩니다. 예시 : (parted) set [Number] lvm [Status]

    (parted) set 1 lvm on

    (parted) print
    Model: VMware, VMware Virtual S (scsi)
    Disk /dev/sdb: 8796GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Disk Flags:

    Number     Start           End          Size      File system      Name     Flags
     1           17.4kB     8796GB      8796GB                       primary    LVM (추가 확인)

    (parted) quit

    ④ Fdisk에서도 적용 최종 확인

    [root@Rocky ~]# fdisk -l

    이제 두 개의 /dev/sdb1, /dev/sdc1 디스크를 하나의 논리 볼륨으로 묶는 작업을 진행합니다.

    앞으로 LVM 작업시에는 PV ▶ VG ▶ LV 이 순서를 꼭 기억하자!


    STEP01 - [ PV(Physical volume) ] 물리 볼륨 생성하기

    ※ 여기서는 파일 시스템 포맷을 하지 말고 바로 물리 볼륨 생성으로 넘어갑니다.

    [root@Rocky ~]# pvcreate /dev/sdb1

      Physical volume "/dev/sdb1" successfully created.

    [root@Rocky ~]# pvcreate /dev/sdc1

      Physical volume "/dev/sdc1" successfully created.

    [root@Rocky ~]# pvscan

      PV /dev/sda3   VG rl              lvm2 [<37.00 GiB / 0    free]

      PV /dev/sdb1                       lvm2 [<8.00 TiB]

      PV /dev/sdc1                       lvm2 [<8.00 TiB]

      Total: 3 [<16.04 TiB] / in use: 1 [<37.00 GiB] / in no VG: 2 [<16.00 TiB]


    STEP02 - [ VG(Volume Group) ] 볼륨 그룹 생성 및 확장하기

    ※ 논리 볼륨 하나에 모든 용량을 할당하므로 첫 번째 디스크는 볼륨 그룹으로 새로(vgcreate) 생성하고 두 번째 디스크는 동일한 볼륨 그룹에 포함시키기 위해 확장(vgextend)으로 생성, 그룹 이름은 실제 서버 운영할 경우 용도에 맞게 구분 할 수 있도록 이름을 정하는게 좋습니다.

    [root@Rocky ~]# vgcreate foxydog /dev/sdb1

      Volume group "foxydog" successfully created

    [root@Rocky ~]# vgextend foxydog /dev/sdc1

      Volume group "foxydog" successfully extended

    [root@Rocky ~]# pvscan

      PV /dev/sdb1   VG foxydog         lvm2 [<8.00 TiB / <8.00 TiB free]

      PV /dev/sdc1   VG foxydog         lvm2 [<8.00 TiB / <8.00 TiB free]

      PV /dev/sda3   VG rl              lvm2 [<37.00 GiB / 0    free]

      Total: 3 [<16.04 TiB] / in use: 3 [<16.04 TiB] / in no VG: 0 [0   ]


    STEP03 - [ LV(Logical Volume) ] 논리 볼륨 생성과 동시에 용량 할당(전부 할당)

    [root@Rocky ~]# lvcreate -n home2lv -l +100%FREE foxydog
      Logical volume "home2lv" created.

    [root@Rocky ~]# pvscan
      PV /dev/sdb1   VG foxydog         lvm2 [<8.00 TiB / 0    free]
      PV /dev/sdc1   VG foxydog         lvm2 [<8.00 TiB / 0    free]
      PV /dev/sda3   VG rl              lvm2 [<37.00 GiB / 0    free]
      Total: 3 [<16.04 TiB] / in use: 3 [<16.04 TiB] / in no VG: 0 [0   ]

    [root@Rocky ~]# lvscan
      ACTIVE            '/dev/foxydog/home2lv' [<16.00 TiB] inherit
      ACTIVE            '/dev/rl/home' [20.00 GiB] inherit
      ACTIVE            '/dev/rl/root' [<17.00 GiB] inherit


    STEP04 - 파일 시스템 포맷

    [root@Rocky ~]# mkfs.ext4 /dev/foxydog/home2lv


    STEP05 - 마운트 포인트 생성 및 디스크 마운트

    ① 마운트 포인트(폴더) 생성
    [root@Rocky ~]# mkdir /home2

     

    ② 생성한 폴더(/home 2)에 논리 볼륨 마운트
    [root@Rocky ~]# mount /dev/foxydog/home2lv /home2

     

    ③ 마운트 확인
    [root@Rocky /]# df -h


    STEP06 - 부팅 시 자동 마운트 설정

    ① fstab 설정 파일 수정
    [root@Rocky ~]# vi /etc/fstab  [맨 하단에 추가 후 저장]
    /dev/foxydog/home2lv       /home2              ext4      defaults        0    0

    ※ 이전과 동일하게 디스크 장치의 고유 식별 ID로 등록해도 됩니다.

    [root@Rocky ~]# blkid | grep home2
    /dev/mapper/foxydog-home2lv: UUID="21b88112-58e6-45a6-b898-4d211970d5c9" BLOCK_SIZE="4096" TYPE="ext4"

    ② 추가 후 재부팅 테스트
    ※ fstab 설정 파일을 잘못 수정하면 부팅 시 에러 날 수 있으니 신중히 등록해주세요.
    [root@Rocky ~]# reboot
    [root@Rocky ~]# df -h


    보시다시피 여러 개의 디스크를 하나의 논리 볼륨으로 묶을 수도 있고, 또는 용량이 큰 하나의 디스크를 여러개의 볼륨으로 나누어 사용할 수도 있으니 상황에 따라 LVM 명령어를 사용하는 방법을 숙지해야 합니다.

     

    참고 블로그 : https://lifegoesonme.tistory.com/451?category=781049 

     

    [리눅스] LVM 구성 ③편 - LVM 명령어 총정리

    Linux LVM 구성(운영) 가이드 · Linux LVM 구성①편 - PV,VG,LV,FS 생성 및 마운트 · Linux LVM 구성②편 - PV,VG,LV,FS 확장/용량 추가 · Linux LVM 구성③편 - LVM 명령어 총정리 ← 현재 보고 있는 페..

    lifegoesonme.tistory.com

    께서 아주 정리를 잘해놓으셔서 참고하시면 될 것 같습니다.

    Designed by JB FACTORY