ข้อมูลส่วนใหญ่มีการอธิบายในผู้รับที่แทรกไว้ก่อนหน้า แต่ไม่ได้อธิบายทั้งหมด
ภายใต้ linux คุณสามารถโคลนฮาร์ดไดรฟ์หรือพาร์ติชั่นโดยคำสั่ง dd ความสนใจเมื่อคุณทำผิดพลาดคุณจะสูญเสียข้อมูลทั้งหมดของคุณ
ในตอนแรกไม่ควรใช้งานปลายทางไม่ควรใช้แหล่งที่มาที่สองหรือติดตั้งใหม่ในโหมดอ่านอย่างเดียว มิฉะนั้นการคัดลอกจะได้รับความเสียหาย หากการติดตั้งใหม่เป็นไปไม่ได้โปรดสร้างไดรฟ์ที่สามารถบู๊ตได้ (hdd / ssd / pendrive) linux live distro ฉัน prever knoppix แต่นี่คือสิ่งที่คุณเลือก หากเป็นไปได้คุณสามารถบูตหรือเปลี่ยนระดับระบบเป็น 1 สำหรับโหมดผู้ใช้คนเดียวหรือคุณสามารถรีบูตระบบเข้าสู่โหมดผู้ใช้คนเดียวโดยตรงมันจะขึ้นอยู่กับ distro หากคุณจะโคลนพาร์ติชั่นเดียวพาร์ติชั่นนี้ควรจะไม่ได้ต่อเชื่อมหรือประกอบเข้าไปใน RO:
umount /mountpoint_or_device
หรือ
remount -o,ro /mountpoint_or_device
หากคุณต้องการโคลนฮาร์ดไดรฟ์ทั้งหมดคุณจะต้องขยายหรือพาร์ติชันทั้งหมดอีกครั้ง
คุณต้องระบุอุปกรณ์ต้นทางและปลายทาง โปรดดู dmesg ที่นี่จะถูกเก็บไว้ข้อมูลที่จำเป็นทั้งหมดเกี่ยวกับอุปกรณ์ที่มีผู้ขาย ฯลฯ การระบุหรืออาจจะขึ้นอยู่กับขนาดของอุปกรณ์ถ้ามันแตกต่างกัน ถัดไปปลายทางควรเหมือนหรือใหญ่กว่าต้นทาง คุณต้องคำนวณแหล่งที่มาเช่น: fdisk -l / dev / sda ยกเว้นเรขาคณิตพาร์ติชัน (อาจมี GPT) คุณจะดึงข้อมูล: 1. ขนาดดิสก์ทั้งหมด wigh GB และไบต์ 2. รูปทรงเรขาคณิตในอดีตและภาคส่วนรวมข้อมูลที่สำคัญมาก 3. ขนาดบล็อกเป็นไบต์โดยปกติคือ 512
ตัวอย่างเช่น:
# fdisk -l /dev/sda
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 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: 0x000f1d1e
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 40136703 20067328 83 Linux
/dev/sda2 40138750 41940991 901121 5 Extended
/dev/sda5 40138752 41940991 901120 82 Linux swap / Solaris
ต่อไปเรามาลองใหญ่กว่า 512 divider เรามีเซกเตอร์กายภาพ 41943040:
41943040/256 = 163840 ดีมากเราสามารถทำสำเนาจำนวนมากของ 256 ภาค เราสามารถเพิ่มเติมได้หรือไม่ ลองทำดู: 41943040/1024 = 40960 ฉันคิดว่ามันเพียงพอแล้วเราจะเลือกอันนี้ นับขนาดของกลุ่มเซ็กเตอร์: 512 (ขนาดเซกเตอร์) * 1024 = 524288 ไบต์ eq 512K จากนั้นเราสามารถใช้พารามิเตอร์ bs = 512K หรือน้อยกว่า แต่หารด้วย 2 ^ x สำหรับฮาร์ดไดรฟ์สมัยใหม่ที่มีแคชภายในขนาดใหญ่สิ่งนี้ถือว่าใช้ได้จริง สำหรับไดรฟ์รุ่นเก่าที่มีแคชน้อยกว่าค่า 32K หรือน้อยกว่านั้นเพียงพอ
หลังจากเตรียมแล้วเราสามารถทำสำเนาได้: dd if = / dev / source_devide ของ = / dev / destination_device bs = 32K และการคัดลอกจะเสร็จสิ้น ให้ความสนใจความผิดพลาดใด ๆ ที่จะเขียนทับข้อมูลการนำเข้าและของคุณ ที่ปลายทางทั้งหมดจะถูกเขียนทับ
หากคุณลองกู้ข้อมูลจากดิสก์ต้นทางที่เสียหายให้ใช้ขนาดเซกเตอร์เนทีฟดีกว่าปกติคือ 512 ไบต์และเพิ่มตัวเลือก conv = notrunc ไม่เช่นนั้นช่องโหว่ในแหล่งที่มาที่ลดลงจากภาคส่วนที่ไม่ดีจะถูกรวมเข้าด้วยกันโดยการเปลี่ยนเส้นทางไปยังจุดหมายปลายทาง สิ่งนี้จะสร้างความเสียหายกับสำเนาโดยมีโอกาสน้อยในการซ่อม จากนั้นคำสั่งจะเป็น:
dd if=/dev/source of=/dev/destination bs=512 conv=notrunc
และรอเป็นเวลานานเมื่อไดรฟ์และระบบจะยอมแพ้และจะเดินเซกเตอร์ตามเซกเตอร์ไปยังจุดสิ้นสุด
dd เป็นเครื่องมือที่มีประโยชน์สำหรับการย้ายพาร์ติชั่นไปยังที่ใหม่ เพียงสร้างพาร์ติชันสร้าง dd เป็นพาร์ติชันใหม่ (ซึ่งอาจใหญ่กว่านั้นใหญ่กว่า) และถ้าเป็นไปได้ให้ขยายระบบไฟล์ที่คัดลอกเพื่อเติมพาร์ติชันใหม่ทั้งหมด ext3 / ext4 / xfs / zfs / btrfs มีสิ่งอำนวยความสะดวกนี้ ในที่สุดคุณจะต้องเปลี่ยน / etc / fstab จากนั้น umount / mount หากเป็นไปได้หรือรีบูตระบบ
แน่นอนคุณสามารถโคลนพาร์ติชันประเภทใดก็ได้ คำสั่ง dd ไม่ได้ดูเป็นประเภทระบบไฟล์ แต่ไม่ได้ทำอะไรกับโครงสร้างของมัน ดังนั้นคำสั่งนี้สามารถใช้สำหรับการโคลน NTFS หรือประเภทพาร์ติชันอื่น ๆ
มีเคล็ดลับใด ๆ เมื่อคุณไม่ได้ตั้งค่าพารามิเตอร์ dd จะใส่ผลลัพธ์ลงใน stdout จากนั้นคุณสามารถทำสำเนาดิบของดิสก์หรือพาร์ติชันที่ถูกบีบอัดตัวอย่างเช่น:
dd if=/dev/sda bs=512 | gzip >/any/place/computerOne_sda.gz
ของหลักสูตรนี้ควรทำแบบออฟไลน์ คุณสามารถกู้คืนได้โดย:
zcat /any/place/computerOne_sda.gz| dd of=/dev/sda bs=512
จากนั้นฮาร์ดไดรฟ์ sda ทั้งหมดจะถูกเขียนทับโดยการสำรองข้อมูลนี้และข้อมูลปัจจุบันทั้งหมดจะสูญหาย คุณสามารถทำได้ด้วยพาร์ติชัน Windows NTFS และฮาร์ดไดรฟ์ที่ใช้โดยสิ่งนี้ แน่นอนคุณสามารถใช้คำสั่งการบีบอัดอื่น ๆ ขึ้นอยู่กับการเลือกของคุณ