Windows Server 2022 - error backup file busy 450

Hi,

i moved to Windows Server 2022 and i got problem with Duplicati with make backups.
After first install i got error when i make backup to FTP, when duplicati want send files it waits too long and upload few times the same file and after that i got error file busy 450.

System.AggregateException: At least one error occurred. —> System.AggregateException: The remote server returned an error: (450) File unavailable (e.g. file busy). —> System.Net.WebException: The remote server returned an error: (450) File unavailable (e.g. file busy).

I make test with small file and it create 6 zip files on serwer:
dupliocati_fiels

I use SSL to connect to ftp. Log below, maybe someone help, because i can’t live without Duplicati :slightly_smiling_face:

Log1:
System.AggregateException: Wystąpił przynajmniej jeden błąd. —> System.AggregateException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty). —> System.Net.WebException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).
w CoCoL.AutomationExtensions.d__101.MoveNext() --- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek --- w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext() --- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek --- w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext() --- Koniec śladu stosu wyjątków wewnętrznych --- w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext() --- Koniec śladu stosu wyjątków wewnętrznych --- w CoCoL.ChannelExtensions.WaitForTaskOrThrow(Task task) w Duplicati.Library.Main.Controller.<>c__DisplayClass14_0.<Backup>b__0(BackupResults result) w Duplicati.Library.Main.Controller.RunAction[T](T result, String[]& paths, IFilter& filter, Action1 method)
w Duplicati.Library.Main.Controller.Backup(String inputsources, IFilter filter)
w Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)
—> (Wyjątek wewnętrzny #0) System.AggregateException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty). —> System.Net.WebException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).
w CoCoL.AutomationExtensions.d__101.MoveNext() --- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek --- w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext() --- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek --- w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext() --- Koniec śladu stosu wyjątków wewnętrznych --- w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext() ---> (Wyjątek wewnętrzny #0) System.Net.WebException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty). w CoCoL.AutomationExtensions.<RunTask>d__101.MoveNext()
— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —
w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
w Duplicati.Library.Main.Operation.BackupHandler.d__19.MoveNext()
— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —
w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()<—

—> (Wyjątek wewnętrzny #1) System.AggregateException: Wystąpił przynajmniej jeden błąd. —> System.Net.WebException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).
w CoCoL.AutomationExtensions.d__101.MoveNext() --- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek --- w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext() --- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek --- w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext() --- Koniec śladu stosu wyjątków wewnętrznych --- ---> (Wyjątek wewnętrzny #0) System.Net.WebException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty). w CoCoL.AutomationExtensions.<RunTask>d__101.MoveNext()
— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —
w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
w Duplicati.Library.Main.Operation.BackupHandler.d__19.MoveNext()
— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —
w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()<—
<—
<—

Log2:
{
“DeletedFiles”: 0,
“DeletedFolders”: 0,
“ModifiedFiles”: 0,
“ExaminedFiles”: 1,
“OpenedFiles”: 1,
“AddedFiles”: 1,
“SizeOfModifiedFiles”: 0,
“SizeOfAddedFiles”: 3896,
“SizeOfExaminedFiles”: 3896,
“SizeOfOpenedFiles”: 3896,
“NotProcessedFiles”: 0,
“AddedFolders”: 0,
“TooLargeFiles”: 0,
“FilesWithError”: 0,
“ModifiedFolders”: 0,
“ModifiedSymlinks”: 0,
“AddedSymlinks”: 0,
“DeletedSymlinks”: 0,
“PartialBackup”: false,
“Dryrun”: false,
“MainOperation”: “Backup”,
“CompactResults”: null,
“VacuumResults”: null,
“DeleteResults”: null,
“RepairResults”: null,
“TestResults”: null,
“ParsedResult”: “Fatal”,
“Interrupted”: false,
“Version”: “2.0.7.100 (2.0.7.100_canary_2023-12-27)”,
“EndTime”: “2024-03-01T11:19:36.7792276Z”,
“BeginTime”: “2024-03-01T11:18:45.296024Z”,
“Duration”: “00:00:51.4832036”,
“MessagesActualLength”: 30,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 1,
“Messages”: [
“2024-03-01 12:18:45 +01 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: Operacja Backup rozpoczęta”,
“2024-03-01 12:18:45 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()”,
“2024-03-01 12:18:45 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: ()”,
“2024-03-01 12:18:45 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b5524d3714aab4c41b6d3e13b4f06d104.dblock.zip (1,75 KB)”,
“2024-03-01 12:18:46 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-b5524d3714aab4c41b6d3e13b4f06d104.dblock.zip (1,75 KB)”,
“2024-03-01 12:18:56 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-b5524d3714aab4c41b6d3e13b4f06d104.dblock.zip (1,75 KB)”,
“2024-03-01 12:18:56 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-b654fe3d98e2f41a1a52d2a9ecb57ddbc.dblock.zip (1,75 KB)”,
“2024-03-01 12:18:56 +01 - [Information-Duplicati.Library.Main.Operation.Backup.BackendUploader-RenameRemoteTargetFile]: Renaming "duplicati-b5524d3714aab4c41b6d3e13b4f06d104.dblock.zip" to "duplicati-b654fe3d98e2f41a1a52d2a9ecb57ddbc.dblock.zip"”,
“2024-03-01 12:18:56 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b654fe3d98e2f41a1a52d2a9ecb57ddbc.dblock.zip (1,75 KB)”,
“2024-03-01 12:18:56 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-b654fe3d98e2f41a1a52d2a9ecb57ddbc.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:06 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-b654fe3d98e2f41a1a52d2a9ecb57ddbc.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:06 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bcbb9a1b1674a43b482d82220b1f9f60c.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:06 +01 - [Information-Duplicati.Library.Main.Operation.Backup.BackendUploader-RenameRemoteTargetFile]: Renaming "duplicati-b654fe3d98e2f41a1a52d2a9ecb57ddbc.dblock.zip" to "duplicati-bcbb9a1b1674a43b482d82220b1f9f60c.dblock.zip"”,
“2024-03-01 12:19:06 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-bcbb9a1b1674a43b482d82220b1f9f60c.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:06 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-bcbb9a1b1674a43b482d82220b1f9f60c.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:16 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bcbb9a1b1674a43b482d82220b1f9f60c.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:16 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bd089ce8d173d4059aa6cb63341f2062b.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:16 +01 - [Information-Duplicati.Library.Main.Operation.Backup.BackendUploader-RenameRemoteTargetFile]: Renaming "duplicati-bcbb9a1b1674a43b482d82220b1f9f60c.dblock.zip" to "duplicati-bd089ce8d173d4059aa6cb63341f2062b.dblock.zip"”,
“2024-03-01 12:19:16 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-bd089ce8d173d4059aa6cb63341f2062b.dblock.zip (1,75 KB)”,
“2024-03-01 12:19:16 +01 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-bd089ce8d173d4059aa6cb63341f2062b.dblock.zip (1,75 KB)”
],
“Warnings”: ,
“Errors”: [
“2024-03-01 12:19:36 +01 - [Error-Duplicati.Library.Main.Operation.BackupHandler-FatalError]: Fatal error\r\nWebException: Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”
],
“BackendStatistics”: {
“RemoteCalls”: 7,
“BytesUploaded”: 0,
“BytesDownloaded”: 0,
“FilesUploaded”: 0,
“FilesDownloaded”: 0,
“FilesDeleted”: 0,
“FoldersCreated”: 0,
“RetryAttempts”: 5,
“UnknownFileSize”: 0,
“UnknownFileCount”: 0,
“KnownFileCount”: 0,
“KnownFileSize”: 0,
“LastBackupDate”: “0001-01-01T00:00:00”,
“BackupListCount”: 0,
“TotalQuotaSpace”: 0,
“FreeQuotaSpace”: 0,
“AssignedQuotaSpace”: -1,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.0.7.100 (2.0.7.100_canary_2023-12-27)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2024-03-01T11:18:45.296024Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
}

Welcome to the forum @grigoriii

Did move do a new install of Windows and Duplicati? Was there a running setup before?

FTP problem is strange too. Is this the previously working FTP server with exact old job?

How so? Posted Messages shows it waited 0 seconds with 10 second delay before retry.
number-of-retries defaults to 5, and possibly your FTP server rejected Duplicati six times.

You can watch actions more clearly at Retry level, e.g. About → Show log → Live --Retry.

Do you know what the FTP server is? Maybe we can find what causes it to return the 450.
Have you tried a test upload of some small file to same FTP account using another client?

Is new installation of Windows Server 2022, and there i install Duplicati. Duplicati version was the same on both machines (old Windows Server 2019 nad new Windows Server 2022).
On old Server 2019 was the same setup with Duplicati, i exported my task and import it to new machine.
FTP is the same - no configuration change.

I mean too long because test file wchich is few kB it took on old setup 3-5 seconds and its done, here i wait to got error about minute or maybe more.

I have old setup in virtual machine so i run it to check - and it still work like before, create proper files:
duplicati_fiels_2

On new server still got error. I don’t know what file is busy.

Errors from Log-> Live → Retry:

Error Operation Put with file duplicati:
{“ClassName”:“System.Net.WebException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:null,“HelpURL”:null,“StackTraceString”:" w CoCoL.AutomationExtensions.d__101.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+<RunTask>d__101\nVoid MoveNext()",“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null}

Fatal error:
{“ClassName”:“System.Net.WebException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:null,“HelpURL”:null,“StackTraceString”:" w CoCoL.AutomationExtensions.d__101.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+<RunTask>d__101\nVoid MoveNext()",“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null}

And last newest error on list:
{“ClassName”:“System.AggregateException”,“Message”:“Wystąpił przynajmniej jeden błąd.”,“Data”:null,“InnerException”:{“ClassName”:“System.AggregateException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:{“ClassName”:“System.Net.WebException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:null,“HelpURL”:null,“StackTraceString”:" w CoCoL.AutomationExtensions.d__101.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+<RunTask>d__101\nVoid MoveNext()“,“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null},“HelpURL”:null,“StackTraceString”:” w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()“,“RemoteStackTraceString”:null,“RemoteStackIndex”:0,“ExceptionMethod”:“8\nMoveNext\nDuplicati.Library.Main, Version=2.0.7.100, Culture=neutral, PublicKeyToken=null\nDuplicati.Library.Main.Operation.BackupHandler+d__20\nVoid MoveNext()”,“HResult”:-2146233088,“Source”:“Duplicati.Library.Main”,“WatsonBuckets”:null,“InnerExceptions”:[{“ClassName”:“System.Net.WebException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:null,“HelpURL”:null,“StackTraceString”:” w CoCoL.AutomationExtensions.d__101.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+<RunTask>d__101\nVoid MoveNext()“,“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null},{“ClassName”:“System.AggregateException”,“Message”:“Wystąpił przynajmniej jeden błąd.”,“Data”:null,“InnerException”:{“ClassName”:“System.Net.WebException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:null,“HelpURL”:null,“StackTraceString”:” w CoCoL.AutomationExtensions.d__101.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+<RunTask>d__101\nVoid MoveNext()“,“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null},“HelpURL”:null,“StackTraceString”:null,“RemoteStackTraceString”:null,“RemoteStackIndex”:0,“ExceptionMethod”:null,“HResult”:-2146233088,“Source”:null,“WatsonBuckets”:null,“InnerExceptions”:[{“ClassName”:“System.Net.WebException”,“Message”:“Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).”,“Data”:null,“InnerException”:null,“HelpURL”:null,“StackTraceString”:” w CoCoL.AutomationExtensions.d__101.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<FlushBackend>d__19.MoveNext()\r\n--- Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek ---\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+<RunTask>d__101\nVoid MoveNext()“,“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null}]}]},“HelpURL”:null,“StackTraceString”:” w CoCoL.ChannelExtensions.WaitForTaskOrThrow(Task task)\r\n w Duplicati.Library.Main.Controller.<>c__DisplayClass14_0.b__0(BackupResults result)\r\n w Duplicati.Library.Main.Controller.RunAction[T](T result, String& paths, IFilter& filter, Action1 method)\r\n w Duplicati.Library.Main.Controller.Backup(String[] inputsources, IFilter filter)\r\n w Duplicati.Server.Runner.Run(IRunnerData data, Boolean fromQueue)","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nWaitForTaskOrThrow\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.ChannelExtensions\nSystem.Threading.Tasks.Task WaitForTaskOrThrow(System.Threading.Tasks.Task)","HResult":-2146233088,"Source":"CoCoL","WatsonBuckets":null,"InnerExceptions":[{"ClassName":"System.AggregateException","Message":"Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).","Data":null,"InnerException":{"ClassName":"System.Net.WebException","Message":"Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).","Data":null,"InnerException":null,"HelpURL":null,"StackTraceString":" w CoCoL.AutomationExtensions.<RunTask>d__101.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__19.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()",“RemoteStackTraceString”:null,“RemoteStackIndex”:0,“ExceptionMethod”:“8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+d__101\nVoid MoveNext()","HResult":-2146233079,"Source":"CoCoL","WatsonBuckets":null},"HelpURL":null,"StackTraceString":" w Duplicati.Library.Main.Operation.BackupHandler.<RunAsync>d__20.MoveNext()","RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":"8\nMoveNext\nDuplicati.Library.Main, Version=2.0.7.100, Culture=neutral, PublicKeyToken=null\nDuplicati.Library.Main.Operation.BackupHandler+<RunAsync>d__20\nVoid MoveNext()","HResult":-2146233088,"Source":"Duplicati.Library.Main","WatsonBuckets":null,"InnerExceptions":[{"ClassName":"System.Net.WebException","Message":"Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).","Data":null,"InnerException":null,"HelpURL":null,"StackTraceString":" w CoCoL.AutomationExtensions.<RunTask>d__101.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__19.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()”,“RemoteStackTraceString”:null,“RemoteStackIndex”:0,“ExceptionMethod”:“8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+d__101\nVoid MoveNext()","HResult":-2146233079,"Source":"CoCoL","WatsonBuckets":null},{"ClassName":"System.AggregateException","Message":"Wystąpił przynajmniej jeden błąd.","Data":null,"InnerException":{"ClassName":"System.Net.WebException","Message":"Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).","Data":null,"InnerException":null,"HelpURL":null,"StackTraceString":" w CoCoL.AutomationExtensions.<RunTask>d__101.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__19.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()”,“RemoteStackTraceString”:null,“RemoteStackIndex”:0,“ExceptionMethod”:“8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+d__101\nVoid MoveNext()","HResult":-2146233079,"Source":"CoCoL","WatsonBuckets":null},"HelpURL":null,"StackTraceString":null,"RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":null,"HResult":-2146233088,"Source":null,"WatsonBuckets":null,"InnerExceptions":[{"ClassName":"System.Net.WebException","Message":"Serwer zdalny zwrócił błąd: (450) Plik niedostępny (np. plik zajęty).","Data":null,"InnerException":null,"HelpURL":null,"StackTraceString":" w CoCoL.AutomationExtensions.<RunTask>d__101.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__19.MoveNext()\r\n— Koniec śladu stosu z poprzedniej lokalizacji, w której wystąpił wyjątek —\r\n w System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n w System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n w Duplicati.Library.Main.Operation.BackupHandler.d__20.MoveNext()”,“RemoteStackTraceString”:null,“RemoteStackIndex”:0,“ExceptionMethod”:“8\nMoveNext\nCoCoL, Version=1.7.1.0, Culture=neutral, PublicKeyToken=0983de3c914beeaa\nCoCoL.AutomationExtensions+d__10`1\nVoid MoveNext()”,“HResult”:-2146233079,“Source”:“CoCoL”,“WatsonBuckets”:null}]}]}]}

It will go through its retry series before finally giving up, but you probably didn’t see that well previously. Watching the live log now should have showed exactly that was going on, but not the cause of the 450.

I’m still looking for any information on FTP server that might explain that, plus the tests that I requested.
Although it’s easier to use any old FTP client (don’t you have an ftp included with Windows?), you can Duplicati.CommandLine.BackendTool.exe put a non-interfering (don’t name it duplicati-something) into the destination folder. You can get a suitable target URL from Export As Command-line, and similar URL edited to empty folder can do an automated test with Duplicati.CommandLine.BackendTester.exe.

Are you using encrypted FTP? That’s sometimes broken by TLS 1.3 which I think Server 2022 includes.

EDIT:

The FTP server is also supposed to identify itself on connect. FTP client UI then decides how to show it. Windows command line ftp puts it right on the terminal, but I don’t know what clients you would test on.

The now-unknown server is bothered by something, but I don’t know what, so trying to gather the clues.

Yes it go through retry proces and then give up, and i see that just after install on new server. Why You write that cause is not 450 error when is posted in returned error?

My FTP is based on openmediavault and i write You what test i make:
I run copy from old Sever 2019 to this FTP with duplicati and worked on test file within 3-5 seconds - all is good - so test shows that FTP is ok.

And if you ask me to test this new Server 2022 with another tool, i have now setup Cobian and it worked, files are send to FTP with no problem.

Yes i use SSL to connect with FTP.

I try to disable Firewall on server but nothing changed. Now i don’t have any idea what try next to make it work :expressionless:

I said no such thing. I did say that live log didn’t show the cause of the 450 error.
That error is the result of something that went wrong, but we don’t know what…
450 error caused the backup failure, but the question is – what caused the 450?

There are two sides. Any interoperability problem can come from client or server.
It’s still good to confirm that other clients work, just not Server 2022 + Duplicati…

You haven’t done command line tests that were suggested, but we can move on.
Tests would have confirmed that it’s Duplicati FTP and not an oddity of a backup.

Maybe we should see if TLS 1.3 can be blocked. 1.2 is still considered quite good.

allowed-ssl-versions is really meant for SSL/TLS, but you can test if it affects FTP.

Maybe try this:

image

If that doesn’t affect FTP, maybe openmediavault has similar SSL/TLS settings to try.

If you’re on a network you trust (don’t trust Internet), you could even try unencrypted.

There are also two Duplicati FTP clients, FTP and FTP (Alternative). Please try both.

Which Cobian? Backup is kind of dated. Reflector install area has a different (paid) FTP sitting in it.
Duplicati uses (About → Libraries) FluentFTP, which has trouble with TLS 1.3. Please keep testing.
If FTPS can’t be fixed by limiting TLS, there appears to be SFTP available for OMV. Or use Rclone.

I’m also still interested in test results from the Duplicati CommandLine tools that I mentioned before.

What’s odd is that Windows 11 has been out awhile, and we’re getting only occasional TLS failures. Possibly Server 2022 (which is maybe rarer) has some other issues, but this needs troubleshooting.

Hello,

sorry for late response, i had a lot work, today i returned to this problem, and all is resolved now. As You write problem was in TLS version. The difference between WS2019 and WS2022 is that WS2019 by default support TLS1.2 and WS2022 by default have TLS1.3.

After switch to TLS 1.2 version all uploads to FTP is working as before. I don’t find anywhere in openmediavault any setting to set it for TLS 1.3.

So, in this configuration TLS 1.2 is the solution.

Thanks for help, now i can still use this best tool for backup files.

:slight_smile:

1 Like