Deleting files securely in Linux ensures that sensitive information remains irrecoverable, safeguarding data privacy and compliance with legal requirements. While simple deletion methods mark files for overwriting, they do not guarantee that the data cannot be retrieved with specialized tools.

Command Line Tools for Secure File Deletion on Linux

Using srm command

The srm command, part of the secure-delete package, provides a method for securely deleting files by overwriting them multiple times. This process makes data recovery extremely improbable, even with advanced hardware.

To install srm on Ubuntu and similar distributions:

sudo apt install secure-delete

Note: For older Ubuntu versions (14.04 and below), use apt-get instead of apt.

To install srm on Red Hat-based distributions:

yum install secure-delete

To securely delete files and directories recursively using srm:

srm -r foldername/

The -r option ensures that directories and their contents are deleted securely. The srm command overwrites the data in a way that significantly reduces the likelihood of recovery.

Using shred command

The shred command overwrites files with random data multiple times, complicating any recovery attempts. By default, it overwrites the file three times, but this number can be adjusted as needed.

To overwrite the contents of a file:

shred filename

To specify the number of overwrite iterations:

shred -n 10 filename

This command overwrites the file ten times. Note that shred does not delete the file by default; it only overwrites its contents.

To overwrite and delete a file using shred:

shred -n 10 --remove filename

One limitation of shred is the absence of a recursive option to handle directories and their contents.

Using rm command

The rm command is the standard tool for removing files in Linux. It removes the directory entries for a file, making the data less accessible but not irrecoverable. The actual data remains on the disk until overwritten by new data.

To delete files using rm:

rm file1 file2 /home/user/file3

To delete directories and their contents recursively:

rm -r dir1 /home/user/dir2 file3

Using rm is suitable for non-sensitive data, as the deleted files can potentially be recovered using data recovery tools.


GUI Tools for Complete File Deletion on Linux

Using Nautilus with Secure Delete Option

Nautilus, the default file manager for many Linux distributions, allows for permanent file deletion. Adjusting its settings to include a Delete option bypasses the Trash and removes files immediately.

Step 1: Open Nautilus and navigate to the folder containing the files or folders you wish to delete.

Step 2: Select the file or folder, then press the Shift + Delete keys.

A confirmation dialog will appear. Click Delete to permanently remove the selected item.

Enabling Delete Option in Context Menu: If you prefer using the mouse over keyboard shortcuts, you can add a Delete option to the right-click context menu.

Step 1: In Nautilus, go to Edit » Preferences.

Step 2: Select the Behavior tab.

Step 3: Check the box labeled Include a Delete command that bypasses Trash.

This adds a Delete option to the context menu, allowing you to permanently delete files and folders without sending them to the Trash.

Using Nautilus Scripts for Secure Deletion

Nautilus supports custom scripts that can extend its functionality. By creating a script, you can integrate the srm command into the Nautilus interface for secure file deletion.

Step 1: Open a terminal and navigate to the Nautilus scripts directory:

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

Step 2: Create a new script file named Secure_Delete:

vim Secure_Delete

Step 3: Add the following lines to the script file:

#!/bin/bash
srm -r $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS

The variable $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS contains the paths of the selected files and folders in Nautilus.

Step 4: Save the file and exit the editor. In vim, press ESC and type :wq.

Step 5: Make the script executable:

chmod +x Secure_Delete

Step 6: In Nautilus, right-click on a file or folder. Under the Scripts option, select Secure_Delete to securely delete the selected items.

You can create similar scripts for other secure deletion tools like shred, integrating them into your file manager for convenient access.

Additionally, tools like Nautilus Wipe and BleachBit offer GUI solutions for secure file deletion. These applications implement methods similar to shred and srm and can be installed from standard repositories on distributions like Ubuntu.


While these methods significantly reduce the chances of data recovery, there remains a minimal risk that highly specialized techniques could recover deleted information. For extremely sensitive data, physical destruction methods such as incinerating the drive at high temperatures may be necessary to ensure complete data eradication.