จะลบไฟล์อย่างปลอดภัยได้อย่างไร?


205

มีวิธีทำให้แน่ใจว่าไฟล์ที่ถูกลบไม่สามารถกู้คืนได้หรือไม่?

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

ในชีวิตประจำวันการบังคับใช้กฎหมายหรือขโมยใช้โปรแกรมกู้คืนเพื่อเปิดเผยข้อมูลส่วนตัวของเราหรืออย่างอื่น

พวกเขาสามารถกู้คืนข้อมูลทั้งหมดที่อยู่ในฮาร์ดดิสก์ใน RAM และแม้กระทั่ง USB

เพื่อปกป้องเราจากคนเหล่านี้เราควรทำอย่างไร โปรแกรมใดที่ควรใช้

หมายเหตุ: ฉันไม่ต้องการคำตอบเหมือนใช้โปรแกรมกู้คืนก่อนแล้วจึงลบไฟล์นั้นด้วย shred มีเพียงโปรแกรมเดียวฉันต้องการลบไฟล์ที่ไม่ได้ใช้ / ลบทั้งหมดในคอมพิวเตอร์ของฉัน


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

คำตอบ:


191

ฉีก

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

ทำลายเอกสารอย่างรวดเร็ว

shred -vzn 0 /dev/sdc1

ลบพาร์ติชันทั้งหมดโดยเขียนทับทุกสิ่งด้วย0s ในการวนซ้ำครั้งเดียว หากไม่มีการด้านกฎหมายจำเป็นต้องมีขั้นตอนอื่นทำเช่นนั้นเป็นส่วนใหญ่ปลอดภัยอาจจะปลอดภัยลบข้อมูลส่วนตัวของคุณเครกไรท์บรรยายในวิทยาศาสตร์คอมพิวเตอร์, 2008 5352 , 243-257

ทำลายเอกสารอย่างปลอดภัย

shred -vzn 3 /dev/sdc1

ลบทั้งพาร์ติชันโดยใช้การวนซ้ำ 3 ครั้งพร้อมตัวเลขสุ่ม นอกจากนี้ (ตัวเลือก-z) นี่จะเขียนเลขศูนย์เพื่อซ่อนกระบวนการทำลายเอกสารในตอนท้าย วิธีนี้จะใช้เวลานานกว่าวิธีเร็ว 4 เท่า

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


เช็ด ติดตั้งการเช็ด

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

wipe filename
wipe -r dirname

หมายเหตุเพิ่มเติมเกี่ยวกับการทำเจอร์นัลระบบไฟล์และ SSD:

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

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

ตัวเลือกเหล่านี้สามารถเพิ่มในเมนูบริบทของ Nautilus และ Thunar

  • ใน Thunar เปิด "แก้ไข" แล้ว "กำหนดค่าการกระทำที่กำหนดเอง"

เพิ่ม (เครื่องหมายบวก)

ชื่อ "ไฟล์ฉีก"

อธิบายสิ่งที่คุณชอบ

การกระทำ "ฉีก -u% f"

wipeในทำนองเดียวกันสำหรับ

เลือก "เงื่อนไขลักษณะที่ปรากฏ" และเลือก "ไฟล์อื่น ๆ "


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

3
@shred "ประมาณ 20 นาทีเพื่อลบ 1.44MB" เกี่ยวกับทั้งชีวิตเพื่อลบ 640 gb :) สำหรับการลบ "" เราไม่สามารถรับประกันได้ว่าการลบจะลบข้อมูลจริงหรือข้อมูลที่เช็ดไม่สามารถกู้คืนได้ด้วยวิธีการขั้นสูง " กล่าวอีกนัยหนึ่งการเช็ดไม่มีหน่วยความจำจริง / เต็มกำลัง

