Duplicati 2.1.0.102

Duplicati is a free, open source, backup client that securely stores encrypted, incremental, compressed backups on cloud storage services and remote file servers. It works with: Amazon S3, IDrive e2, Backblaze (B2), Box, Dropbox, FTP, Google Cloud and Drive, MEGA, Microsoft Azure and OneDrive, Rackspace Cloud Files, OpenStack Storage (Swift), Sia, Storj DCS, SSH (SFTP), WebDAV, Tencent Cloud Object Storage (COS), and more!

Tags backup cloud encryption sftp webdav trust-no-one-backup cloud-backup client-only-backup c-sharp javascript
License GNU LGPLv3
State beta

Recent Releases

2.1.0.10213 Dec 2024 10:05 minor feature: This release is a canary release intended to be used for testing. Note that this build is using.NET8, unlike the 2.0.8.1 build. Note that this build has a redesigned restore flow. Should arise, the previous restore engine can be enabled with `--restore-legacy=true`. ## Detailed list of changes: Upgraded FluentFTP to a crash on socket timeout. Removed named channels to a rare exception. Rewrote the restore process to be multithreaded and target optimal disk I/O write performance. Added missing documentation to the iDrive e2 backend. Added activity timeout on backend transfers. Added support for generating a "forever token".
2.1.0.10109 Dec 2024 03:16 minor bugfix: This release is a canary release intended to be used for testing. Note that this build is using.NET8, unlike the 2.0.8.1 build. Breaking change from previous canary: The pCloud backend is updated to support subfolders. Paths with `/` will now be treated as a folder structure on pCloud. Previous version would treat `folder/subfolder` as a single foldername, this version treats it as `folder` / `subfolder`. ## Detailed list of changes: a case where the TrayIcon would hang in detached mode. Improved OpenAPI description for filter groups. an with websocket requests through a proxy. Updated icons for Linux and dark-mode MacOS. Added logging of unobserved exceptions. a compatibility with FTP not correctly detecting explicit TLS. an where the quota was reported incorrectly. Removed the unused `--use-block-cache` option. Agent now has a dedicated `register` command. Sizes can now be supplied as kikibytes, eg. `20kib`. supporting subfolders in pCloud. Added option to send http requests with relaxed TLS security. Agent can now be asked to retain the previous UI password. Updated SSH.NET to v2024.2.0.
2.1.0.10005 Dec 2024 12:25 minor feature: This release is a canary release intended to be used for testing. Note that this build is using.NET8, unlike the current beta. See release notes from previous canary builds for details. ## Detailed list of changes: startup delay caused by AWS upgrade. Running WindowsService INSTALL will now automatically start the new service. Removed log messages from GPG detection. an with Agent not being able to see connection status in the UI. Added Downloads folder to list of special folders. an with the remote control heartbeat period. Re-introduced the crashlog feature. Updated FTP backend to be compatible with the previous FTP backend. an with quiet MSI upgrades. MSI will automatically attempt to stop and restart the service during install. Added single-click handler to TrayIcon on Linux+Windows. Added pCloud native backend. with DST changes causing schedule time-of-day to change. with lingering update notification. Added option to ignore snapshot warnings from HyperV on client-Windows.
2.0.9.11129 Nov 2024 18:05 major feature: This release is a canary release intended to be used for testing. This release is expected to progress to a stable release if no major blockers are found. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. The builds are self-contained so Mono or.NET installations are not required to install. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme for server. Settings database version updated to v8. Backup database updated to v13. New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. Upgrade from `v2.0.9.105`. If you are upgrading from 2.0.9.105 please see the release notes from 2.0.9.106 for how to prepare the database. Upgrades from other versions do not need special steps. ## Detailed list of changes: Added missing options to Agent commandline. a warning when using the S3 backend. Sending package type id to usage reporter. Reduced log output and increased heartbeat period for Agent.
2.0.9.11029 Nov 2024 10:25 major feature: This release is a canary release intended to be used for testing. This release is expected to progress to a stable release if no major blockers are found. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. The builds are self-contained so Mono or.NET installations are not required to install. For users running on builds prior to 2.0.9.x, this build will appear later as an update that requires manual installation. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme for server. Settings database version updated to v8. Backup database updated to v13. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. Upgrade from `v2.0.9.105`. If you are upgrading from 2.0.9.105 please see the release notes from 2.0.9.106 for how to prepare the database. Upgrades from other versions do not need special steps. Downgrade backup database to v12: If you need to go back to v12, run these two SQL statements: ``. DROP INDEX "UniqueBlockVolumeDuplicateBlock"; UPDATE "Version" SET "Version" = 12; ``. ## Detailed list of changes: Minor updates to help text and option types. an with file backend url on Windows, thanks @Jojo-1000. a condition that could hang the trayicon on a crash. Updated AWSSDK to latest version. an with the AWS Secrets Manader provider stalling the load of settings. Telegram notifications. Added Agent MSI installer. Updated Avalonia to the latest version to crash on Debian. Added Agent PKG for MacOS. Added CLI PKG for MacOS. Added autolaunch for Agent Deb package. Added option to let scripts create log entries.
2.0.9.10929 Nov 2024 00:05 major bugfix: This release is a canary release intended to be used for testing. This release is expected to progress to a stable release if no major blockers are found. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. The builds are self-contained so Mono or.NET installations are not required to install. For users running on builds prior to 2.0.9.x, this build will appear later as an update that requires manual installation. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme for server. Settings database version updated to v8. Backup database updated to v13. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. Upgrade from `v2.0.9.105`. If you are upgrading from 2.0.9.105 please see the release notes from 2.0.9.106 for how to prepare the database. Upgrades from other versions do not need special steps. Downgrade backup database to v12: If you need to go back to v12, run these two SQL statements: ``. DROP INDEX "UniqueBlockVolumeDuplicateBlock"; UPDATE "Version" SET "Version" = 12; ``. ## Detailed list of changes: Updated list of S3 endpoints to include Segate Lyve. Updated all backends to support asyncronous calls. for the new API implementation. for recreate failing on some systems. Added option to disregard advisory locking on Linux. with WebDAV and self-signed certificates. Removed the deprecated FTP backend and made FluentFTP handle both FTP and aFTP. a performance with compacting. with remote control registration. a performance with SharpAESCrypt. an incorrect error masking another error in backups. Support for EC-based certificates, thanks @mnaiman. Alwa
2.0.9.10826 Nov 2024 04:25 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. The builds are self-contained so Mono or.NET installations are not required to install. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme for server. Settings database version updated to v8. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. Upgrade from `v2.0.9.105`. If you are upgrading from 2.0.9.105 please see the release notes from 2.0.9.106 for how to prepare the database. Upgrades from other versions do not need special steps. New experimental UI. This version features a new more modern UI based on Angular18 :tada: Not all features are implemented just yet, so the new UI is not yet default. The curious ones can try it by visiting `http://localhost:8200/theme.html` (or similar). ## Detailed list of changes: Added export feature to server-util. Default to using.NET built-in Zip code for performance improvements. Added `/health` healthcheck API to server + server-util. Removed unuspported use of `Thread.CurrentCulture`. Removed unsupported use of `Environment.OSVersion`. Removed support for piped download as it was slow and caused hangs. an with multi-instance detection that caused crashes. Added a new experimental UI. Added support for enabling remote control.
2.0.9.10723 Nov 2024 23:05 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. The builds are self-contained so Mono or.NET installations are not required to install. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme for server. Settings database version updated to v8. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. Upgrade from `v2.0.9.105`. If you are upgrading from 2.0.9.105 please see the release notes from 2.0.9.106 for how to prepare the database. Upgrades from other versions do not need special steps. ## Detailed list of changes: Prepared some additional localization strings. a with server-util not finding backups by name. Added support for insecure connections from server-util. Embedding backwards compatible ARMv7 binaries in builds. Another for MSI packages breaking on upgrade. Improved Swagger output to include types. Replaced `WebRequest` for WebDAV with `HttpClient`. Reduced log output from server-util and TrayIcon. Microfor USN parsing. a case where almost identical files could cause broken index files, thanks @Jojo-1000. Also improved handling when reading index files with broken lists, thanks @Jojo-1000. auto-repair failing due to locked databases, thanks @Jojo-1000.
2.0.9.10623 Nov 2024 03:05 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme. Settings database version updated to v8. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. The new tool can pause/resume a backup, run a backup, change the password and more: https://github.com/duplicati/duplicati/pull/5483 Encrypting database fields. To reduce the risk of leaking encryption passphrases and credentials, many fields in the `Duplicati-server.sqlite` file can now be encrypted with user supplied key. The following environment variables control the encryption options: `SETTINGS_ENCRYPTION_KEY`: Provides the settings encryption key. `DUPLICATI__REQUIRE_DB_ENCRYPTION_KEY=true`: Prevents starting with a key (also supported via `--require-db-encryption-key-true`). `DUPLICATI__DISABLE_DB_ENCRYPTION=true`: Forces Duplicati to run without encryption (also supported via `--disable-db-encryption=true`). If you need to change the key, you can temporarily decrypt the database by starting the server with `--disable-db-encryption`. After starting, stop the instance again, change `SETTINGS_ENCRYPTION_KEY` to the new key and start again without the argument, to have it re-encrypted. To downgrade from this version, run once with `--disable-db-encryption`, and change the version number to 7, then install the previous version.
2.0.9.10519 Nov 2024 16:05 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme. Settings database version updated to v8. Encrypting data in `Duplicati-server.sqlite` with machine serial number. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 New tool to manage a running server. Due to incompatibility with `duplicati_client` a new tool is included, named `Duplicati.CommandLine.ServerUtil.exe`/`duplicati-server-util`. The new tool can pause/resume a backup, run a backup, change the password and more: https://github.com/duplicati/duplicati/pull/5483 Encrypting database fields. To reduce the risk of leaking encryption passphrases and credentials, many fields in the `Duplicati-server.sqlite` file will be encrypted after running this version. The key used to encrypt is derived from the machine serial number, so the database cannot be decrypted on another machine. If your strategy relies on being able to read this database, you must take action. These two setups are vulnerable: If you do not store a copy of the passphrase elsewhere. If you make a copy of the settings database. We strongly recommend that you store a copy of the passphrase(s) securely, regardless of your setup. If you want to choose the settings encryption key, you can set the environment variable `SETTINGS_ENCRYPTION_KEY` to a custom value. If you want to never use the serial number as the passphrase, set the environment variable `DUPLICATI__REQUIRE_DB_ENCRYPTION_KEY=true`, which will prevent Duplicati from start
2.0.9.10426 Oct 2024 20:25 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme. Settings database version updated to v7. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 ## Detailed list of changes: Removed some console logging in JS. Updates to localization, thanks @luixxiul. Improved navigation in UI, thanks @luixxiul. some with using TrayIcon detached from Server. Made hostname validation more backwards compatible.
2.0.9.10309 Oct 2024 17:45 major bugfix: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8.. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. Important changes from last Beta. Updated to.NET8 with OS specific builds. Using Kestrel as the API/UI server. Mandatory password and new authentication scheme. Settings database version updated to v7. Please see list of known related to.NET8/Kestrel upgrade: https://github.com/orgs/duplicati/projects/2 ## Detailed list of changes: Multiple updates for styling and visual consistency, thanks @luixxiul. Extensive work on making all documentation strings follow a consistent logic, thanks @luixxiul. support for Websocket over https, thanks @Riches. an with `--webservice-allowed-hostnames` being renamed. support for captcha on systems without the Arial font. Using different default filenames for logging with TrayIcon and Server. with livelog not showing contents. an where a login would not show an option to log in. showing correct port number in log output. not showing scheduler state and next backup. an where a crash would show the wrong stack trace. an with generating massive number of inotify watchers. Re-enabled the button to log out. Added option to disable the visual captcha. Added support for providing server commandline arguments via environment variables. log error message related to update download url. Added Telegram reporting module.
2.0.9.10207 Sep 2024 17:05 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8.. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. Please see release notes for `v2.0.9.100` for a summary of changes. Please see list of known related to.NET8 upgrade: https://github.com/orgs/duplicati/projects/2 This build is changes the underlying webserver to Kestrel, which is common for.NET based projects. A big thanks to @tsuckow and @npodbielski for their contributions towards this goal. This build changes authentication for the WebUI. With this build it is no longer possible to use the web-UI without a password. If no password is set, a random password is generated. For users activating the UI via the TrayIcon, this will automatically log in, as the TrayIcon hosts the server. For users that rely on the WebUI without the TrayIcon, as special link is emitted during startup that allows login. For both cases, the password can be (re-)set with `--webservice-password=...` as a startup commandline argument. ## Detailed lits of changes: Updated libraries: Mega, SharpAESCrypt, Storj, FluentFTP. Updated Webserver to Kestrel, thanks @tsuckow and @npodbielski. Implemented websocket based messages in WebUI, thanks @npodbielski. HTTP reports now give a warning if the server rejects the message. Extensive changes to strings to improve localization, structure and layout in WebUI, thanks @luixxiul. Uplink libraries on all platforms, thanks @TopperDEL. an where strings with line-breaks would not show in translated form. Removed remnants of Tardigrade backend in favor of Storj API. Added Sakura Cloud to list of S3 providers. Changed aFTP default SSL to `None`, meaning "System Default". Added check to find Duplicati server database in old location on MacOS. with `.deb` pa
2.0.9.10128 Jun 2024 06:45 major feature: This release is a canary release intended to be used for testing in preparation of a later stable release. Unlike regular canary builds, this one has a major change in the build system, so it now runs on.NET8.. For that reason, the updater in previous canary builds does not detect this update yet, but this can be activated at a later time. Please see release notes for `v2.0.9.100` for a summary of changes. ## Detailed lits of changes: Removed obsolete platform detection code, thanks @Jojo-1000. Changed XMPP library to Artalk.Xmpp, thanks @Jojo-1000. an with rendering non-ascii. Cleaned up some library licenses. SQL quotes and added quote guard to SQL queries, thanks @Jojo-1000. Updated AWS region list. compare logic not working on Linux, thanks @Jojo-1000. Added logic to set AWS hostname in UI based on selected region. Removed deprecated S3 options `--s3-european-buckets` and `--s3-use-rrs`. Removed support for deprecated spelling of S3 credentials. Removed bundled GPG Windows binaries. Removed unsupported AlphaFS. Changed restore to not use local blocks by default. Updated Poli Systems endpoints, thanks @IIPoliII. Added Debian Arm7 packages. Updated CoCoL to latest.NET 8 version. Added support for arguments for scripts. Improved speed of the recovery tool, using in-memory lookup and added configurable open archive cache. Increasing the default number of archives tested to 0.1 . Updated SharpAESCrypt to v2. Note this deprecates threaded encryption, and adds padding validation. Set the environment variable `AES_IGNORE_PADDING_BYTES=1` if you re-encrypt archives with an external AES Crypt tool.
2.0.7.10320 Apr 2024 03:15 minor feature: Added microthat adds a missing default value to the backup reports.
2.0.7.10203 Apr 2024 10:16 documentation: This build is intended to be the last build that uses.Net4 (aka.Net Desktop). Future builds are expected to use.Net8 and will require a manual update, because the.Net builds are no longer operating system independent. The upside is that there are fewer dependencies (no more Mono). and execution times are greatly improved. Removed donation messages. Updated MacOS Installer license text. Updated installer to support future manual upgrade. Added information to reports when encountering an exception.
2.0.7.10109 Mar 2024 03:15 minor bugfix: Updated license to MIT, thanks @kenkendk. crash when logging startup errors, thanks @Jojo-1000. Updated SSH.Net, thanks @gpatel-fr. exception happening when stopping the running backup, thanks @Jojo-1000. with connecting to server thanks @kellycampbe. Improved file-backend listing speed, thanks @Jojo-1000. Added support for IPv6 addresses as hostnames, thanks @Jojo-1000. Added AliyunOSS backend, thanks @trueai-org. Added to not show empty form on restarts, thanks @kenkendk. Updated Uplink for Storj to 2.12, thanks @gpatel-fr and @kenkendk. Added machine and backup id options for reports, thanks @kenkendk. with using alternate OAuth server url, thanks @gpatel-fr and @kenkendk.
2.0.7.10027 Dec 2023 10:56 minor feature: This canary is a bugfix release with error reporting improvements, no database format change. Options changes: `--s3-disable-chunk-encoding` added to the AWS backend (only useful for some providers) `--full-remote-verification` changes from a boolean option to a tri-valued one. Existing configurations should not be impacted. `--aftp-log-to-console` and `--aftp-log-privateinfo-to-console` added to the Alternative Ftp backend (for debugging purposes only) `--repair-force-block-use` added to the database rebuild process (only for very damaged databases) Changes: - Fix various bugs with backup filters, thanks @jojo-1000 - Fix highlighting in restore file picker, thanks @jojo-1000 - Update mail libraries, thanks gpatel-fr - Remove dead facebook link and add doc link, thanks @jojo-1000 - Remove obsolete hubic backend, thanks @gpatel-fr - Remove obsolete tool TlsTest, thanks @gpatel-fr - Update Serbian translation, thanks @sagitarion - Improve result reporting for interrupted/failed backups, thanks @jojo-1000 - Add return code 3 to help.txt, thanks @gpatel-fr - Fix missing file error caused by interrupted compact, thanks @jojo-1000 and @warwickmm - Include exception type and message in job log, thanks @jojo-1000 - Update thirdparty info to remove obsolete references, thanks @gpatel-fr - Remove JS error in negated 'IN' expressions, fixing bad restore prompt (thanks @gorosgobe and Bloomberg) - Update restsharp, thanks @gpatel-fr - Update FluentFTP (Alternative FTP) to 46.0.2 and fixes for initial directory creation, thanks @taz-il - Add console log to the Alternative FTP backend, thanks @gpatel-fr - Fix hidden username and password options when changing backends, thanks @jojo-1000 - Add option to disable chunked encoding for AWS S3, thanks @jojo-1000 - Specify the name of the backup when reporting failures, thanks @taz-il - Allow to perform tests without checking file list, thanks @gpatel-fr - Enhance database re