เมื่อขยายคำตอบของ Williamคุณสามารถคำนวณจุดจบของพาร์ติชั่นสุดท้ายโดยใช้fdisk
และเครื่องคำนวณ:
$ fdisk -l /dev/mmcblk0
Disk /dev/mmcblk0: 7.4 GiB, 7948206080 bytes, 15523840 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
Disklabel type: dos
Disk identifier: 0x00057540
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 2048 186367 184320 90M c W95 FAT32 (LBA)
/dev/mmcblk0p2 186368 3667967 3481600 1.7G 5 Extended
/dev/mmcblk0p5 188416 3667967 3479552 1.7G 83 Linux
พื้นที่ใช้งานทั้งหมดเป็นไบต์ = เซกเตอร์สิ้นสุดของขนาดเซกเตอร์พาร์ติชัน X ล่าสุด (ที่นี่คือ 3667967 x 512)
พื้นที่ใช้งานทั้งหมดในหน่วย GB = พื้นที่ใช้งานทั้งหมดเป็นไบต์ / 1024 3 (นี่คือ 1.749023 GB)
โดยปกติแล้วมันไม่สำคัญที่จะสร้างภาพที่ตัดลงไปจนถึงบิตสุดท้ายของข้อมูลที่มีประโยชน์ดังนั้นในตัวอย่างข้างต้นฉันจะสร้างภาพขนาด 2 GB โดยใช้วิธีที่ William อธิบายไว้ในคำตอบก่อนหน้านี้ :
dd if=/dev/mmcblk0 of=/path/to/pi_updated.img bs=1M count=2048
การรวมไว้ที่ส่วนท้ายของรูปภาพจะเป็นส่วนเล็ก ๆ ของ guff ที่ไร้ประโยชน์หลังจากข้อมูลที่เป็นประโยชน์ครั้งสุดท้ายของคุณ แต่ไม่แตกต่างจากหลักการใน guff ที่ไม่มีประโยชน์ที่จะถูกเขียนทับเมื่อคุณเขียนรูปภาพกลับไปที่สื่อของคุณ
วิธีนี้ใช้ได้ผลกับฉันมากกว่าหนึ่งโหล หากมีข้อบกพร่องร้ายแรงในวิธีนี้พวกเขายังไม่ได้โผล่ขึ้นมา
dd
การ์ดอื่น ๆ ยังต้องการทราบว่าเป็นไปได้ที่จะแก้ปัญหาเริ่มต้น