2
โปรดทราบว่าในขณะที่คุณสามารถใช้ shred ในแต่ละไฟล์ได้เช่นกันหากคุณใช้ระบบไฟล์ journaling ที่ทันสมัยไม่มีการรับประกันว่า shred จะส่งผลให้เกิดการลบที่ไม่สามารถกู้คืนได้ คุณต้องทำให้พาร์ทิชันทั้งหมดหายไป ฉันคิดว่ามาตรฐานของรัฐบาลสหรัฐคือ 7 รอบที่มีข้อมูลสุ่ม
Scott Severance

4
ความคิดเห็นหนึ่งเกี่ยวกับ SSD: การเขียนทับไดรฟ์ทั้งหมดจะไม่ช่วยได้จริงๆ กล่าวโดยย่อ: คุณไม่สามารถลบข้อมูลออกจากหน่วยความจำแฟลชได้อย่างน่าเชื่อถือ เก็บไฟล์ลับที่เข้ารหัสไว้เสมอ (cf. Wei et al., การลบข้อมูลจากโซลิดสเตตไดรฟ์ที่เชื่อถือได้โดยใช้แฟลช: usenix.org/events/fast11/tech/full_papers/Wei.pdf )
freddyb

2
@ เฟรดดี้: ฉันทราบถึงความจริงที่ว่าในปัจจุบันยังไม่ชัดเจนว่าจะลบข้อมูลอย่างปลอดภัยจาก SSD อย่างไร การเข้ารหัสลับนั้นดีกว่าเสมอ - ซึ่งรวมถึงไดรฟ์ทั่วไปด้วย! อย่างไรก็ตามคำถามเกี่ยวกับวิธีการลบข้อมูลอย่างปลอดภัย(หมายความว่าพวกเขาอาจไม่ได้เข้ารหัสมาก่อน)
Takkat

39

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

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

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


การเข้ารหัสดิสก์แบบเต็ม

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

คุณสามารถเข้ารหัสสื่อภายนอกเช่นไดรฟ์ USB โดยใช้ Disk Utility ของ Ubuntu การตั้งค่าดิสก์ภายนอกที่เข้ารหัสนั้นทำได้ง่ายเพียงตรวจสอบกล่อง "เข้ารหัสระบบไฟล์พื้นฐาน" เมื่อทำการฟอร์แมตดิสก์ คุณสามารถจัดเก็บวลีรหัสผ่านไว้ในพวงกุญแจ (เข้ารหัส) เพื่อให้คุณไม่จำเป็นต้องป้อนวลีทุกครั้งที่คุณเสียบดิสก์นั้นลงในคอมพิวเตอร์ของคุณ

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

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


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

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

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


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

1
สไลด์ (pdf) ที่คุณเชื่อมโยงเพื่อนำไปสู่ข้อสรุปว่าวิธีเดียวที่จะทำลาย SSD ได้อย่างน่าเชื่อถือคือการฉีกมันออกไปอย่างแท้จริง
ติตัส

19

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

หากฉันอ่านถูกต้องคุณต้องการลบไฟล์ที่ถูกลบไปก่อนหน้านี้ทั้งหมด นี่เป็นวิธีง่ายๆในการทำเช่นนั้น:

$ dd if=/dev/zero of=/path/to/mounted/partition/tmp_file bs=1M count=999999999999

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

อย่างไรก็ตามสิ่งนี้จะใช้เวลานานกว่านี้มากดังนั้นฉันจะใช้งานข้ามคืน นอกจากนี้หากคุณต้องการตัววัดความก้าวหน้าให้ทำสิ่งนี้แทน:

$ free=$( df {PARTITION OR MOUNTPOINT}  |awk '{print $3}'|tail -1 )
$ dd if=/dev/zero bs=1M count=999999999999 | pv -s "$free" > /path/to/mounted/partition/tmp_file

ก่อนอื่นคุณจะได้พื้นที่ว่างในดิสก์ของคุณด้วย du, awk และ tail จากนั้นใช้ dd เพื่อรับ / dev / ศูนย์, ไพพ์pvซึ่งย่อมาจาก "pipe viewer" ซึ่งเปลี่ยนเส้นทางทุกอย่างไปที่tmp_file อีกครั้งให้ลบไฟล์หลังจากนั้น $ rm tmp_file

