Error trying to backup windows files to an ubuntu server

Hello.
I’m using Duplicati for a couple of years now backing up my Ubuntu server data to a backup drive, and it works flowlesly.
I installed Duplicaty on a Windows machine and want to backup my data disc to the same backup drive connected to my server, using a differant directory. I ran “test connection” and everything seems to correct. However, trying to run the backup job fails and gives me the following warning:

Blockquote
The backup contains files that belong to another operating system. Proceeding with a backup would cause the database to contain paths from two different operation systems, which is not supported. To proceed without losing remote data, delete all filesets and make sure the --no-auto-compact option is set, then run the backup again to re-use the existing data on the remote store.

How can this be fixed?

Welcome to the forum @osho

Is this the Ubuntu server disc? How does it get to Windows? Was there a problem on Linux?

Similar question, but also is this different directory empty now, and Duplicati database empty?

Basically it sounds like the goal was to fresh start, but the result sounds like old backup got in.

Possibly I misunderstand what’s going on, and am somewhat confused by the different pieces.

Hello and thank you for your reply

No, my goal is to backup a data disc on the windows machine to a raid array mounted on the Ubuntu server, used for on site backup.

Yes, it’s a fresh start for this specific machine. I created a directory for it on the backup raid array, and a fresh backup job, pointing to that directory. I tried pointing to it using the server IP, and the assigned windows drive letter. In both cases the connection was succesful but the error was the same. BTW, the directory I created is empty.
One more thing that might be relevant. I’m running Duplicati on my server to backup my Data raid array (mounted on the same server). The backups are saved to a Backup folder on the seperate raid array I mentioned before.
For the windows machine I created a seperate folder inside it, IE - /Backup/Studio_PC/…
Maybe both instanses of Duplicati somehow interconnect inspite of being installed on differant machines?

So the answer to how Windows gets to Linux sounds like you have an SMB drive set up to there.

Is this the same machine and backup source as below, basically just restating the backup plan?

They don’t interconnect on their own, but if you move a database you can surprise the backup:

Can you look in whatever job is complaining, see if it has logs, see if it has any restore info, etc?

Yeah, the only time I’ve ever seen this message is when the SOURCE side operating system changes between Windows and Linux/MacOS and you attempt to continue the same backup.

Duplicati does not care about the destination operating system at all.

Yes, the Ubuntu server storage is a SMB drive

No. My Ubuntu server has a SMB DATA storage. It also has a seperate SMB BACKUP storage where the DATA storage is backed up.
I’m trying to backup data from a DIFFERANT (Windows) machine, to the same backup storage.

There’s no database for the windows backup as it never ran succesfully…

Here’s the complete log of the error:

