ext4 파일 시스템에서 사용되는 마지막 섹터를 찾는 방법은 무엇입니까?

ext4 파일 시스템에서 사용되는 마지막 섹터를 찾는 방법은 무엇입니까?

다른 장치로 이동할 수 있도록 ext4 파일 시스템에서 사용되는 마지막 섹터를 식별해야 합니다.

파일 시스템은 축소되고( resize2fs) 이를 포함하는 파티션보다 작으므로 파티션에서 마지막 섹터를 찾는 방법을 묻지 않습니다.

완료 tune2fs -l하고 확인했습니다.

Block count:              48934
First block:              0
Block size:               4096

이를 통해 파일 시스템이 48934 * 4096 / 512 = 391472 섹터를 사용하고 dd파티션의 첫 번째 섹터부터 시작하여 많은 섹터를 이동할 수 있다고 가정합니다(보고된 대로 gdisk).

해당 블록 수에 ext4 오버헤드가 포함되어 있는지 또는 고려해야 할 추가 크기가 있는지 확실하지 않습니다. 나는 읽었다이 문제이는 고려해야 할 추가 공간이 있음을 의미합니다.

답변1

당신 말이 맞아요. 문제가 없어야합니다.

일부 계산을 피하기 위해 해당 bs옵션을 사용하고 오프셋에서 시작하는 대신 장치의 파티션 이름을 사용할 수 있습니다.

dd count=48934 bs=4096 if=/dev/sdxN  of=... 

크기를 100% 확신하려면 먼저 테스트해 보세요. 더 작은 파티션을 "시뮬레이트"합니다.

umount /dev/XYZ
losetup --offset N-BYTES --sizelimit $(( 48934 * 4096 )) /dev/loop1 /dev/XYZ

mount아니면 너무 작게 만들고 있는지 알려주어야 합니다 fsck. 파티션이 여전히 너무 큰지 알려주었을 것입니다. 그러나 그렇지 않았습니다 . 내가 한 번도 사용해 본 적이 없는 것을 시도해 볼 수도 있습니다 . 편집증이 있는 경우 작업이 끝나면 를 사용해야 합니다 ./dev/loop1resize2fsdry-runfsadm -v --dry-run check/resize ...losetup --read-onlylosetup --detach

관련 정보