อย่างไรก็ตามหวังว่าบางคนจะพบว่ามีประโยชน์นี้! :)


1
มียูทิลิตีบรรทัดคำสั่งที่ใช้สำหรับคุณหรือไม่? กล่าวว่าoverwrite_empty_space /dev/sdb1?
landroni

@landroni ฉันไม่ได้ตระหนักถึงประโยชน์ดังกล่าว อย่างไรก็ตามคุณสามารถใส่มันลงในสคริปต์ BASH ได้อย่างง่ายดาย [ถ้าคุณทำได้ฉันขอแนะนำให้แทนที่จะใช้ "/ dev / sdb1" คุณแค่ให้มันเป็นเส้นทางไปยังไฟล์ขนาดใหญ่ ไม่ว่าจะติดตั้งที่ไหนมันจะทำความสะอาดแผ่นดิสก์] ใช้ความพยายามเล็กน้อยดังนั้นฉันจะไม่พยายามลงรายละเอียดที่นี่ ฉันแน่ใจว่าคุณสามารถค้นหาข้อมูลด้วยการค้นหา
Matt

ทำไมไม่ฉีก tmp_file หลังจากดิสก์เต็มถ้าคุณต้องการให้แน่ใจว่าไฟล์นั้นไม่สามารถกู้คืนได้?
SPRBRN

13

ก่อนอื่นให้ลบไฟล์ที่มี rm บนเทอร์มินัลหรือ shift-delete บน nautilus ดีกว่าใช้srmจากแพ็คเกจเครื่องมือลบอย่างปลอดภัย

คุณสามารถติดตั้งเครื่องมือลบที่ปลอดภัยเช่นนี้:

apt-get install secure-delete

ประการที่สองใช้ sfill เพื่อล้างพื้นที่ว่างที่ไม่ได้ใช้บนดิสก์ของคุณ:

sudo sfill -f <directory>

การทำเช่นนี้จะใช้เวลาสักครู่เนื่องจากใช้เทคนิค crypto เพื่อกรอกดิสก์

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

สิ่งนี้จะสร้างไฟล์ที่จะลบข้อมูลที่มีอยู่ก่อนหน้านี้ทั้งหมด <directory>ไฟล์จะถูกสร้างขึ้นใน


4
โปรแกรมนี้ใช้เวลามากเกินไป สำหรับ 80 gb ฉันรอประมาณ 18 ชั่วโมง นอกจากนี้ยังไม่มีเครื่องมือแสดงความคืบหน้า

ฉันลืมที่จะเพิ่ม; 18 ชั่วโมงสำหรับการเติมดิสก์ด้วยไฟล์

2
แต่มันปลอดภัยและคุณสามารถลบไฟล์หรือไดเรกทอรี
RusAlex

6
ฉันถามว่ามันปลอดภัยหรือไม่ บนระบบไฟล์ที่ทันสมัย ​​(ext2 / 3/4, ntfs ฯลฯ ) มีเจอร์นัลที่ช่วยป้องกันการสูญหายของข้อมูลโดยไม่ตั้งใจ ดังนั้นแม้ว่าคุณจะล้างพื้นที่ว่างคุณไม่สามารถรับประกันได้ว่าไฟล์จะถูกลบออกจากวารสาร นอกจากนี้ฉันเข้าใจว่าระบบไฟล์บางตัวทำงานในระดับที่สูงพอที่จะรับประกันได้ว่าคุณกำลังเขียนทับเซกเตอร์ดิสก์จริงที่เขียนไป AFAIK วิธีเดียวที่จะลบบางสิ่งได้อย่างปลอดภัยคือการล้างทั้งพาร์ติชันและไฟล์ทั้งหมดในนั้น
Scott Severance

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

10

โปรแกรม GUIสำหรับเรื่องนี้คือBleachBit (มันยังอยู่ในแหล่งที่มา) อื่น ๆ ที่ผ่านมา (ไฟล์ deb) รุ่นที่หน้า BleachBit Sourceforge

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

"BleachBit เพิ่มพื้นที่ว่างในดิสก์ได้อย่างรวดเร็วและปกป้องความเป็นส่วนตัวของคุณอย่างไม่ จำกัด แคชฟรีลบคุกกี้ล้างประวัติอินเทอร์เน็ตลบไฟล์ชั่วคราวฉีกไฟล์บันทึกและทิ้งขยะที่คุณไม่ทราบว่าอยู่ที่นั่นออกแบบมาสำหรับระบบ Linux และ Windows แอปพลิเคชั่น 90 รายการรวมถึง Firefox (การดูดเพื่อทำให้เร็วขึ้น), Internet Explorer, Adobe Flash, Google Chrome, Opera, Safari และอีกมากมาย " (จากhttp://bleachbit.sourceforge.net/ )

BleachBit มีน้ำยาทำความสะอาดขั้นสูงหลายอย่าง:

  • ล้างหน่วยความจำและสลับบน Linux
  • ลบทางลัดที่เสียหายบน Linux
  • ลบประวัติ Firefox URL โดยไม่ต้องลบไฟล์ทั้งหมดด้วยตัวเลือกย่อย
  • ค้นหาขยะที่มีการกระจายอย่างกว้างขวางเช่น Thumbs.db และไฟล์. DS_Store
  • ลบรายการเอกสารล่าสุดของ OpenOffice.org โดยไม่ต้องลบไฟล์ Common.xcu ทั้งหมด
  • เขียนทับพื้นที่ว่างในดิสก์เพื่อซ่อนไฟล์ก่อนหน้า
  • ฐานข้อมูลสูญญากาศ Firefox, Google Chrome, Liferea, Thunderbird และ Yum: ลดขนาดไฟล์โดยไม่ต้องลบข้อมูลเพื่อประหยัดพื้นที่และปรับปรุงความเร็ว
  • ลบข้อมูลส่วนตัวออกจากไฟล์การกำหนดค่า. ini และ JSON ด้วยการลบไฟล์ทั้งหมด

สำหรับรายละเอียดเกี่ยวกับวิธีใช้ Bleachbit เพื่อลบไฟล์และโฟลเดอร์เฉพาะอย่างปลอดภัยดูคำตอบนี้


7

หากคุณต้องการวิธีการแก้ปัญหาที่ไม่สามารถขัดขวางได้โดยบุคคลที่หมกมุ่นทางพยาธิวิทยาคุณควรพิจารณาการรวมกันบางอย่าง (ถูก จำกัด โดยทรัพยากรทางการเงิน) ของ:

  • ล้างสนามแม่เหล็ก - ลบฮาร์ดไดรฟ์แบบแม่เหล็ก
  • การปิดการใช้งานฮาร์ดไดรฟ์ - เช่นการเจาะรูทางอุตสาหกรรม
  • acid bath <- คุณไม่สามารถรับบิตจากกองสารที่หนา

โซลูชันเหล่านี้มีราคาและความฉลาดอย่างมาก จำนวนน้อย:


3
คำตอบที่สนุก แต่ฉันคิดว่าผู้ถามต้องการใช้ฮาร์ดไดรฟ์ของเขาต่อไปหลังจากการลบของเขา
Christopher Kyle Horton

3
จะมีวิธีที่ไหน: ทำไมไม่ระเบิดปรมาณู?

2
OP ต้องการทำลายข้อมูลไม่ใช่ประเทศของเขา / เธอ! : P
John Rix

2
ฉันพบว่าค้อนขนาด 15 ปอนด์มีประสิทธิภาพมาก ... และรักษาโรคได้
user535733

Thermiteเป็นอีกทางเลือกหนึ่งสำหรับการลืมเลือนอย่างละเอียด (บทความเป็นภาษาเยอรมัน แต่รวมถึงรูปภาพที่สวยงามของกระบวนการ)
David Foerster

3

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

จากนั้นในอนาคตฉันขอแนะนำให้เริ่มใช้เครื่องมือลบความปลอดภัยแทน 'rm' แบบง่าย

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


3

สำหรับ SSD และสื่อบันทึกข้อมูลแฟลชอื่น ๆ

SSD และสื่อบันทึกข้อมูลแฟลชอื่น ๆ อีกมากมายใช้เทคนิคที่เรียกว่า "wear leveling" ซึ่งกำหนดบล็อกหน่วยเก็บข้อมูลที่ไม่ได้ใช้ใหม่ตามจำนวนรอบการเขียนก่อนหน้านี้เพื่อยืดอายุการใช้งานของไดรฟ์ ด้วยเหตุนี้ช่วงการเขียนทับช่วงบล็อกจึงไม่ทำงานเป็นวิธีการลบเนื้อหาของที่เก็บข้อมูลอย่างปลอดภัย (หรือมีประสิทธิภาพ) เช่นเดียวกับที่ทำกับฮาร์ดไดรฟ์ ที่จัดเก็บข้อมูลแฟลชด้านอื่น ๆ ช่วยให้สามารถลบบล็อกช่วงบล็อกหรือไดรฟ์ทั้งหมดได้อย่างรวดเร็วและมีประสิทธิภาพ

ลบไดรฟ์ทั้งหมด

คุณควรใช้คุณสมบัติการลบความปลอดภัยของไดรฟ์

  1. ตรวจสอบให้แน่ใจความปลอดภัยของไดรฟ์สนับสนุนการรักษาความปลอดภัย erause 1และไม่ได้เป็น“แช่แข็ง” หากเป็นเช่นนั้นอาจช่วยในการระงับและทำงานคอมพิวเตอร์ต่อ

    $ sudo hdparm -I /dev/sdX | grep frozen
           not     frozen 
    

    เอาต์พุตคำสั่ง (กรอง) หมายความว่าไดรฟ์นี้รองรับการลบที่ปลอดภัยคือ” ไม่ตรึง” และคุณสามารถดำเนินการต่อได้

  2. ตั้งรหัสผ่านผู้ใช้ ( Einsในตัวอย่างนี้) รหัสผ่านนี้จะถูกล้างด้วยเช่นกันตัวเลือกที่แน่นอนไม่สำคัญ

    sudo hdparm --user-master u --security-set-pass Eins /dev/sdX
    
  3. ออกคำสั่ง ATA Secure Erase

    sudo hdparm --user-master u --security-erase Eins /dev/sdX
    

ดูบทความการลบความปลอดภัย ATAใน Linux kernel wikiสำหรับคำแนะนำทั้งหมดรวมถึงการแก้ไขปัญหา

(ที่มา )

หากเอาต์พุตคำสั่งในขั้นตอนที่ 1 ว่างเปล่าไดรฟ์ไม่รองรับการลบที่ปลอดภัย แต่อาจยังคงสนับสนุนคำสั่ง TRIM ที่จำเป็นสำหรับส่วนด้านล่าง

ลบพาร์ติชันไดรฟ์

2สามารถลบอุปกรณ์ป้องกันอย่างปลอดภัยหากไดรฟ์สนับสนุน1 :blkdiscard(8)

sudo blkdiscard --secure /dev/sdXN

โดยที่/dev/sdXNเป็นพา ธ ไปยังโหนดอุปกรณ์บล็อกที่อ้างถึงไดรฟ์หรือพาร์ติชั่นเพื่อลบ


1หากไดรฟ์ของคุณอยู่ในปลอกภายนอกด้วยการเชื่อมต่อ USB หรือ FireWire ชิปเซ็ตการแปลอาจบล็อกการสนับสนุนคุณสมบัติทางเลือกบางอย่างเช่นการลบอย่างปลอดภัยและ TRIM แม้ว่าไดรฟ์ที่แนบมารองรับ

2มีให้และติดตั้งเป็นค่าเริ่มต้นตั้งแต่ Ubuntu Xenial Xerus (16.04)


1

ฉันใช้อิมเมจไฟล์truecryptสำหรับข้อมูลสำคัญดังกล่าว ฉันไม่สะดวกฟรี crossplatform และฉันไม่ต้องการดิสก์แบบเต็มหรือใช้ซอฟต์แวร์พิเศษเพื่อ "ลบไฟล์" จริงๆ

เพียงให้แน่ใจว่าคุณมีรหัสผ่านที่คาดเดายากและทำการสำรองข้อมูลของไฟล์ภาพ ฉันสำรองข้อมูลไว้ในคลาวด์


2
คำเตือน: การใช้ TrueCrypt ไม่ปลอดภัยเนื่องจากอาจมีปัญหาด้านความปลอดภัยที่ไม่ได้รวมการพัฒนา TrueCrypt สิ้นสุดใน 5/2014 หลังจาก Microsoft ยุติการสนับสนุน Windows XP
KrIsHnA

2
มีอนุพันธ์ของ TrueCrypt มากมายที่ยังคงอยู่เช่นเดิม VeraCrypt นอกจากนี้ยังไม่มีการเชื่อมโยงระหว่าง Microsoft หยุดการพัฒนา XP และ TrueCrypt ที่ถูกหยุด - สถานการณ์รอบด้านหลังยังคงเป็นปริศนาที่ดีที่สุดสำหรับความรู้ของฉัน
John Rix

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

    เพื่อให้เครื่องย่อยมีประสิทธิภาพโดยเฉพาะอย่างยิ่งใน SSD ที่ทันสมัย ​​ฯลฯ คุณต้องเรียกใช้งานบนอุปกรณ์ไม่ใช่พาร์ติชัน นี่จะเป็น/dev/sdc... โดยไม่มีตัวเลขที่จุดสิ้นสุด (หมายเลขพาร์ติชัน)

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

    เรียกใช้คำสั่ง: sudo shred -vfxz /dev/sdcหรือsdaชื่ออุปกรณ์ใด ๆ หากคุณไม่แน่ใจชื่อให้เปิด Disks หรือ GParted เพื่อระบุอุปกรณ์ของคุณหรือรัน command- lsblkin terminal และระบุชื่ออุปกรณ์ของคุณที่นั่น

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

    คุณสามารถเพิ่มจำนวนการเขียนผ่านที่ต้องการโดยการเพิ่ม-n(หมายเลขที่คุณต้องการ) ตัวอย่าง:sudo shred -vfxz -n 5 /dev/sdc

    นี่เป็นพอร์ตแรกของการโทรเพื่อล้างข้อมูลไดรฟ์ของคุณ มันอาจช่วยให้เรียกใช้เครื่องมือที่คล้ายกันเช่นไม้พุ่ม, การลบที่ปลอดภัยและ nwipe พวกเขาทั้งหมดทำงานในลักษณะเดียวกันกับคำสั่งที่คล้ายกันมากและวิธีการและรูปแบบที่แตกต่างกันเล็กน้อย ไปที่หน้า man Linux หรือ Google พวกเขาเพื่อทำความคุ้นเคยกับวิธีใช้คำสั่งอย่างรวดเร็ว มันไม่น่าเป็นไปได้ที่คุณจะต้องมีมากกว่า 4 ฉีกผ่านมาตรฐานฉีกขาด แต่ถ้ามันเป็นสิ่งสำคัญ

  2. RAM ของคุณอาจมีข้อมูลอยู่ หลังจากติดตั้ง secure-delete ให้รันคำสั่งสำหรับ sdmem นี่จะล้างหน่วยความจำ RAM ของคุณ อย่างไรก็ตามข้อมูลแรกที่คุณใส่ RAM ด้วยรวมถึงข้อมูลใด ๆ ที่อยู่ใน RAM เป็นระยะเวลานานอาจทำให้ร่องรอยหายไป

    เมื่อซื้อ RAM ใหม่ (หรือ HD / SSD สำหรับเรื่องนั้น) วิธีที่ดีที่สุดคือให้เติมไดรฟ์ให้เสร็จสองสามครั้ง คุณสามารถใช้ shred แต่ dd น่าจะดีกว่าที่นี่ คำสั่ง:

    sudo dd if=/dev/urandom of=/dev/ # (insert your device partion name)
    

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

    สิ่งเดียวที่ต้องทำคือสร้างพาร์ติชันหรือติดตั้ง distro ถัดไปของคุณ

  3. การเข้ารหัส - คนมักจะระบุว่านี่เป็นวิธีที่เชื่อถือได้ แต่ถ้าคุณจะใช้ฮาร์ดไดรฟ์ของคุณต่อไปหรือส่งต่อให้ผู้อื่นนี่ไม่ใช่ตัวเลือกที่มีประสิทธิภาพ เกี่ยวกับปัญหาทางกฎหมายความล้มเหลวในการปลดล็อคอุปกรณ์เข้ารหัสมักไม่ใช่ตัวเลือกและสามารถสันนิษฐานได้ว่าเป็นความผิดหรือการกระทำผิดจริงในหลายสถานที่ มันอาจหยุดขโมย ฯลฯ ได้ (ขโมยข้อมูลเท่านั้นฮ่า ๆ )

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

  4. หากการกำจัดอุปกรณ์ - หลังจากเช็ดด้วยฉีกแล้วเข้ารหัสด้วยรหัสผ่านยาวที่มีอักขระพิเศษเช่น * ฯลฯ เพื่อแยกตัวอักษรและตัวเลขของรหัสผ่านของคุณใช้ฉีกอีกครั้ง แต่คุณสามารถระบุ 10gig แรกของไดรฟ์ (ขึ้นอยู่กับขนาด แต่นี่เป็นหมายเลขที่ปลอดภัยขนาดใหญ่) ตัวอย่าง: sudo shred -vfxzs10G /dev/sdcสิ่งนี้เร็วกว่าและมีประสิทธิภาพเท่ากับการทำลายไดรฟ์ทั้งหมดในสถานการณ์เหล่านี้

    จากนั้นตรวจสอบให้แน่ใจว่านำฮาร์ดไดรฟ์และ RAM ออกมา RAM นั้นง่ายต่อการ snap และทำลาย SSD ก็เช่นกัน คุณสามารถสร้างสรรค์และปลดปล่อยพลังงานหวาดระแวงนั้นออกมาได้


3
ยินดีต้อนรับสู่ถาม Ubuntu! :-) OP กำลังถามเกี่ยวกับการทำลายไฟล์ไม่ใช่อุปกรณ์ ...
Fabby

