파일 시스템에서 사용되는 ext2 블록의 올바른 계산

파일 시스템에서 사용되는 ext2 블록의 올바른 계산

내가 달성하고 싶은 것은 ext2 파일 시스템을 안전하게 축소하고 기본 물리적 파티션을 (파일 시스템 블록을 자르지 않고) 안전한 최소 수준으로 잘라내거나 축소할 수 있는지 확인하는 것입니다. 나는 많은 HowTo-s를 확인했지만 dumpe2fs가 보고한 실제 ext2 사용법을 결정할 때 뭔가 빠졌는지 묻고 싶습니다. 내 테스트 사례는 다음과 같습니다.

root@buster:/tmp# dd if=/dev/zero of=/tmp/del.img bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB, 1000 MiB) copied, 0.429782 s, 2.4 GB/s

root@buster:/tmp# losetup -f --show /tmp/del.img 
/dev/loop0

root@buster:/tmp# mkfs.ext2 /dev/loop0
mke2fs 1.44.5 (15-Dec-2018)
Discarding device blocks: done                            
Creating filesystem with 256000 4k blocks and 64000 inodes
Filesystem UUID: 217a401a-a001-46e8-8ca2-9602e927e2aa
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376

Allocating group tables: done                            
Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done

root@buster:/tmp# mount /dev/loop0 /mnt/EXT2/

root@buster:/tmp# dumpe2fs /dev/loop0 | grep -E '(Block count|Block size)'
dumpe2fs 1.44.5 (15-Dec-2018)
Block count:              256000
Block size:               4096

제가 아는 한 파일 시스템은 1048576000바이트(256000*4096)를 사용합니다.

root@buster:/tmp# cp -pr /opt/Scripts/ /mnt/EXT2/

root@buster:/tmp# umount /mnt/EXT2 

root@buster:/tmp# e2fsck -f /dev/loop0
e2fsck 1.44.5 (15-Dec-2018)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/loop0: 457/64000 files (6.6% non-contiguous), 67098/256000 blocks

root@buster:/tmp# resize2fs -M /dev/loop0
resize2fs 1.44.5 (15-Dec-2018)
Resizing the filesystem on /dev/loop0 to 63894 (4k) blocks.
The filesystem on /dev/loop0 is now 63894 (4k) blocks long.

root@buster:/tmp# dumpe2fs /dev/loop0 | grep -E '(Block count|Block size)'
dumpe2fs 1.44.5 (15-Dec-2018)
Block count:              63894
Block size:               4096

축소 후 파일 시스템이 261709824바이트(63894*4096)를 사용하는 것 같습니다. 100% 경우 기본 물리적 파티션을 이 261709824바이트로 안전하게 잘라내거나 축소할 수 있다고 가정할 수 있습니까? 일부 파일 시스템 블록이 261709824바이트 이후에도 여전히 물리적으로 위치합니까?

관련 정보