This is also my first backup using Duplicati, so simple errors are not quite excluded.
Duplicati is freshly installed on Ubuntu 24.04.
I start the duplicati service using sudo, assuming this is necessary for a backup of the system files: > sudo systemctl start duplicati.
This is after I did my first attempt at root backup and got the same error I will now describe.
Config: manually typed / as source, excluded /mnt, /home, /proc, /sys, /dev.
Tested destination on a ntfs volume through /mnt.
Other configs are not special. Choose no automatic for frequency and submitted.
Then clicked start.
This causes an immediate return with ‘error’. I setup a log file and checked ~/.config/duplicati-server.sqlite. They have (of course) identical error output (i had hoped for more in the log after specifying verbose level in settings). The error does not help me to determine how I can prevent it.
So, the error exists whether or not I start the service as root. Please help me find out which parameter failed and how the web-interface did not catch that before executing the backup.
2026-02-06 12:35:18 +01 - [Error-Duplicati.Library.Main.Operation.BackupHandler-FatalError]: Fatal error
System.ArgumentOutOfRangeException: length (‘-1’) must be a non-negative value. (Parameter ‘length’)
Actual value was -1.
at System.ArgumentOutOfRangeException.ThrowNegative[T](T value, String paramName)
at System.ArgumentOutOfRangeException.ThrowIfNegative[T](T value, String paramName)
at System.String.ThrowSubstringArgumentOutOfRange(Int32 startIndex, Int32 length)
at System.String.Substring(Int32 startIndex, Int32 length)
at Duplicati.Library.Utility.Utility.GuessScheme(String url)
at Duplicati.Library.Main.Operation.BackupHandler.<>c.b__10_0(String x)
at System.Linq.Lookup2.Create(IEnumerable1 source, Func2 keySelector, IEqualityComparer1 comparer)
at System.Linq.GroupedEnumerable2.GetEnumerator() at Duplicati.Library.Main.Operation.BackupHandler.GetSourceProviders(IEnumerable1 sources, Options options, CancellationToken cancellationToken)
at Duplicati.Library.Main.Operation.BackupHandler.GetSourceProvider(IEnumerable1 sources, Options options, CancellationToken cancellationToken) at Duplicati.Library.Main.Operation.BackupHandler.RunAsync(String[] sources, IBackendManager backendManager, IFilter filter) 2026-02-06 12:35:18 +01 - [Error-Duplicati.Library.Main.Controller-FailedOperation]: The operation Backup has failed System.ArgumentOutOfRangeException: length ('-1') must be a non-negative value. (Parameter 'length') Actual value was -1. at System.ArgumentOutOfRangeException.ThrowNegative[T](T value, String paramName) at System.ArgumentOutOfRangeException.ThrowIfNegative[T](T value, String paramName) at System.String.ThrowSubstringArgumentOutOfRange(Int32 startIndex, Int32 length) at System.String.Substring(Int32 startIndex, Int32 length) at Duplicati.Library.Utility.Utility.GuessScheme(String url) at Duplicati.Library.Main.Operation.BackupHandler.<>c.<GetSourceProviders>b__10_0(String x) at System.Linq.Lookup2.Create(IEnumerable1 source, Func2 keySelector, IEqualityComparer1 comparer) at System.Linq.GroupedEnumerable2.GetEnumerator()
at Duplicati.Library.Main.Operation.BackupHandler.GetSourceProviders(IEnumerable1 sources, Options options, CancellationToken cancellationToken) at Duplicati.Library.Main.Operation.BackupHandler.GetSourceProvider(IEnumerable1 sources, Options options, CancellationToken cancellationToken)
at Duplicati.Library.Main.Operation.BackupHandler.RunAsync(String sources, IBackendManager backendManager, IFilter filter)
at Duplicati.Library.Main.Controller.<>c__DisplayClass22_0.<b__0>d.MoveNext()
— End of stack trace from previous location —
at Duplicati.Library.Utility.Utility.Await(Task task)
at Duplicati.Library.Main.Controller.RunAction[T](T result, String& paths, IFilter& filter, Func`3 method)