ฉันจะกู้คืนไฟล์ที่ถูกลบใน Android ได้อย่างไร?


34

ฉันเพิ่งลบไฟล์ใน Nexus S ที่ฉันต้องการจริงๆ (จริง ๆ แล้วมันเป็นส่วนหนึ่งของแอปที่ใช้ฐานข้อมูล sqlite ที่ทำตารางดร็อปเมื่ออัปเกรดเป็นเวอร์ชันใหม่)

คงเป็นไปได้ไหมว่าฉันต้องรูทโทรศัพท์ก่อน (ซึ่งฉันได้ยินได้ง่ายในโทรศัพท์ Nexus) แต่ฉันติดใจ -22 ที่นี่หรือไม่? การรูตโทรศัพท์หมายถึงการเช็ด / เขียนทับพาร์ติชั่นที่ข้อมูลอยู่หรือไม่

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


ฉันไม่สามารถโพสต์คำตอบระบบขัดข้องฉัน แย่ไปกว่านั้น ... วิธีที่ง่ายที่สุดเมื่อคุณมีระบบ Linux และอุปกรณ์ของคุณที่มีการกู้คืน TWRP คือ 0. ก่อนอื่น! หยุดการสร้างไฟล์ใหม่ปิดแอพทั้งหมด ถ้าคุณจะต้องใช้งานบางอย่างให้ดีกว่าลบไฟล์แรกที่ไม่มีความจำเป็นเท่าที่จะเป็นไปได้เพื่อเพิ่มพื้นที่ว่างและมีโอกาสมากขึ้นที่จะทำให้ไฟล์ที่ถูกลบของคุณเสียหาย แน่นอนคุณจะต้องรู้ว่าพาร์ทิชันที่คุณต้องการฟรี มีโอกาสสูงที่ไฟล์นี้จะถูกเมาท์เป็น/data(ไฟล์ในเครื่องและไฟล์ที่ถูกลบของคุณอยู่ในนั้น/data/mediaหรืออะไรทำนองนั้น)
midenok

1. ในการกู้คืน TWRP คัดลอกพาร์ทิชันของคุณddไปยัง micro SD card โดยชิ้น 4Gb: `` `dd = = / dev / dm-0 ของ = / sdcard / x1 ... n bs = 1048576 นับ = 4095 ข้าม = ... `` `คุณมีตัวเลือกในการติดตั้งไดรฟ์ OTG ภายนอก (ค้นหาแหล่งพลังงานภายนอกบ้าง) แต่ของฉันไม่ทำงานดังนั้นฉันจึงต้องนำชิ้นส่วนไปยัง micro-SD ในskipพารามิเตอร์คุณจะใส่: 0, 4095, 8190, 16380 ฯลฯ
midenok

2. เคลื่อนย้ายชิ้นส่วนทั้งหมดไปยังระบบลินุกซ์, concatenate catกับ
midenok

3. ใช้testdiskในการกู้คืน นี่เป็นเครื่องมือเอนกประสงค์สำหรับการยกเลิกการลบส่วนขยาย มันช่วยให้สามารถยกเลิกการลบจากไดเรคทอรีที่เฉพาะเจาะจงและยกเลิกการลบแม้แต่ไฟล์ที่เสียหายและทำงานได้อย่างรวดเร็ว (นอกเหนือจากสแกนเนอร์ heuristic) ดังนั้นคุณจะมั่นใจได้ว่าทุกสิ่งที่เป็นไปได้นั้นจะไม่ถูกลบหรือถูกเขียนทับ
midenok

หรือ: ติดตั้งtestdiskเป็นส่วนหนึ่งของ busybox bundle และเก็บไว้ในโทรศัพท์ของคุณ
midenok

คำตอบ:


35

คู่มือวิธี

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