Blockquote
{
“DeletedFiles”: 0,
“DeletedFolders”: 0,
“ModifiedFiles”: 0,
“ExaminedFiles”: 0,
“OpenedFiles”: 0,
“AddedFiles”: 0,
“SizeOfModifiedFiles”: 0,
“SizeOfAddedFiles”: 0,
“SizeOfExaminedFiles”: 0,
“SizeOfOpenedFiles”: 0,
“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.8.1 (2.0.8.1_beta_2024-05-07)”,
“EndTime”: “2024-09-28T04:04:05.3996685Z”,
“BeginTime”: “2024-09-28T04:04:04.29293Z”,
“Duration”: “00:00:01.1067385”,
“MessagesActualLength”: 2,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 1,
“Messages”: [
“2024-09-28 07:04:04 +03 - [Information-GetGpgProgramPath-gpg]: C:\ProgramData\Duplicati\updates\2.0.8.1\win-tools\gpg.exe”,
“2024-09-28 07:04:04 +03 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: The operation Backup has started”
],
“Warnings”: ,
“Errors”: [
“2024-09-28 07:04:05 +03 - [Error-Duplicati.Library.Main.Controller-FailedOperation]: The operation Backup has failed with error: The backup contains files that belong to another operating system. Proceeding with a backup would cause the database to contain paths from two different operation systems, which is not supported. To proceed without losing remote data, delete all filesets and make sure the --no-auto-compact option is set, then run the backup again to re-use the existing data on the remote store.\r\nUserInformationException: The backup contains files that belong to another operating system. Proceeding with a backup would cause the database to contain paths from two different operation systems, which is not supported. To proceed without losing remote data, delete all filesets and make sure the --no-auto-compact option is set, then run the backup again to re-use the existing data on the remote store.”
],
“BackendStatistics”: {
“RemoteCalls”: 0,
“BytesUploaded”: 0,
“BytesDownloaded”: 0,
“FilesUploaded”: 0,
“FilesDownloaded”: 0,
“FilesDeleted”: 0,
“FoldersCreated”: 0,
“RetryAttempts”: 0,
“UnknownFileSize”: 0,
“UnknownFileCount”: 0,
“KnownFileCount”: 0,
“KnownFileSize”: 0,
“LastBackupDate”: “0001-01-01T00:00:00”,
“BackupListCount”: 0,
“TotalQuotaSpace”: 0,
“FreeQuotaSpace”: 0,
“AssignedQuotaSpace”: 0,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.0.8.1 (2.0.8.1_beta_2024-05-07)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2024-09-28T04:04:04.29293Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
}

That doesn’t mean there’s no database. In fact, error suggests that there is.

On your Database screen, you can see the assigned database location, and

(example)

image

Delete button being active means a database file exists at Local datbase path.
Never-touched new backup job might not have a DB, but they show up quickly.

Above “logs” and “restore” refer to the Show log and Restore files GUI items, respectively.

I’m still unclear on which SMB is client or server. I’m pretty well convinced Windows is client of Ubuntu SMB server. Perhaps Ubuntu server is SMB client of nothing, SMB server of all below?

So Ubuntu has direct-attached drives that it shares over SMB? Or is picture messier than that?

You’re right, I guess my explenation wasn’t clear enough. :blush:
The home server is an Ubuntu machine with one raid array inside the case, serving as Data storage. Another raid array is in an external case connected to the box, and serves as a backup storage. Both are mounted as SMB storage
The Data storage is backed up to the Backup storage, which makes the Ubuntu machine both server and client. The windows machine is a only a client.
I deleted the database (you were right, it was there), and attempted to run the backup job manually. This time the error was differant:

Blockquote
{
“DeletedFiles”: 0,
“DeletedFolders”: 0,
“ModifiedFiles”: 0,
“ExaminedFiles”: 0,
“OpenedFiles”: 0,
“AddedFiles”: 0,
“SizeOfModifiedFiles”: 0,
“SizeOfAddedFiles”: 0,
“SizeOfExaminedFiles”: 0,
“SizeOfOpenedFiles”: 0,
“NotProcessedFiles”: 0,
“AddedFolders”: 2,
“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.8.1 (2.0.8.1_beta_2024-05-07)”,
“EndTime”: “2024-09-29T05:40:15.6174121Z”,
“BeginTime”: “2024-09-29T05:39:25.2855903Z”,
“Duration”: “00:00:50.3318218”,
“MessagesActualLength”: 30,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 2,
“Messages”: [
“2024-09-29 08:39:25 +03 - [Information-Duplicati.Library.Main.Controller-StartingOperation]: The operation Backup has started”,
“2024-09-29 08:39:25 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Started: ()”,
“2024-09-29 08:39:25 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: List - Completed: ()”,
“2024-09-29 08:39:25 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b444cfe9d17d7465490917fb5f05bfe4c.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:25 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-b444cfe9d17d7465490917fb5f05bfe4c.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:35 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-b444cfe9d17d7465490917fb5f05bfe4c.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:35 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bd12f834035dd425a9e039dd695866bf1.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:35 +03 - [Information-Duplicati.Library.Main.Operation.Backup.BackendUploader-RenameRemoteTargetFile]: Renaming "duplicati-b444cfe9d17d7465490917fb5f05bfe4c.dblock.zip.aes" to "duplicati-bd12f834035dd425a9e039dd695866bf1.dblock.zip.aes"”,
“2024-09-29 08:39:35 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-bd12f834035dd425a9e039dd695866bf1.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:35 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-bd12f834035dd425a9e039dd695866bf1.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:45 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bd12f834035dd425a9e039dd695866bf1.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:45 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bcda95c85d1d448479bae8cea92ee7e67.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:45 +03 - [Information-Duplicati.Library.Main.Operation.Backup.BackendUploader-RenameRemoteTargetFile]: Renaming "duplicati-bd12f834035dd425a9e039dd695866bf1.dblock.zip.aes" to "duplicati-bcda95c85d1d448479bae8cea92ee7e67.dblock.zip.aes"”,
“2024-09-29 08:39:45 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-bcda95c85d1d448479bae8cea92ee7e67.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:45 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-bcda95c85d1d448479bae8cea92ee7e67.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:55 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-bcda95c85d1d448479bae8cea92ee7e67.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:55 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Rename: duplicati-b5c479438e4ab4e119e48af606c150c31.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:55 +03 - [Information-Duplicati.Library.Main.Operation.Backup.BackendUploader-RenameRemoteTargetFile]: Renaming "duplicati-bcda95c85d1d448479bae8cea92ee7e67.dblock.zip.aes" to "duplicati-b5c479438e4ab4e119e48af606c150c31.dblock.zip.aes"”,
“2024-09-29 08:39:55 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Started: duplicati-b5c479438e4ab4e119e48af606c150c31.dblock.zip.aes (1.42 KB)”,
“2024-09-29 08:39:55 +03 - [Information-Duplicati.Library.Main.BasicResults-BackendEvent]: Backend event: Put - Retrying: duplicati-b5c479438e4ab4e119e48af606c150c31.dblock.zip.aes (1.42 KB)”
],
“Warnings”: ,
“Errors”: [
“2024-09-29 08:40:15 +03 - [Error-Duplicati.Library.Main.Operation.BackupHandler-FatalError]: Fatal error\r\nUnauthorizedAccessException: Access to the path ‘\\?\UNC\192.168.1.15\Backup\Studio_PC\duplicati-bfbf44070b42245a99cb62752b8e07f47.dblock.zip.aes’ is denied.”,
“2024-09-29 08:40:15 +03 - [Error-Duplicati.Library.Main.Controller-FailedOperation]: The operation Backup has failed with error: One or more errors occurred.\r\nAggregateException: One or more errors occurred.”
],
“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”: 4960257015808,
“FreeQuotaSpace”: 2987304931328,
“AssignedQuotaSpace”: -1,
“ReportedQuotaError”: false,
“ReportedQuotaWarning”: false,
“MainOperation”: “Backup”,
“ParsedResult”: “Success”,
“Interrupted”: false,
“Version”: “2.0.8.1 (2.0.8.1_beta_2024-05-07)”,
“EndTime”: “0001-01-01T00:00:00”,
“BeginTime”: “2024-09-29T05:39:25.2855903Z”,
“Duration”: “00:00:00”,
“MessagesActualLength”: 0,
“WarningsActualLength”: 0,
“ErrorsActualLength”: 0,
“Messages”: null,
“Warnings”: null,
“Errors”: null
}
}

