ฉันจะคัดลอกไฟล์บางส่วนจากดิสก์ที่เสียหายได้อย่างไร


10

ฉันมีดิสก์ที่เสียหายที่ฉันต้องการคัดลอกไฟล์ 60G

บางครั้งดิสก์จะถูกรีเซ็ตและฉันก็ทำสำเนาไม่ได้

ฉันต้องการลองและคัดลอกชิ้นบางส่วนแล้วนำมารวมกัน

ฉันจะทำสิ่งนี้ได้อย่างไร


(ที่โรงเรียนเก่า) ddวิธีที่ล้าสมัยจะใช้
G-Man พูดว่า 'Reinstate Monica'

1
ตัวเลือกอื่นคือใช้เช่น split -b[bytes] yourbigFile
Valentin Bajrami

3
หากคุณพยายามที่จะคัดลอกไฟล์จากดิสก์ที่ไม่ดี - ddrescueหรือไม่ - คุณอาจผิดพลาด เนื่องจากไฟล์นั้นขึ้นอยู่กับระบบไฟล์และเนื่องจากไฟล์นั้นมีแนวโน้มที่จะไม่ต่อเนื่องกันดังนั้นการอ่านเพื่อให้ได้มาจากอุปกรณ์ที่ผิดปกติเกือบจะต้องใช้การค้นหาดิสก์มากกว่าที่คุณจะหาได้ง่ายกว่า ฉันจะอิมเมจอุปกรณ์บล็อกลงบนอุปกรณ์ที่ดีที่รู้จักในใกล้กับผ่านเดียวที่ฉันจะได้รับและหลังจากนั้นมุ่งเน้นการกู้คืนความพยายามในไฟล์ภาพที่ติดตั้งให้มากที่สุด
mikeserv

คำตอบ:


14

ใช้ddrescueซึ่งออกแบบมาสำหรับสถานการณ์ประเภทนี้

มันใช้ไฟล์บันทึกเพื่อติดตามส่วนต่าง ๆ ของข้อมูลที่คัดลอกสำเร็จ - หรืออย่างอื่น เป็นผลให้คุณสามารถหยุดและเริ่มต้นใหม่ได้บ่อยเท่าที่จำเป็นโดยมีเงื่อนไขว่าไฟล์บันทึกจะได้รับการปรับปรุง

ดูDdrescue - เครื่องมือการกู้คืนข้อมูล


4

ddใช้

มันสามารถทำอะไรได้มากมาย แต่คุณต้องใช้แบบฟอร์มต่อไปนี้:

dd if=<source> of=<destination> bs=<block size> count=<blocks> skip=<offset>

เช่นหากต้องการคัดลอกไฟล์ที่ 2 ถึง 4 กิโลไบต์คุณต้องทำดังนี้

dd if=in.dat of=out.dat bs=1K count=2 skip=2

ด้วยข้อมูลเฉพาะของสิ่งที่คุณกำลังพยายามทำคุณสามารถลองเพิ่มconv=sync,noerror:

dd if=in.dat of=out.dat bs=1K count=2 skip=2 conv=sync,noerror

noerrorทำให้มันพยายามที่จะดำเนินการต่อเมื่อพบข้อผิดพลาดและsyncทำให้มันล้มเหลวแผ่นบล็อกที่มีเลขศูนย์ ดังนั้นคุณควรจะได้รับไฟล์ที่คุณต้องการ แต่ด้วยเลขศูนย์สำหรับบล็อกที่ไม่สามารถอ่านได้ อย่างไรก็ตามมันขึ้นอยู่กับฮาร์ดดิสก์ของคุณว่ามันจะทำอะไร ฮาร์ดดิสบางตัวเพิ่งจะปิดตัวลงเมื่อพวกเขาเห็นข้อผิดพลาดจากนั้นคุณจะยังไม่ได้รับข้อมูลของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.