시스템의 최소 이미지 만들기 [복제]

시스템의 최소 이미지 만들기 [복제]

Linux 시스템의 이미지를 만들고 싶습니다. 64GB SD 카드가 있는데 시스템이 11GB만 차지합니다. dd 명령, Win32DiskManager 등은 모두 11GB보다 훨씬 큰 64GB 원시 이미지를 생성합니다.

Filesystem      Size  Used Avail Use% Mounted on
/dev/root        59G   11G   46G  20% /
devtmpfs        430M     0  430M   0% /dev
tmpfs           462M  4.0K  462M   1% /dev/shm
tmpfs           462M   13M  450M   3% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           462M     0  462M   0% /sys/fs/cgroup
/dev/mmcblk0p1   43M   25M   18M  59% /boot
tmpfs            93M  4.0K   93M   1% /run/user/1000

16GB SD 카드가 하나 더 있는데 전체 시스템을 16GB SD 카드로 전송하고 싶습니다. 나중에 16GB SD 카드에 구울 수 있도록 11GB img 파일을 만드는 것이 좋습니다.

답변1

64GB 장치의 이미지를 16GB 카드에 쓸 수 없습니다. 이는 "이미지"의 의미와 정면으로 모순됩니다.

그러나 그것은 전혀 중요하지 않습니다. Linux는 파일 시스템의 파일에만 관심이 있으므로 다음을 사용하십시오.

sudo mksquashfs /path/where/you/mounted/your/sdcard sdcard.squashfs -comp zstd

모든 속성을 포함하여 모든 파일, 디렉터리, 심볼릭 링크, 장치 파일 등의 압축 아카이브를 만듭니다.

나중에 아카이브를 설치하거나 udisksctl loop-setup -f sdcard.squashfs, sudo mount -o loop sdcard.squashfs /mnt​​내부를 살펴보고, 거기에서 파일을 가져올 수 있습니다.

설치 및 사용을 통해 새로 포맷된(예: ext4, F2FS) SD 카드에 모든 파일을 복원할 수도 있습니다.

sudo cp -ar /mnt/* /mount/point/of/sdcard

아니면 단순히 실행하여

sudo unsquashfs -d /mount/point/of/sdcard sdcard.squashfs

관련 정보