ฉันมีการ์ด SDHC Class 10 UHS-1 SD จากผู้ผลิตหลายราย มีการแบ่งพาร์ติชันทั้งหมดดังนี้
$ sudo fdisk -l /dev/sdj
Disk /dev/sdj: 14.9 GiB, 15931539456 bytes, 31116288 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: 0x0000de21
Device Boot Start End Sectors Size Id Type
/dev/sdj1 2048 1050623 1048576 512M c W95 FAT32 (LBA)
/dev/sdj2 1050624 2099199 1048576 512M 83 Linux
/dev/sdj3 2099200 3147775 1048576 512M 83 Linux
/dev/sdj4 3147776 31116287 27968512 13.3G 83 Linux
ฉันใช้ตัวทำสำเนาการ์ดหน่วยความจำเพื่อคัดลอกรูปภาพ การ์ดทั้งหมดมีเนื้อหาเหมือนกัน
เมื่อฉันติดตั้งพาร์ติชั่นที่สองของการ์ด SD สองการ์ดใด ๆ และเปรียบเทียบเนื้อหาพวกเขาจะเหมือนกันทุกประการ
$ sudo mount -o ro /dev/sdg2 /mnt/system-a/
$ sudo mount -o ro /dev/sdj2 /mnt/system-b/
$ diff -r --no-derefence /mnt/system-a /mnt/system-b/
$ # prints nothing^
อย่างไรก็ตามถ้าฉันเปรียบเทียบ sha1sum ของพาร์ติชันบางครั้งพวกเขาก็แตกต่างกัน
$ sudo dd if=/dev/sdg2 | sha1sum
1048576+0 records in
1048576+0 records out
536870912 bytes (537 MB) copied, 12.3448 s, 43.5 MB/s
ee7a16a8d7262ccc6a2e6974e8026f78df445e72 -
$ sudo dd if=/dev/sdj2 | sha1sum
1048576+0 records in
1048576+0 records out
536870912 bytes (537 MB) copied, 12.6412 s, 42.5 MB/s
4bb6e3e5f3e47dc6cedc6cf8ed327ca2ca7cd7c4 -
คนแปลกหน้าถ้าฉันเปรียบเทียบทั้งสองไดรฟ์โดยใช้เครื่องมือการกระจายแบบไบนารีradiff2
ฉันเห็นสิ่งต่อไปนี้
$ sudo dd if=/dev/sdg2 of=sdg2.img
1048576+0 records in
1048576+0 records out
536870912 bytes (537 MB) copied, 12.2378 s, 43.9 MB/s
$ sudo dd if=/dev/sdj2 of=sdj2.img
1048576+0 records in
1048576+0 records out
536870912 bytes (537 MB) copied, 12.2315 s, 43.9 MB/s
$ radiff2 -c sdg2.img sdj2.img
767368
การเปลี่ยนแปลง 767368 แม้ว่าจะdiff
ไม่เห็นความแตกต่างในเนื้อหา!
และเพื่อสติถ้าฉันเปรียบเทียบสองพาร์ติชันที่มี sha1sum เดียวกันฉันจะเห็นสิ่งต่อไปนี้
$ radiff2 -c sdj2.img sdf2.img
0
0 การเปลี่ยนแปลง!
นี่คือรายละเอียดของ sha1sums ที่แตกต่างกันที่ฉันเห็นจากการ์ดที่แตกต่างกัน ดูเหมือนว่าผู้ผลิตการ์ดจะมีผลกระทบอย่างมากต่อสิ่งที่ฉันได้รับเมื่อฉันใช้ dd เพื่ออ่านไดรฟ์
แม้จะมีความแตกต่างใน sha1sums แต่การ์ดเหล่านี้ใช้ได้สำหรับวัตถุประสงค์ของฉัน อย่างไรก็ตามมันทำให้การตรวจสอบจำนวนเต็มเป็นเรื่องยากเพราะฉันไม่สามารถเปรียบเทียบ sha1sums ได้
เป็นไปได้อย่างไรที่พาร์ทิชันการ์ด SD สองพาร์ติชันอาจมี sha1sums แตกต่างกัน แต่มีเนื้อหาเหมือนกันทุกประการเมื่อทำการเมาท์?
คำตอบ:ดังนั้นตอนนี้มันทำงานได้ตามที่คาดไว้ เพื่อล้างสิ่งต่าง ๆ ขึ้นมาความไม่ลงรอยกันนั้นเกิดจากนักทำสำเนา SySTOR ที่ฉันใช้ การตั้งค่าการคัดลอกที่ฉันมีใช้ข้อมูลพาร์ติชันและไฟล์ที่คัดลอก แต่ไม่จำเป็นต้องใช้บิตเพื่อให้แน่ใจว่ามีการแข่งขันแบบหนึ่งต่อหนึ่ง