누구든지 도와줄 수 있나요? 기본 파티션에 걸쳐 2개의 디스크가 있습니다. 하나는 460Gb이고 다른 하나는 1TB입니다. 1TB를 삭제하고 싶습니다 - 다른 머신에서 사용하고 싶습니다.
어쨌든 볼륨 그룹은 많은 공간을 사용하지 않으며 해당 디스크를 사용하는 도커와 몇 개의 컨테이너만 있고 어쨌든 내 도커 컨테이너 볼륨은 다른 물리적 디스크에 있습니다.
디스크([물리적])만 제거하면 문제가 발생겠죠?
이건 정보야
pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name ubuntu-vg
PV Size <464.26 GiB / not usable 2.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 118850
Free PE 0
Allocated PE 118850
PV UUID DA7Q8E-zJEz-2FzO-N64t-HtU3-2Z8P-UQydU4
--- Physical volume ---
PV Name /dev/sdb1
VG Name ubuntu-vg
PV Size 931.51 GiB / not usable 4.69 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 238466
Free PE 0
Allocated PE 238466
PV UUID Sp6b1v-nOj2-XXdb-GZYf-1Vej-cfdr-qLB3GU
LVM은 나를 약간 혼란스럽게 합니다 :-)
그냥 단순한 예시 아닌가요?
"VG에서 자신을 제거하고 나머지 그룹 구성원을 사용하는 모든 것을 평가하십시오"?
1TB가 나중에 추가되었다는 점은 주목할 가치가 있으므로 제거하기가 더 쉽다고 가정합니까?
어떤 도움이라도 정말 감사하겠습니다
편집하다
그리고 추가 정보
df -h
Filesystem Size Used Avail Use% Mounted on
udev 16G 0 16G 0% /dev
tmpfs 3.2G 1.4M 3.2G 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 1.4T 5.1G 1.3T 1% /
또한 1%만 사용하세요.
또한 lvs를 출력합니다.
lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
ubuntu-lv ubuntu-vg -wi-ao---- 1.36t
편집하다
pvdisplay -m
--- Physical volume ---
PV Name /dev/sda3
VG Name ubuntu-vg
PV Size <464.26 GiB / not usable 2.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 118850
Free PE 0
Allocated PE 118850
PV UUID DA7Q8E-zJEz-2FzO-N64t-HtU3-2Z8P-UQydU4
--- Physical Segments ---
Physical extent 0 to 118849:
Logical volume /dev/ubuntu-vg/ubuntu-lv
Logical extents 0 to 118849
--- Physical volume ---
PV Name /dev/sdb1
VG Name ubuntu-vg
PV Size 931.51 GiB / not usable 4.69 MiB
Allocatable NO
PE Size 4.00 MiB
Total PE 238466
Free PE 0
Allocated PE 238466
PV UUID Sp6b1v-nOj2-XXdb-GZYf-1Vej-cfdr-qLB3GU
--- Physical Segments ---
Physical extent 0 to 238465:
Logical volume /dev/ubuntu-vg/ubuntu-lv
Logical extents 118850 to 357315
편집하다
산출
lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
loop0 squashfs /snap/core/9066
loop2 squashfs /snap/core/9289
sda
├─sda1 vfat E6CC-2695 /boot/efi
├─sda2 ext4 0909ad53-d6a7-48c7-b998-ac36c8f629b7 /boot
└─sda3 LVM2_membe DA7Q8E-zJEz-2FzO-N64t-HtU3-2Z8P-UQydU4
└─ubuntu--vg-ubuntu--lv
ext4 b64f2bf4-cd6c-4c21-9009-76faa2627a6b /
sdb
└─sdb1 LVM2_membe Sp6b1v-nOj2-XXdb-GZYf-1Vej-cfdr-qLB3GU
└─ubuntu--vg-ubuntu--lv
ext4 b64f2bf4-cd6c-4c21-9009-76faa2627a6b /
sdc xfs 1a9d0e4e-5cec-49f3-9634-37021f65da38 /gluster/bricks/2
위의 sdc는 다른 드라이브이며 관련이 없습니다.
답변1
디스크를 제거해야 하는 파일 시스템은뿌리파일 시스템이고 파일 시스템 유형이 이면 ext4
먼저 일부 라이브 Linux 부팅 미디어에서 시스템을 부팅해야 합니다. Ubuntu Live는 이 문제에 대한 좋은 해결책이 될 수 있습니다.
외부 미디어에서 부팅한 후 sudo vgchange -ay ubuntu-vg
LV에 액세스할 수 있도록 실행하여 볼륨 그룹을 활성화합니다. 그러나 파일 시스템을 마운트하지 마십시오. 축소하려면 ext2/3/4 파일 시스템을 마운트 해제해야 합니다. 그런 다음 파일 시스템을 10G로 축소합니다(또는 원하는 크기 - 나중에 또는 온라인에서도 쉽게 다시 확장할 수 있음).
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv 10G
메시지 출력에 주의하십시오 resize2fs
. 파일 시스템을 그만큼 축소할 수 없다는 메시지가 나타나면 더 큰 크기를 지정하고 다시 시도하십시오.
이는 외부 미디어에서 부팅할 때 완료해야 하는 유일한 단계입니다. 그 이후에는 시스템을 정상적으로 부팅할 수 있습니다.
이 시점에서 파일 시스템은 10G(또는 지정한 크기)로 축소되어야 합니다. 다음 단계는 LV의 크기를 줄이는 것입니다.결정적으로, LV의 새로운 크기는 파일 시스템의 새로운 크기와 정확히 같거나 커야 합니다!LV를 축소할 때 파일 시스템의 꼬리 부분을 잘라내고 싶지는 않습니다. 여기서는 약간 더 큰 크기를 지정하는 것이 가장 안전합니다.
sudo lvreduce -L 15G /dev/mapper/ubuntu--vg-ubuntu--lv
이제 pvdisplay
또는 를 사용하여 LVM이 이제 완전 무료로 간주되는지 pvs
확인하세요 . /dev/sdb1
에서 및 값은 pvdisplay
동일 해야 합니다. 출력 에서 값은 각각 동일해야 합니다 . 그렇지 않은 경우 다음을 사용해야 합니다 .Total PE
Free PE
sdb1
pvs
PFree
PSize
pvmove
sudo pvmove /dev/sdb1
이후 sdb1
LVM에 따르면 PV는 확실히 완전 무료이며 VG에서 축소될 수 있습니다.
sudo vgreduce vg-ubuntu /dev/sdb1
원하는 경우 ex-PV에서 LVM 서명을 제거할 수 있습니다.
sudo pvremove /dev/sdb1
하지만 덮어쓰고 싶다면 이 단계를 생략해도 됩니다.
이러한 단계를 완료한 후에도 LV가 이보다 약간 더 클 수 있더라도 축소된 파일 시스템의 크기는 여전히 10G(또는 사용자가 지정한 값)입니다. 이 문제를 해결하려면:
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
파일 시스템을 확장할 때 크기를 지정할 필요가 없습니다. 도구는 파일 시스템을 포함하는 가장 안쪽 장치의 정확한 크기와 일치하도록 파일 시스템을 자동으로 확장합니다. 이 경우 파일 시스템 크기는 LV 크기에 따라 조정됩니다.
나중에 LV+ 파일 시스템을 확장하려면 다음 두 명령만 사용하면 됩니다.
sudo lvextend -L <new size> /dev/mapper/ubuntu--vg-ubuntu--lv
sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
파일 시스템이 사용 중이고 마운트된 경우에도 이 작업을 수행할 수 있습니다. 파일 시스템을 축소하는 것이 확장하는 것보다 어렵기 때문에 LVM 수준에서 일정량의 할당되지 않은 공간을 예약하는 것이 유용할 수 있습니다. 이를 즉시 사용하여 새 LV를 생성하거나 필요에 따라 기존 LV를 확장할 수 있습니다. 동일한 VG 중간.
답변2
질문에 의견을 추가하세요.
을 실행했는데 vgreduce ubuntu-vg /dev/sdb1
메시지가 표시되면 /dev/sdb is still in use
데이터가 있고 문제 없이 삭제할 수 없다는 의미입니다.
그렇지 않으면 볼륨 그룹에서 성공적으로 제거되며 실행하여 pvremove /dev/sdb1
LVM 레이블을 제거한 다음 머신에서 디스크를 제거하고 다른 곳에서 사용할 수 있습니다.
를 사용할 수 있지만 pvmove /dev/sdb1
을 얻는다면 No extents available for allocation
디스크에 이동할 수 있는 여유 공간이 없다는 의미일 수 있습니다.
를 실행하면 pvdisplay -m
물리 확장 영역을 포함하여 물리 볼륨에 대한 매핑 데이터를 볼 수 있습니다. 예를 들어 실행해서 FREE
아래를 보면 Physical Extents
을 실행할 수 있습니다 pvmove -v /dev/sdb1:<[physical_extent_with_data> /dev/sda3/:<physical_extent_free> --alloc anywhere
. 귀하의 경우에는 출력 결과가 pvdisplay
가득 차서 No extents available for allocation
메시지가 표시되기 때문에 작동하지 않는 것 같습니다 .
어떤 작업을 하기 전에 데이터를 백업했는지 확인하세요. 디스크를 제거하고 싶다면 lvreduce
나중에 사용할 수 없다면 여러 개의 볼륨 그룹을 생성하여 시스템 설치 시 하나만 재구축하면 되는 것을 권장합니다.