จากนั้นเป็นเพียง 3 ขั้นตอนในการตรวจสอบว่าสามารถกู้คืนไฟล์ได้หรือไม่:

  1. ค้นหาว่าอุปกรณ์ใดที่ไฟล์นั้นเปิดอยู่ ผ่านทางmount
  2. การรับและภาพของอุปกรณ์บล็อกนั้นด้วย dd: dd if=/dev/<blockdevice> of=/sdcard/image bs=4096
  3. รับเครื่องมือการกู้คืนข้อมูลนิติเวชและปล่อยให้มันค้นหา/sdcard/imageไฟล์ที่หายไป แน่นอนคุณสามารถลองใช้เครื่องมือหลาย ๆ ตัวในภาพได้ สำคัญที่สุดและมีดผ่าตัดเป็นจุดเริ่มต้นที่ดี

แอป "ยกเลิกการลบ"

มีแอพใหม่ที่เรียกว่า"Undelete Beta"ซึ่งสามารถกู้คืนไฟล์ในที่จัดเก็บข้อมูลภายในและการ์ด SD แอพนี้เป็นรุ่นเบต้าและมีข้อ จำกัด บางประการ

หากไฟล์มีความสำคัญจริง ๆ ฉันจะเลือก "วิธีการด้วยตนเอง"เสมอ


ไหลขอบคุณมาก คำตอบที่ดี! ตอนนี้ฉันรู้สึกสิ้นหวังน้อยลง :) ฉันถูกข่มขู่เล็กน้อยโดยการรูท คุณรู้อะไรเกี่ยวกับการรูทเครื่อง Nexus S หรือไม่? ฉันจะสูญเสียข้อมูลหรือแอปพลิเคชันหรือสิ่งใด ๆ ฉันจะต้องถอนการรูทเพื่อรับการอัปเดตระบบปฏิบัติการอัตโนมัติในอนาคตหรือไม่ การคลายรูทง่ายเกินไปหรือไม่
dreeves

สำหรับการรูทดูคำถามนี้ ฉันไม่มี Nexus S แต่ฉันจะบอกว่า: ไม่ไม่และบางครั้ง
Flow

1
@ กระแส: ก) ฉันจะไม่สัมผัสกับพาร์ติชันที่ได้รับผลกระทบใด ๆ อีกต่อไป แต่ปลดล็อก Nexus และ 'fastboot boot cwm.img' สำหรับการกู้คืน tmp b) ควรใช้ adb แบบทันทีเพื่อส่งข้อมูลพาร์ติชันออกจากโทรศัพท์ (ไม่มีการจัดเก็บเป็นระยะ / sdcard) โดยใช้stdout + gzip + uuencode c) การแกะสลัก: sqlite3 ไม่มีส่วนท้าย แต่ส่วนหัว "รูปแบบ SQLite 3" ใช้ดีที่สุดในการกำหนดขนาดสูงสุดและอาจ 'NEXT' (ระบุ EOF หากพบส่วนหัวใหม่อื่น ๆ ) ตกลงถ้าฉันแก้ไข
ce4

1
+1 สำหรับ 'มีดผ่าตัด'! ยังไม่เคยรู้จักมาก่อน BTW: photorec ของ Testdisk ก็ค่อนข้างมีประโยชน์เช่นกัน (สำหรับประเภทไฟล์มาตรฐานเช่น. jpg และ ans)
ce4

เกิดอะไรขึ้นถ้าอุปกรณ์สำรองข้อมูลมีขนาดใหญ่กว่า 4gb
David V.

10

ในฐานะของ Android 4.3+ และการใช้งาน TRIM ตอนนี้มันเป็นเรื่องยากอย่างเหลือเชื่อที่จะกู้คืนไฟล์ที่ถูกลบในหน่วยความจำภายใน

วิธีแก้ปัญหาที่แนะนำบางอย่างอาจไม่คุ้มค่าหากคุณไม่สามารถสแกนหน่วยความจำเพื่อหาไฟล์ที่ถูกลบได้อย่างรวดเร็วหลังจากการลบ

ยิ่งไปกว่านั้นในกรณีของการกู้คืนหลังจากรีเซ็ตเป็นโรงงานตั้งแต่ Android 4.0+ การรีเซ็ตเป็นค่าจากโรงงานจะสิ้นสุดลงด้วยการลบอย่างปลอดภัย

อ้างอิง:


ฉันคิดว่านี่เป็นคำตอบที่ถูกต้องในปี 2019?
ripper234

7

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

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