yocto linux - 디스크 이미지를 축소하는 방법

yocto linux - 디스크 이미지를 축소하는 방법

신인 경고.

나는 win32 Disk Imager를 사용하여 16Gb Scandisk SD 카드를 백업합니다. 이미지를 복원하려는 Verbatim 16GB SD 카드 배치가 있습니다. Win32 디스크 이미저는 섹터 수가 적다고 불평합니다.

dd많은 게시물을 읽은 후 내 도구 를 사용하여 conv=sparse더 작은 이미지 sp를 만들 수 있다고 생각했습니다 .

  • 32GB 카드를 찾았습니다
  • 복원된 이미지
  • 이로 인해 2개의 파티션(하나는 fat32 부팅, 하나는 ext3)이 생성되었으므로 할당되지 않은 공간을 사용하여 세 번째 파티션을 만든 다음 아래와 같이 원래 2개의 파티션을 세 번째 파티션의 파일에 복제해 보았습니다.

dd if=/dev/mmcblk0 bs=512 skip=8192 count=31108096 conv=sparse > /mnt/d/test.img

문제는 파일이 여전히 크다는 것입니다.

root@pcu:~# ls -al /mnt/d
total 1355300
drwxr-xr-x 3 root root        4096 Sep  7 17:55 .
drwxr-xr-x 3 root root        4096 Sep  7 17:40 ..
drwx------ 2 root root       16384 Sep  7 17:46 lost+found
-rw-r--r-- 1 root root 15927345152 Sep  7 18:09 test.img

내가 가진 또 다른 문제는 이것이 임베디드 칩의 맞춤형 (yockto) Linux이므로 GParted를 사용할 수 없다고 생각한다는 것입니다.

경험 부족으로 인해 명백한 내용이 누락되었을 수 있다는 점을 충분히 알고 있습니다. 도움이나 조언을 주시면 대단히 감사하겠습니다.

편집하다

최종 목표는 Win32 디스크 이미저와 함께 사용하여 SD 카드에 쓸 수 있는 이미지를 만드는 것입니다.

답변1

결국 제가 한 일은 두 번째 파티션을 복제하고, 새 파티션을 축소하고, 두 번째 파티션을 축소하고, 세 번째 파티션을 다시 두 번째 파티션에 복제하는 것이었습니다. 여기서 "shrink"는 resize2fs를 사용하여 파일 시스템 크기를 조정하고 fdisk를 사용하여 파티션을 다시 만드는 것을 의미합니다. 그런 다음 세 번째 파티션을 삭제했습니다. 마지막으로 "할당된 파티션만 읽기" 상자를 선택하는 것을 기억하면서 Win32 Disk Imager를 사용하여 이미지를 읽습니다.

처음에는 두 번째 파티션을 복제하지 않고 "축소" 방법을 사용해 보았습니다. 이것은 실패했습니다. 아마도 운영 체제 파일을 저장하기 때문일 것입니다.

부팅 가능한 USB를 만들고 GParted 등을 사용할 수 있도록 완전한 Linux가 있었으면 좋겠습니다.

관련 정보