lvextend가 지정된 공간보다 적은 양을 할당하는 이유는 무엇입니까?

lvextend가 지정된 공간보다 적은 양을 할당하는 이유는 무엇입니까?

볼륨을 확장하려고 합니다. 볼륨을 이라고 부르겠습니다 /dev/vol1. 전화할 때 초기 볼륨 크기가 500MB인 것을 확인했습니다.

df --block-size=M /dev/vol1

그런 다음 100MB를 더 확장하려면 다음을 호출합니다.

lvextend -L+100M /dev/vol1
resize2fs /dev/vol1

하지만 크기를 다시 확인하면

df --block-size=M /dev/vol1

595가 반환되는데, 이는 95MB만 얻었음을 나타냅니다. 이러한 불일치의 원인은 무엇입니까? MB가 1024KB와 1000KB인 것과 관련이 있다고 생각하지만 문제가 어디에 있는지 잘 모르겠습니다.

답변1

LVM 유틸리티의 크기를 지정할 때 대문자는 10진수 단위(K=1000, M=1000000 등)를 나타내고 소문자는 2진수 단위(k=1024, m=1048576 등)를 나타냅니다. 이는 및 매뉴얼 페이지에 언급되어 있지만 pvs크기 인수를 사용하는 다른 명령에 대한 매뉴얼 페이지에는 언급되어 있지 않습니다 vgs. lvs볼륨을 100,000,000바이트 ≒ 95MiB만큼 확장했습니다.

답변2

논리 볼륨의 실제 세부 정보를 보려면 lvscan또는 lvdisplay를 사용해 보십시오 .lvs

df -hM = 1,048,576바이트로 보고됩니다.

df -HM = 1,000,000바이트로 보고합니다.

관련 정보