LVM과 여기에 포함된 물리 및 논리 볼륨을 사용하여 파티션을 확장하는 방법은 무엇입니까?

LVM과 여기에 포함된 물리 및 논리 볼륨을 사용하여 파티션을 확장하는 방법은 무엇입니까?

내 240GB SSD에는 처음에 두 개의 파티션이 있었습니다. 하나는 Linux Mint의 논리 볼륨을 포함하고 다른 하나는 Windows와 공유되는 NTFS 파티션을 포함했습니다.

이제 NTFS 파티션을 삭제했으며 여유 디스크 공간을 사용하기 위해 논리 볼륨 그룹을 확장하려고 합니다.

내가 어떻게 할볼륨 그룹 확장, 내 거/home을 포함하는 논리 볼륨그리고파일 시스템(ext4)/집에? 온라인으로 할 수 있나요?

추신: 예, 데이터를 백업해야 한다는 것을 알고 있습니다 :)

/dev/sdb/  (240GB)
    linuxvg  (160GB) should use 100% of the disk space
        swap
        root
        home (ext4, 128GB) should be extended to use the remaining space

출력 sudo vgdisplay:

  --- Volume group ---
  VG Name               linuxvg
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               160,00 GiB
  PE Size               4,00 MiB
  Total PE              40959
  Alloc PE / Size       40959 / 160,00 GiB
  Free  PE / Size       0 / 0   
  VG UUID               ...
   
  --- Logical volume ---
  LV Path                /dev/linuxvg/swap
  LV Name                swap
  VG Name                linuxvg
  LV UUID                ...
  LV Write Access        read/write
  LV Creation host, time mint, 2013-08-06 22:48:32 +0200
  LV Status              available
  # open                 2
  LV Size                8,00 GiB
  Current LE             2048
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0
   
  --- Logical volume ---
  LV Path                /dev/linuxvg/root
  LV Name                root
  VG Name                linuxvg
  LV UUID                ...
  LV Write Access        read/write
  LV Creation host, time mint, 2013-08-06 22:48:43 +0200
  LV Status              available
  # open                 1
  LV Size                24,00 GiB
  Current LE             6144
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1
   
  --- Logical volume ---
  LV Path                /dev/linuxvg/home
  LV Name                home
  VG Name                linuxvg
  LV UUID                ...
  LV Write Access        read/write
  LV Creation host, time mint, 2013-08-06 22:48:57 +0200
  LV Status              available
  # open                 1
  LV Size                128,00 GiB
  Current LE             32767
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:2
   
  --- Physical volumes ---
  PV Name               /dev/sdb1     
  PV UUID               ...
  PV Status             allocatable
  Total PE / Free PE    40959 / 0

출력 sudo fdisk -l:

Disk /dev/sdb: 240.1 GB, 240057409536 bytes
255 heads, 63 sectors/track, 29185 cylinders, total 468862128 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
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1   468862127   234431063+  ee  GPT

Disk /dev/mapper/linuxvg-swap: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders, total 16777216 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
Disk identifier: 0x00000000


Disk /dev/mapper/linuxvg-root: 25.8 GB, 25769803776 bytes
255 heads, 63 sectors/track, 3133 cylinders, total 50331648 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
Disk identifier: 0x00000000


Disk /dev/mapper/linuxvg-home: 137.4 GB, 137434759168 bytes
255 heads, 63 sectors/track, 16708 cylinders, total 268427264 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
Disk identifier: 0x00000000

답변1

크기를 조정하려는 파일 시스템에서 실행하는 동안 전체 프로세스를 완료할 수 있습니다(예, 안전하고 완벽하게 지원됩니다). 복구 CD나 백업 운영 체제가 필요하지 않습니다.

  1. 파티션 크기를 조정합니다(시스템이 실행되는 동안에도 이 작업을 수행할 수 있습니다).고팟사용하기 쉽고 크기 조정을 지원합니다.
    와 같은 하위 수준 도구를 사용할 수도 있습니다 fdisk. 하지만 파티션을 삭제하고 다시 만들어야 합니다. 이 작업을 수행할 때 새 파티션이 정확히 동일한 위치에서 시작되는지 확인하십시오.
  2. 재시작. 파티션 테이블은 실행 중인 시스템에서 수정되므로 재부팅할 때까지 적용되지 않습니다.
  3. pvresize /dev/sdXYLVM이 새로운 공간을 확보하도록 하려면 실행하세요 .
  4. 크기 조정 논리 볼륨을 사용하십시오 lvextend. 모든 것을 사용하려면 파일 시스템의 크기도 조정됩니다 lvextend -r -l +100%FREE /dev/VGNAME/LVNAME.-r
    나는 항상 전체 볼륨 그룹을 사용하지 말 것을 권장합니다. 미래에 무엇이 필요할지 결코 알 수 없습니다. 나중에 언제든지 확장할 수 있지만 항상 축소할 수는 없습니다.

답변2

