ฉันมีไฟล์ ISO และ DVD เขียนจากไฟล์ ISO นั้น มีวิธีที่ฉันสามารถตรวจสอบว่าดีวีดีมีไฟล์ ISO เหมือนกันหรือไม่และไม่มีอะไรผิดปกติกับดีวีดีหรือไม่
ฉันมีไฟล์ ISO และ DVD เขียนจากไฟล์ ISO นั้น มีวิธีที่ฉันสามารถตรวจสอบว่าดีวีดีมีไฟล์ ISO เหมือนกันหรือไม่และไม่มีอะไรผิดปกติกับดีวีดีหรือไม่
คำตอบ:
คำสั่งต่อไปนี้เปรียบเทียบเนื้อหาของไฟล์ไบนารีสองไฟล์และพิมพ์ออฟเซ็ตของไบต์ที่แตกต่างแรก แทนที่/dev/dvd
โดยเส้นทางไปยังอุปกรณ์ดีวีดี ( /dev/cdrom
, /dev/scd0
, /dev/hdc
, ... )
cmp /dev/dvd /path/to/foo.iso
ฉันไม่แน่ใจว่าดีวีดีทุกแผ่นมีข้อบ่งชี้ว่าข้อมูลสิ้นสุดลงที่ใด (ฉันคิดว่าซีดีบางแผ่นไม่มี) คุณสามารถ จำกัด การเปรียบเทียบกับขนาดของไฟล์ภาพ
ls -l /path/to/foo.iso # copy the file size, e.g. 123456789 bytes
cmp -n 123456789 /dev/dvd /path/to/foo.iso
คุณยังสามารถคำนวณ checksum ของไฟล์รูปภาพคำนวณ checksum สำหรับดิสก์และตรวจสอบว่าตรงกันหรือไม่ สิ่งนี้ช้ากว่าสำหรับการเปรียบเทียบเดี่ยว แต่เร็วกว่าหากคุณต้องการเปรียบเทียบดิสก์จำนวนมากกับภาพหนึ่งภาพและอนุญาตให้ภาพและดิสก์นั้นอยู่ในคอมพิวเตอร์เครื่องอื่น ในการตรวจจับการทุจริตโดยไม่ได้ตั้งใจmd5sum
นั้นเหมาะสมอย่างยิ่ง
md5sum /path/to/foo.iso
md5sum /dev/dvd # if the size can be determined; otherwise:
head -c 123456789 /dev/dvd | md5sum
cmp -n 123456789 /dev/dvd /path/to/foo.iso
เนื่องจากคำถามนั้นไม่ใช่เฉพาะระบบปฏิบัติการและผู้ใช้ Windows อาจหาทางมาที่นี่ฉันจะแนะนำว่าวิธีที่ง่ายที่สุดในการทำสิ่งนี้บน Windows คือติดตั้ง ISO ( OSFMountดีมาก) จากนั้นเปรียบเทียบ (เช่นกับWinMerge ) รูทไดรฟ์ CD / DVD ที่มีรูทวอลุ่มที่เมาท์
winmerge d:\ e:\
นี่คือขั้นตอนที่ถูกต้องเพื่อตรวจสอบ 256sum ของ iso ก่อนและหลังการเผาไหม้
กำหนด iso sha256sum ..
$ sha256sum ubuntu-5.10-dvd-i386.iso
e41c0631f6f2c138a417b59bcb880fce
จากนั้นกำหนดขนาดของ iso เป็นไบต์ ...
$ wc -c ubuntu-5.10-dvd-i386.iso
3048179712
จากนั้น dd ไดรฟ์ซีดี / ดีวีดีของคุณ | แล้วนับบิตแรกของแต่ละไฟล์เพื่อรวม | แล้วอ่าน sha256sum
$ dd if=/dev/sr0 | head -c 3048179712 | sha256sum
e41c0631f6f2c138a417b59bcb880fce
ทดแทน / dev / sr0 ด้วย / dev / cdrom หรือชื่อไดรฟ์อื่นขึ้นอยู่กับระบบ
เพื่อประสบการณ์ DD ที่ดีขึ้นและเพื่อดูความคืบหน้าของ dd แบบเรียลไทม์โดยไม่ต้องเขียนสคริปต์ให้ใช้ dcfldd forensic dd (dcfldd สามารถพอร์ตไปยังเอาต์พุตที่ต่างกัน 2 ตัว)
sudo apt-get install dcfldd
(ถูกขโมยลงคอจากบทความใน unbutu.com)
ฉันถือว่าจากโพสต์ของคุณว่าคุณอยู่บน Linux
ดูบทความนี้: ตรวจสอบภาพ CD / DVD เผาบนลินุกซ์
แนวคิดหลักนั้นง่าย ๆ :
cat iso-file.iso | md5sum
dd if=/dev/hdc | md5sum
cat
dd
ที่เรียบง่าย (และแยกไม่ออก speedwise) ,<iso-file.iso md5sum
</dev/hdc md5sum
แต่ไม่มีประสิทธิภาพสำหรับการเปรียบเทียบแบบนัดเดียว
บน Windows ให้ติดตั้งVCdControlTool.exeและWinMerge (อย่าลืมเพิ่มไปยังเส้นทางของระบบมีช่องทำเครื่องหมายเฉพาะในตัวติดตั้ง)
ใส่แผ่นดีวีดีมักจะติดตั้งบน d:
เมานต์. iso ด้วย VCdControlTool.exe เช่นบน z:
จาก cmd ให้เรียกใช้:
winmergeu.exe /r d:\ z:\
มันอาจจะใช้เวลาสักครู่.
Caveat : WinMerge หน่วยความจำไม่เพียงพอกับไฟล์ขนาดใหญ่
บน Windows การเปรียบเทียบ DVD หรือ CD ที่ถูกเบิร์นแล้วกับไฟล์ ISO นั้นง่ายมากด้วยความช่วยเหลือของผู้บริจาค " ImgBurn " ได้ช่วยฉันในอดีต!
ยังคงต้องค้นหาสิ่งที่คล้ายกันสำหรับ OS X / macOS เพราะดูเหมือนว่าวิธีการดังกล่าวข้างต้นสำหรับ Linux / Unix ไม่ทำงานที่นั่น