Score:0

วิธีการกู้คืน HDD ที่เสียหายด้วยการเข้ารหัส LUKS

ธง in

มี HDD 1TB ซึ่งเสียหายอย่างใด มีเพียงพาร์ติชันเดียวและเข้ารหัส LUKS เท่าที่ฉันรู้ รหัสผ่านเป็นที่รู้จัก HDD ที่เคยถามรหัสผ่านทันทีหลังจากติดตั้ง แต่ตอนนี้ไม่ติดตั้งโดยอัตโนมัติเหมือนเมื่อก่อน และไม่มีการถามรหัสผ่านอีกต่อไป นอกจากนี้ อุปกรณ์จะไม่ปรากฏในรายการอุปกรณ์ที่มีอยู่ใน GUI ของ Linux Mintอย่างไรก็ตาม มันถูกค้นพบโดย lsblkแม้ว่าขนาดของพาร์ติชันจะถูกรายงานเป็น ca เท่านั้น 140GB.

สิ่งที่ฉันทำจนถึงตอนนี้คือการสร้างภาพด้วย ดิสก์ทดสอบ. ภาพประมาณ ขนาด 140GB จึงเห็นได้ชัดว่าไม่ได้สำรองข้อมูลทั้งไดรฟ์ ซึ่งใช้ไปมากกว่า 90%

ฉันไม่ได้สร้างการถ่ายโอนข้อมูลส่วนหัวของ LUKS เมื่อดิสก์ทำงานได้อย่างสมบูรณ์

ฉันทำการวิเคราะห์และค้นหาพาร์ติชั่นอย่างละเอียด นี่คือผลลัพธ์ของ ดิสก์ทดสอบ ทำงาน (โปรดทราบว่าระหว่างการรันครั้งแรก ไดร์ฟถูกกำหนด /dev/sdcและในวันถัดไป/เรียกใช้ มันถูกแมปเป็น /dev/sdb):

พฤ. ที่ 5 พฤษภาคม 10:37:39 น. 2565
บรรทัดคำสั่ง: TestDisk

