A failed package upgrade or risky config change can leave a Debian system unstable, and rebuilding from scratch is slow. You can install Timeshift on Debian from the default APT repositories, then use scheduled snapshots to roll the system back quickly when something breaks.
Update Debian Before Installing Timeshift
First, open a terminal by searching for ‘Terminal’ in Activities. Before installing any new software, update your package lists and upgrade existing packages to ensure compatibility:
sudo apt update && sudo apt upgrade
This guide uses
sudofor system-level changes. If your account does not have sudo access yet, follow this guide to add a user to sudoers on Debian.
This command refreshes the package index and installs available updates for your current packages. Running updates before installing new software helps prevent dependency conflicts.
Install Timeshift on Debian
Timeshift is available in Debian’s default repositories, so installation requires a single command. Run the following to install the application along with its dependencies:
sudo apt install timeshift
APT automatically installs all required dependencies, including rsync for file synchronization and the graphical toolkit for the interface.
You should see output confirming package installation and dependency resolution:
Reading package lists... Building dependency tree... Reading state information... The following NEW packages will be installed: rsync timeshift 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Setting up timeshift (24.06.6-2) ...
Once the installation completes, verify that Timeshift is accessible by displaying its version and command-line options:
timeshift --help
The first lines of output display the version number:
Timeshift v24.06.6 by Tony George (teejeetech@gmail.com)
Syntax:
timeshift --check
timeshift --create [OPTIONS]
timeshift --restore [OPTIONS]
timeshift --delete-[all] [OPTIONS]
timeshift --list-{snapshots|devices} [OPTIONS]
The version number varies by Debian release. Debian 13 (Trixie) provides version 24.06.6, Debian 12 (Bookworm) provides 22.11.2, and Debian 11 (Bullseye) provides 20.11.1. All versions support the same core functionality for creating and restoring snapshots.
Upstream GitHub releases may show newer Timeshift tags than Debian stable packages. This is expected, Debian ships distro-maintained versions and backports fixes through APT updates.
Launch Timeshift on Debian
Timeshift requires root privileges to access system files and create snapshots. To launch the graphical interface from the terminal, use:
sudo timeshift-gtk
Alternatively, launch Timeshift from your desktop environment’s application menu. On GNOME, navigate to:
Activities > Show Applications > Timeshift
The system prompts for your administrator password since Timeshift requires elevated privileges to manage system snapshots. This behavior is handled by PolicyKit, which allows graphical applications to request root access securely.

Configure Timeshift Snapshots on Debian
When you first launch Timeshift, the setup wizard guides you through initial configuration. The following sections explain each step to help you make informed choices about snapshot modes, storage locations, and scheduling.
Choose a Timeshift Snapshot Mode
Timeshift offers two snapshot modes, each suited to different filesystem configurations:
RSYNC Mode
- Works with any Linux filesystem (ext4, XFS, BTRFS, etc.)
- Uses rsync and hard links to efficiently store incremental backups
- Recommended for Debian installations since the default installer creates ext4 partitions
- Snapshots can be stored on any mounted partition with sufficient space
BTRFS Mode
- Uses native BTRFS filesystem snapshots for near-instant backup creation
- Requires a BTRFS filesystem with Ubuntu-style subvolume layout (@, @home)
- Debian’s default installer does not create this subvolume layout automatically
- Only suitable if you manually configured BTRFS subvolumes during installation
For most Debian users, select RSYNC mode. BTRFS mode requires specific subvolume configuration that Debian does not create by default. If you installed Debian with the standard installer and default partitioning, RSYNC provides full functionality. You can verify your filesystem type by running
df -T /in a terminal.

Select a Timeshift Snapshot Storage Location
Next, choose where Timeshift stores your snapshots. The wizard displays all available partitions with their size and available space. For best results, select a location that meets these criteria:
- Sufficient free space (at least 10GB, though more is recommended for multiple snapshots)
- Preferably on a separate drive or partition from your system drive
- Accessible during system recovery (internal drives recommended over USB for boot recovery)
Storing snapshots on a separate drive protects against drive failure. However, if you only have one drive, Timeshift can still protect against software issues, configuration mistakes, and failed updates. The first snapshot typically uses 3-5GB for a minimal installation, with subsequent snapshots requiring less space due to hard link deduplication.