If I understand correctly, it complains about access to a file. But the user credentials I wrote in the setup are correct and the connection test was succesfull…
Any ideas?
Thnks

You need to provide write access to the SMB Destination for whatever user Duplicati runs as.

EDIT 1:

Duplicati has no SMB client. This is all Windows SMB, however Linux setup likely matters too.

EDIT 2:

So unless you’re running Duplicati as a user you can’t login as, you can test SMB in Windows.

It is a connection test, fairly minimal, often just to see if authentication works and a list works.

Although I think you can test from Windows (see above), Duplicati does have some other tests:

Duplicati.CommandLine.BackendTool.exe will let you manually see what the destination allows.

Duplicati.CommandLine.BackendTester.exe will do an automated test. It needs an empty folder.

Export As Command-line is one way to get a URL that you can use with the command line tools.

I have access to the SMB from the windows machine with the same credentials I provided in the duplicati setup…

It looks pretty clearly like the list worked and the put didn’t. Only 20 out of 30 lines are shown.
Looking at the eventual error message even in its raw (forum eats backslashes) form looks odd:

Fatal error\r\nUnauthorizedAccessException: Access to the path '\\\\?\\UNC\\192.168.1.15\\Backup\\Studio_PC\\duplicati-bfbf44070b42245a99cb62752b8e07f47.dblock.zip.aes' is denied.