TestDisk 7.1 ยูทิลิตี้การกู้คืนข้อมูล กรกฎาคม 2019
คริสตอฟ เกรเนียร์ <[email protected]>
https://www.cgsecurity.org
ระบบปฏิบัติการ: Linux, เคอร์เนล 5.4.0-109-generic (#123-Ubuntu SMP วันศุกร์ที่ 8 เมษายน 09:10:54 UTC 2022) x86_64
คอมไพเลอร์: GCC 9.2
ext2fs lib: 1.45.5, ntfs lib: libntfs-3g, reiserfs lib: ไม่มี, ewf lib: ไม่มี, สาปแช่ง lib: ncurses 6.1
/dev/sda: รองรับ LBA, HPA, LBA48, DCO
/dev/sda: ขนาด 976773168 ภาค
/dev/sda: user_max 976773168 ภาค
/dev/sda: native_max 976773168 ภาค
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/mapper/control - 0 B - 0 เซกเตอร์ size=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop0 - 0 B - 0 เซกเตอร์ size=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop1 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop2 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop3 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop4 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop5 - 0 B - 0 เซกเตอร์ size=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop6 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop7 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
รายการฮาร์ดดิสก์
[...]
ดิสก์ /dev/sdc - 1,000 GB / 931 GiB - CHS 121601 255 63, ขนาดเซกเตอร์=512 - USB3.0 ความเร็วสูง, FW:2210

ประเภทตารางพาร์ติชัน (อัตโนมัติ): Intel
ดิสก์ /dev/sdc - 1,000 GB / 931 GiB - USB3.0 ความเร็วสูง
ประเภทตารางพาร์ติชัน: Intel

อินเทอร์เฟซขั้นสูง
รูปทรงเรขาคณิตจาก i386 MBR: head=255 sector=63
check_part_i386 1 ประเภท E8: ไม่มีการทดสอบ
 1 P ระบบ=E8 0 4 5 15188 254 42 244011008
file_pread(6,256,buffer,9335296(581/24/20)) อ่านผิด: อ่านบางส่วน
file_pread(6,1,buffer,9335312(581/24/36)) อ่านข้อผิดพลาด: <ข้อผิดพลาด I/O>
file_pread(6,16,buffer,9345807(581/191/10)) อ่านข้อผิดพลาด: <ข้อผิดพลาด I/O>
file_pread(6,1,buffer,9345807(581/191/10)) อ่านข้อผิดพลาด: <ข้อผิดพลาด I/O>
สร้างอิมเมจสำเร็จแต่เกิดข้อผิดพลาดในการอ่าน

วิเคราะห์ดิสก์ /dev/sdc - 1,000 GB / 931 GiB - CHS 121601 255 63
รูปทรงเรขาคณิตจาก i386 MBR: head=255 sector=63
check_part_i386 1 ประเภท E8: ไม่มีการทดสอบ
โครงสร้างพาร์ติชันปัจจุบัน:
 1 P ระบบ=E8 0 4 5 15188 254 42 244011008
ไม่มีพาร์ติชันใดที่สามารถบู๊ตได้

search_part()
ดิสก์ /dev/sdc - 1,000 GB / 931 GiB - CHS 121601 255 63

     ลินุกซ์ 0 32 33 0 97 33 4096
     LUKS 1 (ไม่ทราบขนาดข้อมูล), 2097 KB / 2048 KiB

ผล
   * ลินุกซ์ 0 32 33 0 97 33 4096
     LUKS 1 (ไม่ทราบขนาดข้อมูล), 2097 KB / 2048 KiB

คำแนะนำสำหรับผู้ใช้ขั้นสูง: อาจใช้ dmsetup หากคุณต้องการหลีกเลี่ยงการเขียนตารางพาร์ติชันใหม่ในขณะนี้:
echo "0 4096 เชิงเส้น /dev/sdc 2048" | dmsetup สร้าง test0

interface_write()
 1 * ลินุกซ์ 0 32 33 0 97 33 4096
จำลองการเขียน!

write_mbr_i386: กำลังเริ่ม...
write_all_log_i386: กำลังเริ่ม...
ไม่มีพาร์ติชันเสริม

TestDisk ออกตามปกติ

/////// มีเพียงหนึ่ง HDD เท่านั้นที่ถูกแนบในวันนั้น และดิสก์ที่มีปัญหาถูกแมปเป็น /dev/sdb ทันที:

ศุกร์ที่ 6 พฤษภาคม 08:45:06 น. 2565
บรรทัดคำสั่ง: TestDisk

TestDisk 7.1 ยูทิลิตี้การกู้คืนข้อมูล กรกฎาคม 2019
คริสตอฟ เกรเนียร์ <[email protected]>
https://www.cgsecurity.org
ระบบปฏิบัติการ: Linux, เคอร์เนล 5.4.0-109-generic (#123-Ubuntu SMP วันศุกร์ที่ 8 เมษายน 09:10:54 UTC 2022) x86_64
คอมไพเลอร์: GCC 9.2
ext2fs lib: 1.45.5, ntfs lib: libntfs-3g, reiserfs lib: ไม่มี, ewf lib: ไม่มี, สาปแช่ง lib: ncurses 6.1
/dev/sda: รองรับ LBA, HPA, LBA48, DCO
/dev/sda: ขนาด 976773168 ภาค
/dev/sda: user_max 976773168 ภาค
/dev/sda: native_max 976773168 ภาค
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/mapper/control - 0 B - 0 เซกเตอร์ size=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop0 - 0 B - 0 เซกเตอร์ size=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop1 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop2 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop3 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop4 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop5 - 0 B - 0 เซกเตอร์ size=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop6 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
คำเตือน: ไม่สามารถรับขนาดสำหรับดิสก์ /dev/loop7 - 0 B - 0 เซกเตอร์ ขนาดเซกเตอร์=512
รายการฮาร์ดดิสก์
[...]
ดิสก์ /dev/sdb - 1,000 GB / 931 GiB - CHS 121601 255 63, ขนาดเซกเตอร์=512 - USB3.0 ความเร็วสูง, FW:2210

ประเภทตารางพาร์ติชัน (อัตโนมัติ): Intel
ดิสก์ /dev/sdb - 1,000 GB / 931 GiB - USB3.0 ความเร็วสูง
ประเภทตารางพาร์ติชัน: Intel

วิเคราะห์ดิสก์ /dev/sdb - 1,000 GB / 931 GiB - CHS 121601 255 63
รูปทรงเรขาคณิตจาก i386 MBR: head=255 sector=63
check_part_i386 1 ประเภท E8: ไม่มีการทดสอบ
โครงสร้างพาร์ติชันปัจจุบัน:
 1 P ระบบ=E8 0 4 5 15188 254 42 244011008
ไม่มีพาร์ติชันใดที่สามารถบู๊ตได้

search_part()
ดิสก์ /dev/sdb - 1,000 GB / 931 GiB - CHS 121601 255 63

     ลินุกซ์ 0 32 33 0 97 33 4096
     LUKS 1 (ไม่ทราบขนาดข้อมูล), 2097 KB / 2048 KiB
ค้นหาพาร์ติชันที่ถูกยกเลิก

ผล
   * ลินุกซ์ 0 32 33 0 97 33 4096
     LUKS 1 (ไม่ทราบขนาดข้อมูล), 2097 KB / 2048 KiB

คำแนะนำสำหรับผู้ใช้ขั้นสูง: อาจใช้ dmsetup หากคุณต้องการหลีกเลี่ยงการเขียนตารางพาร์ติชันใหม่ในขณะนี้:
echo "0 4096 เชิงเส้น /dev/sdb 2048" | dmsetup สร้าง test0

interface_write()
 1 * ลินุกซ์ 0 32 33 0 97 33 4096

search_part()
ดิสก์ /dev/sdb - 1,000 GB / 931 GiB - CHS 121601 255 63

     ลินุกซ์ 0 32 33 0 97 33 4096
     LUKS 1 (ไม่ทราบขนาดข้อมูล), 2097 KB / 2048 KiB

ผล
   * ลินุกซ์ 0 32 33 0 97 33 4096
     LUKS 1 (ไม่ทราบขนาดข้อมูล), 2097 KB / 2048 KiB

คำแนะนำสำหรับผู้ใช้ขั้นสูง: อาจใช้ dmsetup หากคุณต้องการหลีกเลี่ยงการเขียนตารางพาร์ติชันใหม่ในขณะนี้:
echo "0 4096 เชิงเส้น /dev/sdb 2048" | dmsetup สร้าง test0

interface_write()
 1 * ลินุกซ์ 0 32 33 0 97 33 4096
จำลองการเขียน!

write_mbr_i386: กำลังเริ่ม...
write_all_log_i386: กำลังเริ่ม...
ไม่มีพาร์ติชันเสริม

อินเทอร์เฟซขั้นสูง
รูปทรงเรขาคณิตจาก i386 MBR: head=255 sector=63
check_part_i386 1 ประเภท E8: ไม่มีการทดสอบ
 1 P ระบบ=E8 0 4 5 15188 254 42 244011008
ตัวเลือกใหม่:
 การถ่ายโอนข้อมูล: ไม่
 จัดพาร์ติชัน: ใช่
 โหมดผู้เชี่ยวชาญ : ไม่

TestDisk ออกตามปกติ

คุณคิดอย่างไร: การพยายามกู้คืนไดรฟ์นั้นคุ้มค่าหรือไม่ ถ้าได้ ควรใช้ขั้นตอน/เครื่องมืออะไร?

user10489 avatar
nc flag
หากขนาดไดรฟ์ไม่แสดงอย่างถูกต้อง แสดงว่าตัวควบคุมไดรฟ์เสียหรือ (เป็นไปได้มากกว่า) การตั้งค่าไบออสไม่ถูกต้อง และกำลังพยายามเข้าถึงไดรฟ์ในโหมดที่ไม่ถูกต้อง

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา