วิธีการลบไฟล์อย่างถาวรใน Linux โดยใช้ Command Line และ GUI Tools

เรียนรู้วิธีลบไฟล์อย่างถาวรในระบบ Linux โดยใช้บรรทัดคำสั่งและ GUI

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

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

จากหน้า rm man:

หากคุณใช้ rm เพื่อลบไฟล์ อาจสามารถกู้คืนเนื้อหาบางส่วนได้ หากได้รับความเชี่ยวชาญและ/หรือเวลาเพียงพอ

ดังนั้น จำเป็นต้องรู้เครื่องมือใน Linux ซึ่งรับประกันอย่างน้อยในระดับหนึ่งว่าข้อมูลถูกลบและไม่สามารถกู้คืนได้โดยเครื่องมือการกู้คืนหรือวิธีอื่นใดในการกู้คืนข้อมูล

เครื่องมือบรรทัดคำสั่งเพื่อลบไฟล์อย่างถาวรบน Linux

โดยใช้ rm สั่งการ

rm เป็นโปรแกรมมาตรฐานในการลบไฟล์ในระบบ GNU/Linux มันเป็นส่วนหนึ่งของ GNU Coreutils และติดตั้งมาล่วงหน้าในลีนุกซ์เกือบทุกรุ่น

ในการลบไฟล์โดยใช้ rm คุณสามารถเรียกใช้:

rm file1 file2 /home/user/file3

ใช้ไม่ได้กับไดเร็กทอรี ในการลบไดเร็กทอรีทั้งหมด พร้อมกับลำดับชั้นด้านล่าง คุณสามารถเรียกใช้:

rm -r dir1 /home/user/dir2 file3

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

โดยใช้ ฉีก สั่งการ

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

เพื่อทำลายเนื้อหาของไฟล์ (เขียนทับด้วยข้อมูลแบบสุ่ม) รันคำสั่งต่อไปนี้:

ฉีกชื่อไฟล์

โปรดทราบว่าโดยค่าเริ่มต้น จะเขียนทับข้อมูลแบบสุ่ม 3 ครั้ง หากต้องการเขียนทับในจำนวนการวนซ้ำที่แตกต่างกัน รันคำสั่งต่อไปนี้:

ฉีก -n 10 ชื่อไฟล์

ซึ่งจะเขียนทับข้อมูล 10 ครั้ง โปรดทราบว่าข้อมูลข้างต้นจะไม่ลบไฟล์ แต่จะเขียนทับเฉพาะข้อมูลเท่านั้น

ใช้ ฉีก เพื่อลบและเขียนทับเนื้อหาของไฟล์ ใช้คำสั่งต่อไปนี้:

ฉีก -n 10 --remove ชื่อไฟล์

ข้อเสียอย่างหนึ่งของการใช้ฉีกคือไม่มีตัวเลือก 'ทำลายซ้ำ'

โดยใช้ srm สั่งการ

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

ติดตั้ง srm บน Ubuntu และการแจกแจงที่คล้ายกัน รันคำสั่งต่อไปนี้:

sudo apt ติดตั้ง secure-delete

บันทึก: สำหรับ Ubuntu เวอร์ชันเก่า (เวอร์ชัน 14.04 และต่ำกว่า) คุณต้องใช้ apt-get ควรใช้แทน ฉลาด.

ติดตั้ง srm ในการแจกแจงตามเร้ดแฮท รันคำสั่งต่อไปนี้:

yum ติดตั้ง safe-delete

ในการลบไฟล์และโฟลเดอร์ของคุณซ้ำๆ โดยใช้ srm, เรียกใช้คำสั่งต่อไปนี้:

srm -r ชื่อโฟลเดอร์/

เครื่องมือ GUI เพื่อลบไฟล์ทั้งหมดบน Linux

ใช้นอติลุส

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

ขั้นแรก เปิด Nautilus และไปที่โฟลเดอร์ที่คุณต้องการลบไฟล์

เลือกไฟล์/โฟลเดอร์แล้วกดคีย์ผสม Shift + ลบ.

ในกล่องโต้ตอบการยืนยัน คลิก ลบ เพื่อลบไฟล์หรือโฟลเดอร์อย่างถาวร

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

หากต้องการเปิดใช้งานตัวเลือกการลบถาวรในเมนูคลิกขวา ทำดังต่อไปนี้:

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

สิ่งนี้จะเพิ่ม a ลบ ตัวเลือกสำหรับเมนูบริบทใน Nautilus บน Ubuntu และ Linux distros อื่น ๆ

การใช้ Nautilus Scripts (สำหรับการรันโปรแกรมใดๆ จาก GUI)

Nautilus มีตัวเลือกในการเพิ่มสคริปต์ด้วยตนเองเพื่อดำเนินการกับไฟล์ที่เลือก เราสามารถใช้สิ่งนี้เพื่อวิ่งได้ ฉีก หรือ srm คำสั่งจาก GUI

ให้เราสร้างสคริปต์เพื่อเรียกใช้ srm ซ้ำๆ เปิดเทอร์มินัลแล้วไปที่ตำแหน่งโฟลเดอร์สคริปต์ Nautilus โดยเรียกใช้คำสั่งด้านล่าง:

cd ~/.local/share/nautilus/scripts/

สร้างไฟล์สคริปต์เปล่าโดยใช้คำสั่งด้านล่าง:

กลุ่ม ~/.local/share/nautilus/scripts/Secure_Delete

เพิ่มบรรทัดต่อไปนี้ในไฟล์สคริปต์ที่เราสร้างในขั้นตอนข้างต้น

#!/bin/bash srm -r $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS

ที่นี่ $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS เป็นตัวแปรที่มีเส้นทางของไฟล์และโฟลเดอร์ทั้งหมดที่เลือกโดยผู้ใช้ใน Nautilus

บันทึกไฟล์ โดยกด .ก่อน ESC คีย์แล้วพิมพ์ :wq เพื่อบันทึกไฟล์และออกจากคอนโซล vim

สุดท้าย ทำให้สคริปต์สามารถเรียกใช้งานได้โดยให้สิทธิ์ดำเนินการโดยใช้คำสั่งด้านล่าง

chmod +x Secure_Delete

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

คลิกที่ชื่อสคริปต์ (นั่นคือ Secure_Delete ในกรณีนี้) เพื่อลบไฟล์ที่คุณเลือกอย่างถาวรก่อนที่จะคลิกขวา

ในทำนองเดียวกัน คุณสามารถเพิ่มสคริปต์สำหรับ ฉีก หรือเครื่องมืออื่น ๆ และดำเนินการจาก GUI

มีเครื่องมือ GUI เพิ่มเติม เช่น Nautilus-wipe และ Bleachbit ซึ่งใช้อัลกอริทึมที่คล้ายกันเช่น ฉีก และ srm. ทั้งสองสามารถติดตั้งได้จากที่เก็บมาตรฐานของ Ubuntu

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