Configure Scheduled Timeshift Snapshots
Timeshift can automatically create snapshots on a schedule, ensuring you always have recent recovery points. The wizard offers multiple schedule levels that you can combine:
- Monthly: Long-term recovery points for major system changes
- Weekly: Balanced protection for regular updates
- Daily: Frequent protection for active development systems
- Hourly: Maximum protection for critical systems (uses more storage)
- Boot: Creates a snapshot each time the system starts
For desktop systems, weekly snapshots with 2-3 retained copies provide a good balance between protection and storage usage. Enable daily snapshots if you frequently install or update packages. Timeshift uses cron for scheduling, so scheduled snapshots run automatically in the background without requiring the GUI to be open.

Configure Timeshift Home Directory Inclusion
By default, Timeshift excludes user home directories from snapshots. This design focuses on system recovery rather than personal file backup, which keeps snapshots smaller and allows faster restoration. You can adjust this behavior for each user:
- Exclude (default): Home directory is not included in snapshots
- Include hidden files: Backs up configuration files (dotfiles like
.bashrc,.config/) but not documents or media - Include all: Full home directory backup (significantly increases snapshot size)
For personal file backup, consider a dedicated tool like Deja Dup or rsync scripts. Timeshift excels at system recovery, allowing you to restore your Debian installation without affecting personal files stored in your home directory. This separation means you can roll back system changes while keeping your documents, downloads, and application data intact.

Complete Timeshift Setup and Create Your First Snapshot
After completing the wizard, Timeshift displays the main interface. Review your settings and click Create to generate your first snapshot. The initial snapshot takes longer since it copies all system files. Subsequent snapshots complete faster because RSYNC mode uses hard links to share unchanged files between snapshots, meaning only modified files require additional storage.


