Remove unnecessary files with Czkawka
File Diet
Czkawka helps find and remove duplicate and obsolete files to free up valuable disk space.
Today's operating systems typically consist of well over 100,000 files, and more files are quickly added during daily work. Many of these added files are temporary files or logfiles. Over time, you might also accumulate duplicate files, configuration files for deleted programs, and the remnants of broken files. Resourceful programmers have developed tools to remove these unneeded files quickly and efficiently. One cleanup tool that is gaining attention with Linux users is Czkawka [1]. According to the project developers, Czkawka will help you discover and delete:
- Duplicate Files: Finds duplicates based on file name, size, hash, and a hash of just first 1MB of a file
- Empty Folders: Finds empty folders with the help of an advanced algorithm
- Big Files: Finds the biggest files in given location
- Empty Files: Looks for empty files across the drive
- Temporary Files: Finds temporary files
- Similar Images: Finds images that are not exactly the same (different resolution, watermarks)
- Zeroed Files: Finds files that are filled with zeros (usually corrupted)
- Same Music: Searches for music with the same artist, album, etc.
- Invalid Symlinks – Shows symbolic links that point to nonexistent files/directories
- Broken Files: Finds files with an invalid extension or that are corrupted
Czkawka, which gets its name from the Polish word for hiccup, is available in a GUI variant and as a command-line tool. The GUI variant is based on the GTK libraries.
Installation
At this writing, Czkawka is only available in the repositories of OpenMandriva Cooker; for all other distributions, you need to install manually. A Snap package allows for quick integration into distributions that support Snap; Czkawka is also available as a Flathub package and an AppImage.
On the project's GitHub page, you will also find two generic packages, the source code, a Docker image, and installation instructions for various distributions. The project also maintains an unofficial PPA for Ubuntu and Debian-based distributions [2].
Interface
When you first start Czkawka, a somewhat confusing program window opens. The complexity of the GUI is your first indication of the large feature set and massive number of options (Figure 1).
The parameters are organized in tabs. After the launch, you'll see the Included Directories box at the top of the dialog. Select the directories you want to clean up. You can add more folders by pressing the Add button.
By default, the software lists the current directory of the logged-in user. To the right, you can define whether the tool searches for files in the specified directories recursively (i.e., including files found in subdirectories within the directory tree). Manual Add lets you specify a path for a directory without the detour via the file manager.
Click the Excluded Directories tab to define directories you want to exclude from search and delete operations. The exclusion list already contains numerous system folders. You can manage this list with the buttons to the left.
The Excluded Items tab lets you specify criteria for excluding files that you want the program to ignore. Entries are mostly recursive; asterisks serve as placeholders.
In the Allowed Extensions tab, enter file extensions that you want to include in the search. Separate multiple extensions by commas. In addition, the software lets you define entire file types, such as IMAGE or VIDEO, using an integrated macro.
Further down, you can enter additional criteria. Czkawka presents several tabs with options in a vertical arrangement on the left margin. For example, you can search for duplicates by clicking Duplicate files on the left. Set the minimum size of the duplicates and the check method. You can choose to list matching files by hash values, file names, or file size. However, the program only lets you select one option; the combination of Size and Name, for example, does not work.
The application searches the specified folders after you click Search in the lower-left corner. Note that if you enter the root directory (Figure 2), the software will search the entire partition and the check could take a long time, depending on the speed of the disk.
In the list of duplicates, you will see the file size and path. The tool also gives the disk space occupied by the duplicate versions. At the bottom of the window, you can see a table with warnings that the program logs. For example, if you enable all folders to search for duplicates, but you are operating under user privileges, the log will tell you that the tool cannot open system directories. To hide and show the log, click the hamburger menu at the bottom right of the program window.
Use the buttons below the table to determine what the software does with the files that match the criteria. Select an entry to open a context menu with different options.
You can delete the items by pressing Delete (Figure 3). It is also possible to save the results from the table as a text file using the Save button.
General
To access general configuration settings, click on the button with a symbolized caliper at the top-right of the program window. You can now define how the software handles changed options, whether it moves the files to be deleted to the recycle bin instead of deleting them directly, and whether it displays reduced images of the contents of image files.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Halcyon Creates Anti-Ransomware Protection for Linux
As more Linux systems are targeted by ransomware, Halcyon is stepping up its protection.
-
Valve and Arch Linux Announce Collaboration
Valve and Arch have come together for two projects that will have a serious impact on the Linux distribution.
-
Hacker Successfully Runs Linux on a CPU from the Early ‘70s
From the office of "Look what I can do," Dmitry Grinberg was able to get Linux running on a processor that was created in 1971.
-
OSI and LPI Form Strategic Alliance
With a goal of strengthening Linux and open source communities, this new alliance aims to nurture the growth of more highly skilled professionals.
-
Fedora 41 Beta Available with Some Interesting Additions
If you're a Fedora fan, you'll be excited to hear the beta version of the latest release is now available for testing and includes plenty of updates.
-
AlmaLinux Unveils New Hardware Certification Process
The AlmaLinux Hardware Certification Program run by the Certification Special Interest Group (SIG) aims to ensure seamless compatibility between AlmaLinux and a wide range of hardware configurations.
-
Wind River Introduces eLxr Pro Linux Solution
eLxr Pro offers an end-to-end Linux solution backed by expert commercial support.
-
Juno Tab 3 Launches with Ubuntu 24.04
Anyone looking for a full-blown Linux tablet need look no further. Juno has released the Tab 3.
-
New KDE Slimbook Plasma Available for Preorder
Powered by an AMD Ryzen CPU, the latest KDE Slimbook laptop is powerful enough for local AI tasks.
-
Rhino Linux Announces Latest "Quick Update"
If you prefer your Linux distribution to be of the rolling type, Rhino Linux delivers a beautiful and reliable experience.