Getting Duplicati Running on Linux
Duplicati is a free, open-source backup client that encrypts data before sending it anywhere – meaning your files are locked on your machine before they ever touch a remote server. It supports a wide range of storage backends, runs on Linux without drama, and includes a browser-based interface that makes scheduling and monitoring straightforward. If you have been putting off setting up automated encrypted backups because the process seemed complicated, Duplicati is the most practical starting point available right now.

Installing Duplicati and Preparing Your System
Duplicati requires Mono on Linux, since the application is built on .NET. On Debian-based systems including Ubuntu, start by installing Mono and its dependencies. Run sudo apt update followed by sudo apt install mono-complete. This pulls in the full Mono runtime, which Duplicati needs to function. The installation takes a few minutes depending on your connection speed, so let it finish completely before moving on.
Once Mono is in place, head to the official Duplicati releases page on GitHub and download the latest .deb package for your architecture. Most modern systems will use the amd64 build. Install it with sudo dpkg -i duplicati_*.deb. If dpkg reports missing dependencies, run sudo apt install -f immediately after to resolve them automatically. The package installs both the application files and a systemd service unit.
Before starting the service, decide whether Duplicati will run as your user account or as a system service. Running it as your own user is simpler and sufficient for desktop machines or single-user servers. To enable and start the user service, run systemctl –user enable duplicati and systemctl –user start duplicati. For a headless server where you want backups to run regardless of login state, enable the system-level service instead with sudo systemctl enable duplicati and sudo systemctl start duplicati.
The web interface listens on port 8200 by default. Open a browser and navigate to http://localhost:8200. You will land on the Duplicati dashboard. If you are accessing it from another machine on your network, you need to expose the interface – but do this carefully. Duplicati does not enforce authentication by default on local connections, so if you open it to a network, set a password immediately through the Settings menu before doing anything else.

Configuring an Encrypted Backup to Cloud Storage
Duplicati supports Backblaze B2, Google Drive, Amazon S3, OneDrive, SFTP, and several other storage destinations. The configuration process is identical in structure regardless of which backend you choose. From the dashboard, click Add backup, then select Configure a new backup. The setup wizard walks you through four steps: general settings, destination, source data, and schedule. Work through them in order and do not skip the encryption step on the first screen.
On the general settings screen, give the backup job a clear name. Below the name field is the encryption section. Duplicati defaults to AES-256 encryption, which is what you want. Enter a strong passphrase and write it down somewhere physically secure – a password manager works too, but make sure you have at least one offline copy. This passphrase encrypts every block of data before it leaves your machine. If you lose it, your backup is permanently inaccessible. There is no recovery mechanism, no support ticket that can help you, and no backdoor.
The destination screen is where you connect to your chosen cloud provider. Select your storage type from the dropdown and fill in the required credentials. For Backblaze B2, you need your Account ID, Application Key, and a bucket name. For Amazon S3, provide your access key, secret key, bucket name, and region. Google Drive requires OAuth authentication through a browser popup. Once credentials are entered, click the Test connection button before proceeding. This confirms your credentials work and that the destination bucket or folder is accessible. A failed test here is much easier to debug than a silent backup failure two weeks later.
Choosing what to back up is the most personal part of the configuration. Add source folders using the file picker on the source data screen. At minimum, include your home directory. Consider excluding directories that store large, easily re-downloadable data – things like ~/.cache, browser cache folders, virtual machine images, and node_modules directories inside development projects. Duplicati lets you add exclusion filters using glob patterns. A common pattern is to exclude /.cache/ and /tmp/ to prevent bloating your remote storage with throwaway data.
On the schedule screen, set your backup to run automatically. Daily backups work well for most people – pick a time when the machine is likely to be on but not under heavy use. Duplicati performs incremental backups after the first full run, so subsequent jobs transfer only changed data blocks. Under the Options section accessible from the backup job settings, pay attention to the retention policy. The default keeps all versions indefinitely, which will eventually consume your entire storage quota. A sensible policy is to keep one version per day for the past 30 days and one per week for the past year. Set this using the keep-versions or retention-policy option depending on your preference.
Verifying Backups and Testing Restore

A backup you have never tested restoring from is not a backup – it is an assumption. After your first backup job completes, go to the job entry on the Duplicati dashboard and click Restore. Pick a small set of files, choose a different restore destination folder so you do not overwrite anything live, and confirm the files come back correctly. Duplicati will decrypt and reassemble them on the fly. If the restore completes without errors and the files match what you originally backed up, your setup is working end to end.
Duplicati also includes a built-in verification feature that checks the integrity of stored backup data without doing a full restore. Access it from the job menu and run Verify files periodically – monthly is reasonable for most setups. One thing to watch: if you change your encryption passphrase after a backup already exists, Duplicati cannot read the old data with the new passphrase. Old and new backup sets become incompatible, so any passphrase change should be treated as a reason to start a fresh backup set entirely.