어떤 답변도 LVM의 기능을 완전히 반영하지 않습니다.

(위 질문에 대한 @frostchutz의 의견을 바탕으로 작성되었습니다.)

사실을 알아봅시다:

  • OP에는 두 개의 파티션이 있으며 sdb1과 sdb2는 LVM 물리적 볼륨입니다.
  • homesdb1은 이제 ntfs이므로 해당 공간을 볼륨 그룹 내의 논리 볼륨 에 할당해야 합니다 linuxvg.

LVM을 "실용적으로" 사용하는 단계:

  • sdb1에 물리 볼륨을 생성합니다:pvcreate /dev/sdb1
  • 다음에 sdb1을 추가하십시오 linuxvg.vgextend linuxvg /dev/sdb1
  • home사용 가능한 모든 공간을 사용하여 논리 볼륨을 확장하고 파일 시스템 크기를 조정합니다.lvextend -r -l +100%FREE /dev/linuxvg/home

LVM은 높은 수준의 간접 참조를 허용합니다. 논리 볼륨은 여러 디스크를 사용할 수 있는 볼륨 그룹 내에 위치합니다.

홈 --> linuxvg --> (sdb1, sdb2, sdc1)

http://tldp.org/HOWTO/LVM-HOWTO/createvgs.html

답변3

이 내용을 읽고 나면 문제가 해결되었습니다.이것블로그 게시물. 솔루션을 짧은 형식으로 작성하겠습니다.

  • 라이브 CD에서 부팅
  • (GPT를 사용하는 경우)를 사용하세요 gdisk. 그렇지 않으면 이전 버전을 사용할 수 있습니다.fdisk
  • 제 경우에는 파티션 설정에 주의해 주세요.gdisk -l /dev/sdb
  • 파티션 삭제
  • 이전 파티션과 정확히 동일한 정렬로 새 파티션을 생성합니다(예제에서는 블록 2048에서 시작).
  • 새 파티션 테이블에 쓰기
  • partprobe -s재부팅하지 않고 파티션 테이블을 새로 고치려면 실행하세요 .
  • pvresize /dev/sdb1PV가 있는 곳이나 위치에 관계없이 물리적 볼륨의 크기를 조정합니다( pvs모르는 경우)
  • lvextend -l +100%FREE /dev/file/of/your/lv이제 제 경우에는 다음을 사용하여 논리 볼륨의 크기를 조정합니다.sudo lvextend -l +100%FREE /dev/linuxvg/home
  • 파일 시스템 크기 조정sudo resize2fs /dev/linuxvg/home
  • 먼저 일관성을 확인하세요.sudo e2fsck -f /dev/linuxvg/home
  • 즐기다:)

답변4

저는 RHEL7을 사용하고 있으며 확장 기능이 필요합니다 /var. 전문가는 아니지만 시도할 때마다 실패 umount /var합니다 resize2fs. 왜냐하면 놀랄 일도 아니기 때문입니다. 며칠간의 시행착오 끝에 나는 그것이 나에게 효과가 있다는 것을 알았습니다.

먼저 VMWare vSphere(또는 사용 중인 하이퍼바이저라고 가정)의 디스크에 공간을 추가합니다.

그런 다음 RHEL7 VM에서 루트로 다음 단계에 따라 추가 디스크 공간을 확보합니다 /var.

  1. 나는 앉을 곳을 lsblk찾기 위해 달려갔다./var

    • 디스크sda
    • 분할sda2
    • 좌심실 두께rhel-var

    따라서 r은 /va디스크 파티션의 논리 볼륨입니다.sda2sda

  2. 새 공간을 확보하려면 디스크를 가져오세요.

    echo 1 > /sys/class/block/**sda**/device/rescan
    

    굵은 글씨 부분은 생성한 논리 볼륨이 위치한 디스크여야 합니다.

  3. Get Device Partition을 실행하여 parted공간을 확보하세요.

    parted
    
  4. parted print명령을 실행하여 파티션 번호를 가져옵니다.

  5. parted resizepart명령을 실행하여 새 파티션 크기를 설정하십시오.

  6. parted print명령을 실행하여 파티션 크기가 증가되었는지 확인합니다.

  7. quit프로그램을 종료하려면 parted를 실행하세요 .

  8. pvresize이제 파티션이 더 커졌음을 운영 체제에 알리려면 실행하세요 sda2.

    pvresize /dev/sda2
    
  9. 파티션에 새 공간을 얻으 lvextend려면 실행하십시오 ./var

    lvextend -l +100%FREE '/dev/mapper/rhel-var'
    

    /dev/mapper/rhel-var을 실행하여 파일 시스템 이름을 얻었 습니다 df -h.

  10. resize2fs이전 단계에서 논리 볼륨에 방금 추가한 추가 공간을 운영 체제가 요구하도록 하려면 good old를 사용하십시오 .

    resize2fs '/dev/mapper/rhel-var'
    

임무 완료. 다음을 실행하여 성공을 확인하세요.df -h

관련 정보