Hi,
Im trying to use a s3 bucket to store my backup and i have this error showing up when i attempt to start the backup:
One or more errors occurred. (Unable to read data from the transport connection: The socket has been shut down. (Unable to read data from the transport connection: The socket has been shut down.) (One or more errors occurred. (Unable to read data from the transport connection: The socket has been shut down.)))
Nothing else appears in the logs.
When i try to test the connection with the settings i ve put for my s3 bucket it is successful, but when i run the backup i get the error…
I have tried to create manually the s3 bucket and to let duplicati create it automatically and it’s the same regarding the error when i try to launch the backup
(the bucket gets created tough)
I m running duplicati from linuxserver.io docker linuxserver/duplicati:latest image
I am using puid and guid 0
I dont know where to look to troubleshoot this…
Any help will be appreciated
thank you
#0) System.AggregateException: Unable to read data from the transport connection: The socket has been shut down. (Unable to read data from the transport connection: The socket has been shut down.) (One or more errors occurred. (Unable to read data from the transport connection: The socket has been shut down.)) ---> System.IO.IOException: Unable to read data from the transport connection: The socket has been shut down. ---> System.Net.Sockets.SocketException: The socket has been shut down
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket+AwaitableSocketAsyncEventArgs.ThrowException (System.Net.Sockets.SocketError error) [0x00007] in <a8a996a78a804d888710c9e2575d78c8>:0
at System.Net.Sockets.Socket+AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource.GetResult (System.Int16 token) [0x0001f] in <a8a996a78a804d888710c9e2575d78c8>:0
at System.Threading.Tasks.ValueTask+ValueTaskSourceAsTask+<>c.<.cctor>b__4_0 (System.Object state) [0x00030] in <d636f104d58046fd9b195699bcb1a744>:0
--- End of stack trace from previous location where exception was thrown ---
I created a job and manually started the first backup. The backup seems to be created locally and added to the database but fails when duplicati tries to upload to the s3 bucket.
I am running linux so no .exe for me but i can’t find the cli script inside the docker container.
Changing to Minio SDK does not work because Duplicati switches back to Amazon AWS SDK on save.
I installed Duplicati 2 on Windows and executed the Target Path my linux Duplicati instance displayed successfully
Depending on how your Linux is set up, it might not know the extension. In that case, say mono then file.
It’s seemingly an open issue, though not well understood:
You could open a GUI Commandline and try to pick the option manually, then run the backup. Option:
--s3-client (String): Specifies the S3 client library to use
Set either to aws or minio . Then either the AWS SDK or Minio SDK will used to communicate with S3 services.
Using what? I’m trying to get you to do it with Duplicati’s CLI tools, as it’s Duplicati having the problem.
You left the Path field blank? That would be after the BUCKET/ and before the ? if you were using one.
If there was actually a Path and it was redacted into MY_BUCKET, check the slash count per this post:
EDIT:
The s3-client option survives the Save if it’s done on Options screen 5 instead of on Destination screen.
This is reminiscent of disappearing Destination Advanced options, even though it’s not in that section…
Hey jeah sorry i might have not correctly explained what i did.
I executed the Duplicati.CommandLIne.exe on windows which was successull.
Now i also executed Duplicati.CommandLine.exe via mono on linux inside the docker container and this also run successfull:
mono Duplicati.CommandLine.exe backup "s3://MY_BUCKET_NAME/?s3-server-name=s3.amazonaws.com&s3-location-constraint=eu-central-1&s3-storage-class=STANDARD&s3-client=aws&auth-username=UNAME&auth-password=PASS" ./t --allow-missing-source
Backup started at 11/18/2023 12:34:11 AM
Enter encryption passphrase:
Confirm encryption passphrase:
Checking remote backup ...
Listing remote folder ...
Scanning local files ...
0 files need to be examined (0 bytes)
Uploading file (829 bytes) ...
Uploading file (877 bytes) ...
Uploading file (877 bytes) ...
Compacting remote backup ...
Checking remote backup ...
Listing remote folder ...
Verifying remote backup ...
Remote backup verification completed
Downloading file (877 bytes) ...
Downloading file (877 bytes) ...
Downloading file (829 bytes) ...
Duration of backup: 00:00:17
Remote files: 3
Remote size: 2.52 KB
Total remote quota: 0 bytes
Available remote quota: 0 bytes
Files added: 0
Files deleted: 0
Files changed: 0
Data uploaded: 2.52 KB
Data downloaded: 2.52 KB
Backup completed successfully!
Correct i store directly into the root of the bucket, no subdirectory.
So i dont really see a point in using anything else then AWS SDK. I will give it a try tomorrow but i think the problem is somewhere else. The TARGET_PATH the UI produces does work in linux and windows via the duplciati cli
I don’t see how #4972 fixes this bug because the initial setup seems to be correct and as far as i see it the aws sdk should normally work like with the cli. from duplicati
I will do more testing tomorrow. Thank you for your super fast replies!
I don’t think that’s a correct description of the problem. The option change is saved, and is taken in account, however when going back to edit again the option the backup job always appears with the Aws option selected. When this problem occurs, if one don’t save, the Minio option is still active.
Unclear what bug that is. It should fix what it claims to fix, and possibly also the revert to AWS SDK.
What it claims to fix is disappearing Advanced option on screen 2. The workaround is use screen 5.
We don’t know if minio is needed anyway, as it seems that now you have AWS SDK sometimes OK.
Confirming that the problem works as described just after that on Windows. One can see minio in an Export As Command-line or in GUI Commandline. I think that’s the same as the problem it tries to fix.
I’m now unclear what works and what doesn’t. Is this like Duplicati.CommandLine.exe backup works, however GUI gets socket error? That would seem rather odd, but I have no S3, so I can’t investigate.
Yes, to be continued. Especially with help from developers, perhaps we can figure out what’s going on.
It would help to be sure that the only difference is that. On the other hand, if something else differs, it could be the true reason. I’d expect that in cli you did just a minimum check, while in the Gui you tried to upload a whole bunch of data. That’s a very different proposition in fact, you can run into specific problems when dealing with real life workload. First thing to come to mind is the infamous 5 GB limit.
I dont have a conplicated setup. I use the default settings and add my credentials for aws s3. I just selected some docker conpose yaml files. Nothing special and these are just a few kb each.
I cant see how this basic setup should be an issue. Don‘t really know what to do or test to help the devs find the problem.