In this article
- What does the graphical interface offer?
- Distinguish deletion, overwriting and TRIM
- How does it detect HDDs and SSDs?
- The HDD path: GNU shred and its assumptions
- The SSD path: file deletion and optional fstrim
- Install it and begin with a test file
- A controlled first run
- Privacy also involves copies and retention
- Frequently asked questions
- Project and technical sources
You want a confidential file to disappear from a Linux computer. Emptying the trash is not the whole story, and removing a filename does not automatically explain what happened to previously stored data. HDDs and SSDs introduce different conditions.
My Skynet Shredder provides a local graphical interface for files and folders. It uses existing Linux tools, displays detected storage information and logs its actions. This guide explains the workflow and helps you understand the limits of its results.
What does the graphical interface offer?
Add files and folders by drag-and-drop or selection, review the list before starting and remove entries from it. The tool processes folders recursively, offers a pass-count setting and asks for confirmation before beginning deletion.
- Select targets visibly: The list shows paths before you start an action.
- Observe the workflow: The log names the mountpoint, device, detected type and performed actions.
- Use local utilities: These include
findmnt,lsblk, GNUshredand optionallyfstrim.
That is useful when you want to review file selection in a window. Confirmation still provides no undo: it cannot recover data that has already been deleted or overwritten.
Distinguish deletion, overwriting and TRIM
| Method | What happens? | What it does not establish |
|---|---|---|
| Ordinary file deletion | The file entry is removed and space becomes available. | That all previous physical data blocks are erased |
| Overwriting an HDD file | New data is written over the accessible file contents. | That additional copies or redirected blocks disappear |
| TRIM on an SSD | Unused filesystem blocks are reported for discard. | A complete physical erasure record for the SSD |
Removing a file, overwriting its accessible contents and sanitizing a complete storage device are different tasks. Skynet Shredder is a file application; its interface does not perform a full manufacturer secure erase of a drive.
How does it detect HDDs and SSDs?
The Shredder queries the mountpoint and source device with findmnt. It then attempts to identify rotational or non-rotational storage using lsblk and Linux's /sys/block/…/queue/rotational entry.
This detection is a practical aid, not a certification of the underlying storage. USB bridges, virtual drives, RAID and nested storage paths can complicate identification. “Unknown” means no dependable classification was obtained.
In the current source, the detected type determines the deletion branch. For an unknown type, the tool attempts the shred path if available. That does not establish that overwriting fits your storage. Check the device and filesystem yourself.
The HDD path: GNU shred and its assumptions
For a file detected as being on an HDD, the tool invokes GNU shred with the selected pass count, an additional zero pass and file removal. The interface allows 1–35 passes and defaults to 3. Its “Gutmann (35x)” option sets -n 35 in the shred invocation; the label alone provides no special guarantee.
GNU explains that overwriting requires the filesystem and hardware to replace data in place. Copy-on-write and certain journaling modes can prevent that. Snapshots and backups remain separate copies.
If shred is unavailable, the program includes fallback paths with different behaviour. An installed coreutils package is therefore a prerequisite. Do not assume every fallback does the same work as the normal shred path.
The SSD path: file deletion and optional fstrim
For files detected as being on an SSD, the code first attempts writes at the beginning and, for larger files, the end. It then removes the file. With the TRIM option enabled, it invokes fstrim -v on affected mountpoints after processing.
SSD wear-leveling can redirect writes to different physical locations. Overwriting a file therefore does not prove its old data has been eliminated. More passes do not resolve that mapping.
fstrim reports unused blocks in a mounted filesystem for discard. The call affects that filesystem's free space, not only the selected file. Its reported byte count is not a certificate of physically destroyed data.
TRIM support depends on permissions, the filesystem and the entire storage path. The GUI does not automatically request elevated privileges for it. Check the log for permission errors or unsupported-operation warnings.
Install it and begin with a test file
The Debian/Ubuntu package workflow needs Python 3, PyQt5, Coreutils and util-linux. The repository includes an APT-based script to install dependencies and a per-user application-menu entry. It is not a universal installer for every distribution.
With Git available, download the project:
git clone https://github.com/dennishilk/skynet-shredder.git
Enter the project directory:
cd skynet-shredder
If dependencies are already installed, launch the application directly:
python3 ./skynet_shredder.py
Alternatively, after reading the installation script, use its package workflow:
bash ./install.sh
The installer requests sudo for APT. You can then open the application as a normal user, limiting file operations to your available permissions. A failed TRIM call alone is not a reason to run the entire interface indiscriminately as root.
A controlled first run
- Create a disposable test file in a dedicated test directory. Do not use confidential originals, linked files or system directories for the first attempt.
- Add it and check the complete path. Selecting a folder also includes the files inside it.
- Review settings and confirm only the intended test action.
- Read the log: which storage type was detected, which method ran and were any errors or TRIM warnings reported?
- Check afterwards whether the file was removed. That alone still does not establish that every data remnant disappeared.
A progress bar or “Finished” message does not replace checking the log. Individual deletion errors are written there; the application does not certify complete, verified data destruction.
Privacy also involves copies and retention
Skynet Shredder requires no file upload or cloud analysis. Deletion runs on your device. GitHub downloads and package installation still involve network connections.
Look for other copies before an important deletion decision: backups, snapshots, synchronised folders, email attachments and exports are not cleaned up automatically. The local log contains file paths, so review it before sharing.
If you plan to hand over an entire computer or SSD, you need an appropriate workflow for the complete device. Plan backups, encryption and drive-specific sanitization separately. A file list in this GUI does not perform that task.
Frequently asked questions
Are 35 passes automatically safer?
The number alone is insufficient. The storage path and existing copies determine whether overwriting reaches old data at all. Extra passes do not remove these limitations.
Does TRIM guarantee that nobody can recover SSD data?
No. A successful discard call is not complete proof of physical erasure and does not replace an appropriate whole-device procedure.
Can the tool securely erase an entire drive?
The interface selects files and folders. It does not offer full-drive secure erase, which is different from recursive file deletion.
Project and technical sources
This describes the existing file workflow and its limitations. Reviewed on 6 October 2026.