resize2fs의 새로운 크기를 어떻게 결정합니까?


22

새 파티션을위한 공간을 만들기 위해 ext4 파일 시스템을 축소하고 프로그램을 살펴보고 싶습니다 resize2fs. 명령은 다음과 같습니다.

resize2fs -p /dev/mapper/ExistingExt4 $size

$size현재 ext4 파일 시스템에서 정확히 15GiB를 빼려면 어떻게해야 합니까? df어떻게 든 출력을 사용할 수 있습니까 ?

답변:


39

df파일 시스템이보고 한 크기 (이 경우 ext4)를 표시하므로 사용하지 마십시오 .

dumpe2fs -h /dev/mapper/ExistingExt4명령을 사용하여 파티션의 실제 크기를 찾으십시오. 이 -h옵션을 사용하면 dumpe2fs불필요한 다른 세부 정보없이 슈퍼 블록 정보를 표시 할 수 있습니다. 출력에서 블록 수 와 블록 크기 가 필요합니다 .

...  
블록 수 :               19506168  
예약 된 블록 수 : 975308  
무료 블록 : 13750966  
무료 inode : 4263842  
첫 번째 블록 : 0  
블록 크기 :                4096  
...

이 값을 곱하면 파티션 크기가 바이트로 표시 됩니다. 위의 숫자는 1024의 완벽한 배수입니다.

$ python -c 'print 19506168.0 * 4096 / 1024'
78024672.0

파티션을 15GiB로 줄이려고하므로 (15KiB x 1KiB) :

$ python -c 'print 19506168.0 * 4096 / 1024  -  15 * 1024 * 1024'
62296032.0

으로 resize2fs접미사의 여러 종류를 받아, 그들 중 하나 인 K"1024 바이트", 킬로바이트가된다 62,296,032에 파티션을 축소하기위한 명령 :

resize2fs -p /dev/mapper/ExistingExt4 62296032K

단위가 없으면 숫자는 파일 시스템의 블록 크기의 배수 (이 경우 4096)로 해석됩니다. 참조 남자 resize2fs (8)


3
man resize2fs : 선택적으로 size 매개 변수는 512 바이트 섹터, 킬로바이트, 메가 바이트 또는 기가 바이트와 같은 단위 지정자 's', 'K', 'M'또는 'G'중 하나로 접미사를 붙일 수 있습니다. . 블록 계산을 수행하는 것보다 간단 할 수 있습니다.
— lkraav

1
당신이 누락되지 않습니다 k에 resize2fs -p /dev/mapper/ExistingExt4 62296032?
— Sopalajo de Arrierez

@SopalajodeArrierez 당신이 맞아요, 수도 K가 빠졌습니다. 이 문자가 없으면 크기가 실제 디스크보다 크기 때문에 resize2fs가 제 경우에 불만을 제기해야합니다.
— Lekensteyn

2
dumpe2fs파티션 크기를보고하지 않습니다. 실제로 파일 시스템의 크기를보고합니다. (아마도 당신이 원하는 것이기 때문에 좋았습니다.)
— Mehrdad
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.