240GB SSD에는 처음에 두 개의 파티션이있었습니다. 하나는 Linux Mint의 논리 볼륨을 포함하고 다른 하나는 Windows와 공유 할 NTFS 파티션을 포함했습니다. .
이제 NTFS 파티션을 제거하고 해제 된 디스크 공간을 사용하도록 논리 볼륨 그룹을 확장하려고합니다.
볼륨 그룹 확장 , 내 / home 및 / home의 파일 시스템 (ext4) ? 이것이 온라인으로 가능합니까?
PS : 예, 데이터를 백업해야한다는 것을 알고 있습니다. 🙂
/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
댓글
답변
이 작업은 매우 간단하게 수행 할 수 있습니다. 여기에 이미 이에 대한 답이 없다는 것에 놀랐습니다.
크기를 조정하려는 파일 시스템에서 실행하는 동안 전체 프로세스를 수행 할 수 있습니다 (예, 안전하고 완벽하게 지원됨). 복구 CD 나 대체 운영 체제가 필요하지 않습니다.
- 파티션 크기를 조정합니다 (다시 실행중인 시스템에서이 작업을 수행 할 수 있음). GParted 는 사용하기 쉽고 크기 조정을 지원합니다.
fdisk
와 같은 하위 수준 도구를 사용할 수도 있습니다. . 그러나 “파티션을 삭제하고 다시 만들어야합니다. 그렇게 할 때 새 파티션이 정확히 동일한 위치에서 시작되는지 확인하십시오. - 재부팅. 파티션 테이블이 실행중인 시스템에서 수정되었으므로, 재부팅 할 때까지 적용되지 않습니다.
-
pvresize /dev/sdXY
를 실행하여 LVM이 새 공간을 선택하도록합니다. - 논리 볼륨 크기 조정
lvextend
. 전체를 사용하려면lvextend -r -l +100%FREE /dev/VGNAME/LVNAME
.-r
도 파일 시스템의 크기를 조정합니다.
항상 전체 볼륨 그룹을 사용하지 않는 것이 좋습니다. 앞으로 무엇이 필요할지 알 수 없습니다. 나중에 언제든지 확장 할 수 있지만 축소 할 수는 없습니다.
댓글
- 귀하의 답변을 수락하고 싶지만 ‘ GParted가 ‘ 할 수 있기 때문에 귀하가 제안한대로 작동하지 않았습니다. 실행중인 시스템의 루트 파티션 크기를 조정합니다 (적어도 제 경우에는).
- @HalosGhost 편집 내용을 되돌 렸습니다.
partprobe -s
는 당신이 생각하는대로하지 않습니다. 커널은 사용중인 파티션의 크기를 선택하지 않습니다.partprobe -s
는 크기를 조정하는 동안 파티션이 사용 중일 때만 작동하지만 (따라서 fdisk가 커널에 실패했음을 알렸을 때) 더 이상 작동하지 않습니다. - @Patrick, 나는 그것에 대한 아이디어를 추가하지 않았습니다. 나는 명령을 백틱에 넣어 편집을 ” 개선했습니다. li> 아, 죄송합니다. 잘못된 역사 이벤트에서 이름을 읽어보세요. @Qetesh가 적용됩니다. 🙂
- “를 사용하여 전혀 재부팅하지 않는 것이 ‘ 가능합니다. partx -u ” 2 단계에서 커널에 파티션 ‘의 크기를 업데이트하도록 지시합니다. 활성 파티션에서도 작동하며 /sys/…/sdXY/size 전후를 확인하여 확인했습니다.
답변
없음 답변은 LVM의 힘을 정당화합니다.
(위 질문에 대한 @frostchutz 의견을 기반으로합니다.)
사실을 파악합시다 :
- OP에는 두 개의 파티션이 있습니다. sdb1과 sdb2는 LVM의 물리적 볼륨입니다.
- sdb1은 현재 ntfs이므로 해당 공간을
home
linuxvg
볼륨 그룹 내부의 div> 논리 볼륨.
” 실용적인 방법을 사용하는 LVM 단계 ” :
- sdb1에 물리 볼륨 생성 :
pvcreate /dev/sdb1
- s 추가 db1에서
linuxvg
:vgextend linuxvg /dev/sdb1
- 논리 볼륨 확장
home
모든 여유 공간 :lvextend -r -l +100%FREE /dev/linuxvg/home
LVM은 상당한 수준의 간접 지정을 허용합니다. 논리 볼륨은 여러 디스크를 사용할 수있는 볼륨 그룹 내에 있습니다.
home-> linuxvg-> (sdb1, sdb2, sdc1)
http://tldp.org/HOWTO/LVM-HOWTO/createvgs.html
댓글
- 작동했습니다. 감사합니다. 마지막 2 개의 명령 lvextend + resizefs 대신
lvresize -l +100%FREE ...
를 사용했습니다. - 알겠습니다. @AlessandroDentella를 공유해 주셔서 감사합니다!
- 추가하는 경우
-r
를 lvextend 명령에 추가하면 파일 시스템도 자동으로 확장됩니다. 따라서 :lvextend -r -l +100%FREE /dev/linuxvg/home
그리고resize2fs
- 업데이트를 피할 수 있습니다. 감사! @lucaferrario
답변
이 블로그 게시물입니다. 간단한 형식으로 솔루션을 작성하겠습니다.
- 라이브 CD에서 부팅
-
gdisk
사용 (GPT를 사용하는 경우 ) 그렇지 않으면 오래된fdisk
- 파티션 설정에 유의하십시오. 제 경우에는
gdisk -l /dev/sdb
- 다음을 사용하여 파티션을 삭제합니다.
- 이전 파티션과 정확히 동일한 정렬로 새 파티션을 만듭니다 (이 예에서는 블록 2048에서 시작)
- 새 파티션 테이블 작성
-
partprobe -s
를 실행하여 재부팅하지 않고 파티션 테이블을 새로 고칩니다. -
pvresize /dev/sdb1
또는 pv가있는 곳 (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
- enjoy 🙂
Commen ts
- 실제로이 단계의 절반 정도를 잘라 내고 한 번만 재부팅하면됩니다.
- GParted는 파티션 크기 조정을 거부했습니다. 잠김 (이 키 기호).
답변
이미 훌륭한 답변이 있습니다.
xfs를 사용하는 경우 resize2fs 대신
xfs_growfs /mountpoint
명령을 사용합니다. 마운트 지점이 예를 들어 “루트 파티션을 늘렸고 이후에 재부팅 할 필요가없는 경우”와 같이 활성화됩니다.
vgextend
를 사용했습니다. 기존 PV 파티션을 확장하는 경우 Linux는 디스크가 사용되는 동안 파티션 테이블을 다시 읽는 것을 거부하므로 재부팅해야합니다. 이 온라인 작업은 어색합니다. -현재 파티션 테이블을 보여주세요.