RooTer에 대한 의견에서 A)로 초기 파티션 크기를 줄 gparted
였지만 dd
여전히 전체 카드를 복사하고 B) 이미지에 두 파티션을 모두 포함하고 싶다고 언급했습니다.
"A"문제는 쉽게 설명 할 수 있습니다 /dev/mmcblk0
. 이것이 바로 전체 카드를 복사하는 것 입니다. 각각의 파티션은 물론이다 /dev/mmcblk0p1
와 /dev/mmcblk0p2
. 이것은 문제 "B"의 합병증이지만 dd
시작 부분의 파티션 테이블 /dev/mmcblk0
이 각 파티션의 시작과 길이를 색인화 하기 때문에 각 파티션을 간단하게 연결하고 두 파일을 함께 연결할 수는 없습니다 . 그렇지 않으면 이미지를 사용할 수 없게됩니다.
그러나에서 각 파티션의 길이를 가져 와서 fdisk -l
이를 사용하여에 대한 일부 매개 변수를 결정할 수 있습니다 dd
. 예를 들면 다음과 같습니다.
> fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 16.1 GB, 16138633216 bytes
4 heads, 16 sectors/track, 492512 cylinders, total 31520768 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00017b69
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 8192 122879 57344 c W95 FAT32 (LBA)
/dev/mmcblk0p2 122880 26746879 13312000 83 Linux
"시작"및 "종료"단위는 섹터이며 섹터 크기는 512 바이트입니다. 를 들어 /dev/mmcblk0p2
, 26746879 (마지막 부문) - 122880 (첫번째 섹터) = 2분의 26,623,999 (킬로바이트 당 2 개 부문) / 1024 (MB 당 KB) / 1024 (GB 당 MB는) 내가 gparted를 사용하여 파티션을 성장하는 12.69를 = 12GB로 설정하면 올바르게 보입니다 (실제로 스토리지가있는 제수로 1024가 아닌 1000을 사용해야하며 13.31GB로 작동하지만 gparted 및 일부 다른 도구도 1024를 사용한다고 생각합니다).
따라서 가장 먼저 확인하려는 것은 두 번째 파티션이 실제로 설정 한 크기보다 작은 것입니다. 다음으로 그 숫자를 dd
; 와 함께 사용하십시오 . 나를 위해 그것은 :
dd if=/dev/mmcblk0 of=rpi.img bs=512 count=26746880
dd
작동 방식 에 대한 오해로 인해 어떤 종류의 문제도 피할 수있는 추가 부문이 있습니다. 이것이 작동하는지 확인하는 간단한 방법이 있습니다.
> fdisk -l rpi.img
Disk rpi.img: 102 MB, 102400000 bytes
255 heads, 63 sectors/track, 12 cylinders, total 200000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00017b69
Device Boot Start End Blocks Id System
rpi.img1 8192 122879 57344 c W95 FAT32 (LBA)
rpi.img2 122880 26746879 13312000 83 Linux
여기에 약간의 불일치가 있습니다. "시작"및 "종료"섹터는 원래 파티션 테이블과 일치하지만 통계의 총 크기는 102MB에 불과합니다! 왜냐하면 실제로 12GB 사본을 사용하고 싶지 않기 때문에 실제로 count=200000
매개 변수로 사용 dd
했기 때문입니다 ( "총 200000 섹터"에 유의). 하단의 표가 이것을 반영하지 않는 이유는 fdisk가 SD 카드의 시작 부분에서 이미지의 시작 부분에 그대로 복사 된 파티션 데이터에서 정보를 가져 오기 때문입니다. 두 번째 단락에서 언급했듯이 유지하다. 나머지를 (적절하게) 복사하면 숫자가 공평하고 이미지가 실용적입니다.
시도해보십시오. :)