Use Timeshift from the Command Line on Debian
While the graphical interface covers most use cases, Timeshift also provides a command-line interface for scripting, remote servers, or headless systems. The following commands demonstrate common operations:
List Timeshift Snapshots
View all existing snapshots with their creation dates and tags:
sudo timeshift --list
Example output showing two snapshots:
Num Name Tags Description ------------------------------------------------------------------------------ 0 > 2024-12-15_10-30-45 O Initial snapshot 1 > 2024-12-19_08-00-01 W Weekly scheduled
Create a Manual Timeshift Snapshot
Create a snapshot with a custom description, useful before making significant system changes:
sudo timeshift --create --comments "Before kernel upgrade"
When you omit --tags, Timeshift creates an on-demand snapshot automatically. If you need schedule-style tags, use B (boot), H (hourly), D (daily), W (weekly), or M (monthly).
After the snapshot completes, verify it was created:
sudo timeshift --list
Num Name Tags Description ------------------------------------------------------------------------------ 0 > 2026-03-05_09-25-27 O Before kernel upgrade
Restore a Timeshift Snapshot
Restore the system to a previous state. Without additional arguments, Timeshift launches an interactive selection:
sudo timeshift --restore
To restore a specific snapshot non-interactively:
sudo timeshift --restore --snapshot '2024-12-15_10-30-45' --yes
After restoring a snapshot, reboot your system immediately so services load the restored configuration files. Some changes do not take effect until the next boot.
Manage Timeshift on Debian
Update Timeshift on Debian
Since Timeshift is installed from Debian’s repositories, it updates automatically with your regular system updates. To update only Timeshift without upgrading other packages:
sudo apt update
sudo apt install --only-upgrade timeshift
If Timeshift is already current, APT reports that no package upgrade is needed:
Reading package lists... Building dependency tree... Reading state information... timeshift is already the newest version (24.06.6-2).
This approach is useful when you want to apply a security fix to Timeshift without triggering a full system upgrade. For routine maintenance, consider enabling unattended upgrades on Debian to automatically install security updates.
Remove Timeshift from Debian
If you no longer need Timeshift, remove it along with any unused dependencies:
sudo apt remove timeshift
sudo apt autoremove
The first command removes the Timeshift package. The second command removes dependencies that were installed for Timeshift and are no longer required by other packages.
If you also want to remove Timeshift configuration files under /etc/timeshift/, run:
sudo apt purge timeshift
Verify Timeshift is no longer installed:
dpkg -l timeshift | grep '^ii'
If the command returns no output, the package is removed successfully.
The next command permanently deletes all Timeshift snapshots from
/timeshiftand cannot be undone. Confirm your snapshot location first withsudo timeshift --list, then adjust the path if your snapshots are stored elsewhere.
To remove snapshot data and reclaim disk space after uninstalling:
sudo rm -rf /timeshift
Replace /timeshift with your actual snapshot location if you configured a different storage path during setup.
Troubleshoot Timeshift on Debian
Timeshift Shows No Devices for Snapshot Storage
If Timeshift shows “No devices found” when selecting a storage location, the available partitions may lack sufficient space or use an unsupported filesystem. Check available space on your partitions:
df -h
Example output showing available partitions:
Filesystem Size Used Avail Use% Mounted on /dev/sda1 100G 45G 50G 48% / /dev/sdb1 500G 10G 465G 3% /mnt/backup
Ensure at least one partition has 10GB or more free space. If using an external drive, verify it is mounted and accessible. Timeshift supports ext4, XFS, and BTRFS filesystems for snapshot storage.
Timeshift BTRFS Mode Is Grayed Out
If BTRFS mode appears grayed out in the setup wizard, your system either does not use a BTRFS filesystem or lacks the required subvolume layout. Check your root filesystem type:
df -T /
Example output for an ext4 filesystem (BTRFS mode unavailable):
Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda1 ext4 102400000 47185920 50050080 49% /
If the Type column shows ext4, XFS, or another non-BTRFS type, use RSYNC mode instead. BTRFS mode requires both a BTRFS filesystem and Ubuntu-style subvolume configuration (@, @home), which Debian’s default installer does not create.
Timeshift Snapshot Creation Fails with Permission Error
Permission errors typically occur when running Timeshift without root privileges. Always launch the application with administrator rights:
sudo timeshift-gtk
When launching from the application menu, the system should prompt for your password automatically through PolicyKit. If no password prompt appears, verify that PolicyKit is running:
systemctl status polkit
Expected output should show active (running):
● polkit.service - Authorization Manager
Loaded: loaded (/usr/lib/systemd/system/polkit.service; static)
Active: active (running) since Thu 2026-03-05 09:18:58 AWST
If the service is inactive, start it with:
sudo systemctl start polkit
Timeshift Scheduled Snapshots Are Not Running
If scheduled snapshots are not being created automatically, verify that the cron service is running:
systemctl status cron
Expected output should confirm the daemon is running:
● cron.service - Regular background program processing daemon
Loaded: loaded (/usr/lib/systemd/system/cron.service; enabled)
Active: active (running) since Thu 2026-03-05 09:18:57 AWST
Timeshift uses cron to run scheduled snapshot jobs. If cron is not installed (common on minimal installations), install it:
sudo apt install cron
sudo systemctl enable cron
sudo systemctl start cron
After installing cron, reopen Timeshift and configure your schedule again to register the cron jobs.
Frequently Asked Questions About Timeshift on Debian
Yes. Timeshift is available in Debian’s default repositories, so you can install it directly with apt install timeshift.
Use RSYNC mode for most Debian systems. BTRFS mode needs a BTRFS root filesystem with Ubuntu-style @ and @home subvolumes, which Debian does not create by default.
By default, Timeshift stores snapshots under /timeshift on the selected snapshot device. Confirm the active location with sudo timeshift --list.
Timeshift relies on cron for scheduled jobs. If snapshots are not running, check systemctl status cron, then start or install cron if the service is missing or inactive.
Conclusion
Timeshift is now installed on Debian with snapshot scheduling and rollback commands ready for recovery tasks. Keep your system maintenance consistent with unattended upgrades on Debian, and make sure administrative access is set correctly with add a user to sudoers on Debian. For upstream details and project updates, check the Timeshift GitHub repository.
Formatting tips for your comment
You can use basic HTML to format your comment. Useful tags currently allowed:
<code>command</code>command<strong>bold</strong><em>italic</em><blockquote>quote</blockquote>