1
โอ๊ะโอ มันก็แย่ที่ต้องการการแก้ไขจาก karel ด้วย ขอบคุณ
Jay

@Fabby - OP ถามถึงการทำลายไฟล์ที่ถูกลบทั้งหมดไม่ใช่แค่ไฟล์เดียว ในกรณีนี้การทำลายอุปกรณ์มีความเหมาะสม นั่นคือการทำลายพื้นที่ว่าง
ravery

1
+1 สำหรับการระบุว่าทำไมการเข้ารหัสไม่ใช่วิธีแก้ปัญหา
ด้าน

0

คุณสามารถใช้ DD เพื่อรักษาความปลอดภัยในการลบไฟล์โชคดีที่กู้คืนเมื่อคุณทำเช่นนั้น ดูตัวอย่างในเว็บไซต์นี้

นี่คือคำสั่งเพื่อความปลอดภัยในการลบไฟล์ (ปรับbs=xxพารามิเตอร์)

dd if=/dev/urandom of=/tmp/test/myfile.txt bs=27 count=1 conv=notrunc

โดยที่bs=##จำนวนข้อมูลสุ่มที่จะเขียนไปยังไฟล์เป็นไบต์ (ต้องตรงกับขนาดของไฟล์ที่ถูกเขียนทับให้ป้อนขนาดไฟล์เป็นไบต์ตามที่เห็นในls -lคำสั่ง)

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