UNC paths (Microsoft)

do not say UNC on Windows. The format starts with \\server\ specified by name or address.

Local folder or drive storage type (which I assume is used here) also describes SMB setup as:

For example: \\192.168.1.10\backup

You can then also specify the Username and password (if required).

Duplicati.CommandLine.exe help file gives other examples. Please check your Destination folder path matches the above. If need be, use three-dot menu to check the URL form as below:

C:\Duplicati\duplicati-2.0.8.1_beta_2024-05-07>Duplicati.CommandLine.exe help file

Duplicati can use the local file system to store backups. The following target
URL formats can be used:

  file://hostname/folder%20for%20backup
  file://\\server\folder%20for%20backup (UNC path)
  "C:\folder for backup"
  file://c:\folder%20for%20backup (Windows)
  file:///usr/pub/folder%20for%20backup (Linux)

The path I used was “\192.168.1.15\Backup\Studio_PC” it added the UNC part on it’s own.
Anyway, I deleted the DB and went with the windows SMB path but now it give me the following:

Blockquote
“Errors”: [
“2024-10-02 08:14:49 +03 - [Error-Duplicati.Library.Main.Operation.BackupHandler-FatalError]: Fatal error\r\nUnauthorizedAccessException: Access to the path ‘\\?\Y:\Studio_PC\duplicati-b2730f12fbb8047339816778061accea0.dblock.zip.aes’ is denied.”,
“2024-10-02 08:14:49 +03 - [Error-Duplicati.Library.Main.Controller-FailedOperation]: The operation Backup has failed with error: One or more errors occurred.\r\nAggregateException: One or more errors occurred.”
],

The Studio_PC folder has the same permissions as the Backup parent folder. the connection is succesfull using the username and password…

What added, and when? I can’t get this, but procedure might be different. Got exact steps?

image

How is that relevant? Are you saying you can write to the Backup parent folder?

How about testing with super open (777) permissions on the folder it can’t write?

If you mean like below, the same answer applies. Please test more.

Examples of tests using Duplicati facilities:

Duplicati has access too. Do you have write access though? You can maybe test UNC access.

Windows 11 File Explorer & UNC paths

Or if you’re testing with a drive letter and can write files, that would be a way for Duplicati as well, provided Duplicati is on the same login. If you have a Duplicati Windows service, setup is harder because Windows does drive letter mappings per user login. Also, SYSTEM account is awkward.

If you need to drive letter map and unmap on the fly, you can do it with Duplicati Scripting options.

Well, that did it, it now writes with no problem. I don’t like having the folders permissions that way, but I suppose I have no choice …

Thank you vary much for your help and patience
Itsik

I don’t think that’s a firm conclusion yet. Please look to see what user wrote the file (e.g. ls -l).
Is it what you expected? If not, either see if you can tweak SMB setup, or let user own the folder.

Well, changing the owner and restoring permission to 0755 worked.
Once again, Thank you for your help and your patience.

1 Like