resize2fs의 새로운 크기를 결정하는 방법은 무엇입니까?

resize2fs의 새로운 크기를 결정하는 방법은 무엇입니까?

나는 새로운 파티션을 위한 공간을 만들기 위해 ext4 파일 시스템을 축소하고 싶었고 이 프로그램을 발견했습니다 resize2fs. 명령은 다음과 같습니다.

resize2fs -p /dev/mapper/ExistingExt4 $size

$size현재 ext4 파일 시스템에서 15GiB를 뺄 것인지 어떻게 결정해야 합니까 ? 출력을 사용할 수 있는 방법이 있나요 df?

답변1

df파일 시스템(이 경우 ext4)에서 보고한 크기를 표시하므로 사용하면 안 됩니다 .

dumpe2fs -h /dev/mapper/ExistingExt4명령을 사용하여 파티션의 실제 크기를 알아보세요. 이 -h옵션을 사용하면 dumpe2fs다른 불필요한 세부 정보 없이 슈퍼블록 정보가 표시됩니다. 필요한 출력에서블록 수그리고블록 크기.

...  
블록 수:              19506168  
예약된 블록 수: 975308  
무료 블록: 13750966  
무료 인덱스 노드: 4263842  
첫 번째 블록: 0  
블록 크기:               4096  
...

이 값을 곱하면 파티션 크기가 제공됩니다.바이트.

위의 숫자는 1024의 완벽한 배수이므로 결과를 KiB 단위로 계산할 수 있습니다.

$ python -c 'print 19506168.0 * 4096 / 1024'  # python2
$ python -c 'print(19506168.0 * 4096 / 1024)' # python3
78024672.0

파티션을 15GiB만큼 축소하려고 하므로(예: 15MiB x 1KiB):

$ python -c 'print 19506168.0 * 4096 / 1024  -  15 * 1024 * 1024'   #python2
$ python -c 'print(19506168.0 * 4096 / 1024  -  15 * 1024 * 1024)'  #python3
62296032.0

resize2fs여러 접미사가 허용되며 그 중 하나는 "1024바이트" 이므로 K파티션을 62296032KiB로 축소하는 명령은 다음과 같습니다.

resize2fs -p /dev/mapper/ExistingExt4 62296032K

단위가 없으면 숫자는 파일 시스템 블록 크기(이 경우 4096)의 배수로 해석됩니다. 바라보다사람들은 2fs의 크기를 조정합니다(8)

관련 정보