คำตอบของ Nerdwallerเกี่ยวกับการใช้tee
เพื่อถ่ายโอนและคำนวณผลรวมตรวจสอบเป็นวิธีการที่ดีถ้าคุณเป็นห่วงเรื่องการทุจริตบนเครือข่ายเป็นหลัก มันจะไม่ปกป้องคุณจากความเสียหายระหว่างทางไปยังดิสก์ ฯลฯ เนื่องจากเป็นการตรวจสอบก่อนที่จะถึงดิสก์
แต่ฉันต้องการเพิ่มบางสิ่ง:
1 TiB / 40 นาที≈ 437 เอ็มไอ / วินาที1
มันค่อนข้างเร็วจริง ๆ จำไว้ว่าถ้าคุณไม่มีแรมจำนวนมากนั่นก็คือต้องกลับมาจากที่เก็บข้อมูล ดังนั้นสิ่งแรกที่ต้องตรวจสอบคือดูiostat -kx 10
เมื่อคุณเรียกใช้เช็คซัม โดยเฉพาะอย่างยิ่งคุณต้องการให้ความสนใจกับ%util
คอลัมน์ หากคุณกำลังตรึงดิสก์ (ใกล้ 100%) คำตอบคือซื้อพื้นที่เก็บข้อมูลที่เร็วขึ้น
ไม่เช่นนั้นจะมีโปสเตอร์อื่น ๆ ที่กล่าวถึงคุณสามารถลองอัลกอริทึมการตรวจสอบที่แตกต่างกันได้ MD4, MD5 และ SHA-1 ได้รับการออกแบบให้เป็นแฮ็คเข้ารหัสข้อมูล (แม้ว่าจะไม่ควรใช้สิ่งเหล่านี้เพื่อจุดประสงค์นั้นอีกต่อไป แต่ก็ถือว่าอ่อนแอเกินไป) openssl speed md4 md5 sha1 sha256
ความเร็วที่ชาญฉลาดคุณสามารถเปรียบเทียบกับ ฉันถูกโยนลงไปใน SHA256 เพื่อที่จะมีกัญชาอย่างน้อยหนึ่งตัวที่แข็งแรงพอ
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
md4 61716.74k 195224.79k 455472.73k 695089.49k 820035.58k
md5 46317.99k 140508.39k 320853.42k 473215.66k 539563.35k
sha1 43397.21k 126598.91k 283775.15k 392279.04k 473153.54k
sha256 33677.99k 75638.81k 128904.87k 155874.91k 167774.89k
จากข้างต้นคุณจะเห็นว่า MD4 นั้นเร็วที่สุดและ SHA256 นั้นช้าที่สุด ผลลัพธ์นี้เป็นเรื่องปกติสำหรับฮาร์ดแวร์ที่ใช้พีซีอย่างน้อยที่สุด
หากคุณต้องการประสิทธิภาพการทำงานมากยิ่งขึ้น (ที่ค่าใช้จ่ายของการเป็นที่น่ารำคาญไปยุ่งด้วยและยังมีโอกาสน้อยที่จะตรวจสอบการทุจริต), คุณต้องการที่จะดูที่ซีอาร์ซีหรือแอดเลอร์แฮช ในบรรดาสอง Adler นั้นเร็วกว่า แต่ก็อ่อนแอกว่า น่าเสียดายที่ฉันไม่ได้ตระหนักถึงการใช้งานบรรทัดคำสั่งที่รวดเร็วจริงๆ โปรแกรมในระบบของฉันช้ากว่า OpenSSL ของ md4
ดังนั้นความเร็วในการเดิมพันที่ดีที่สุดของคุณคือopenssl md4 -r
( -r
ทำให้ดูเหมือนเอาต์พุต md5sum)
หากคุณยินดีที่จะทำบางรวบรวมและ / หรือการเขียนโปรแกรมน้อยที่สุดดูรหัสมาร์คแอดเลอร์ไปบนกองมากเกินและยังxxhash หากคุณมี SSE 4.2 คุณจะไม่สามารถเอาชนะความเร็วของคำสั่ง CRC ของฮาร์ดแวร์ได้
1 1 TiB = 1024⁴ไบต์; 1 MiB = 1024²ไบต์ มาถึง≈417MB / วินาทีพร้อมกับ powers-of-1000 units