[SOLVED] Need help going about my backup. Contains details about Resuming Backups and Server Side hashing

I am not a networking person or have anything to do with computers in my professional life.

It was through Homelabbing, that I got to know about urBackup.

I need some help or suggestions on how you would go about backing up w/urBackup if you were in my position.

The setup is for a small office that has a Windows server with approximately 600GB of data. (Client)
Most of these files are small txt files and documents, so random io is through the roof.

The server is an old repurposed laptop, having a SCSi USB 3.0 1 TB SSD attached to it permanently. The server is remote from the client and is connected through tailscale. The limiting feature in my limited opinion is the NIC, which is an awfully slow 10/100 NIC. WiFi is also limited to 2.4G, so no luck there either. The 1 TB SSD is formatted as exFAT, because compatibility with Windows when backing up.

Both sides are connected to the internet through a 200 Mbps connection and have enough data limits to not worry.

This setup is intended to be the 1 in the 3-2-1 backup rule, with the data being shipped offsite.

The “server” can be taken onsite if required/will make things faster.

Until now, the backup has been done by taking the SSD to the office, copying the files into it and bringing it back offsite.

Now mt thoughts on how I did this:

  1. I use only File backups because then if something were to happen, it’s as easy as removing the SSD and taking it back to the office and copying it into the new server there. This action will be performed by someone who’s knowledge extends to copying files into and out of a USB drive.

  2. I use incremental file backups every week (while the onsite backup is taken fully) and every 3 months once, I take a full backup.

  3. Use only “raw” data but compress and encrypt it to prevent loss. (The first full backup is currently ongoing and is being done locally with “raw” data transfer, in the hopes that it’ll be quicker)

  4. Since the space on the SSD drive is limited to only 1 full backup, limit the number of full file backups to 1. (I’m doing this in the hope that when the 2nd full backup starts, urBackup will say I already have 1, so I’m deleting the old one. The new one can instead take it’s place.)

  5. I have not considered image backups at all since as mentioned in point 1, the operator of this setup is not very efficient with computers and I only need the data in 1 drive of the server rather than the entire server. So file or image makes no difference.

  6. Currently a full backup is taking about 18 hours. (Estimate from the Web GUI)

Now I have a few questions:

  1. What’s the deal with restoring incremental file backups? Is it as simple as copying everything like I would from a USB drive or do I have to use software?

2.If I have to use some software, would I be better off by formatting the disk to an ext4 filesystem and then letting the software figure the rest of it out?

Once again, my logic here was that Windows has no users groups and rights over files, so why complicate with an ext4 filesystem.

  1. Is my choice of file backups over image backups correct? (See point 5 above)

  2. Is it fine if I use just “raw” the first time and then for incremental backups, hope that nothing went wrong?

  3. Is my understanding of how full backup file limits work correct? (See point 4 above)

  4. Even when set to “raw” mode, the debug log on the web GUI shows “hashing”, why is this happening?

  5. Am I overcomplicating things? Have I chosen the wrong software? Should I be doing something else?

  6. The office prefers that systems be shutdown when they leave the premises, so this limits the backup windows from 10AM-7PM, while this may not cause issues for incremental backups, I don’t see how a full backup can be completed in this timeframe.

  7. The client is also a SMB server and has SQL installed for another application, so around 5 of the 8 gigs of RAM is already taken up, but CPU is not utilised enough.

I apologise for the wall of text, but I’m really confused at this point, so any and all help will be extremely appreciated.

I remember also being confused (yet excited) when starting to use this software, so I’ll be happy to answer your questions from my lengthy experience with it.

Both options are valid, you can either use the software for restoration, or simply copy the files from the disk.

The way file backup works, is by linking existing files (soft/hard link), which means that if you backup a file that already exists on the server, it is linked to preserve disk space. So yes, ext4 is better because it supports hard-links. For Windows compatibility, you can use NTFS which also supports it.

Image backup lets you quickly restore the entire system partition with the operating system. If this is not important to you (e.g. you don’t mind installing and configuring the operating system and all the necessary software in case of failure), then file backup is indeed the preferred option, because it provides more flexibility: you can select which directories to backup, you can restore by simply copying the files back, you can implement the incremental-forever backup style (image backup requires copy-on-write compatible filesystem for this behavior).

Raw/hashed are just the way files are transferred from the client to the server, not how they are stored on the server. Raw means that the entire file is transferred, hashed means that the client computes the hash of the file, and only if it is different than the server hash, it is transferred. Hash is a great way to save bandwidth on slow connections.

The server is always hashing files on its side, that’s why you saw it in the log.

I’m afraid that is not how it would work. Backups are deleted during the “cleanup time window”, based on the min/max backups and quota settings. But you should understand that even if a second full backup is done, similar files would only be stored once on the server.

Full file backups can resume, so it’s not a problem. It would continue the next day.

It should be enough. In my installation, urbackup takes less than 100MB of RAM upon start, and grows slowly over time. I have set a cron job to restart the service every 5 days.

Hope this helps! :slight_smile:

2 Likes

You sir, are a godsend. Thank you for the detailed responses. Gives me enough confidence to continue down this road.

Also to the devs/mods, if these 3 points could be added in the manual, I believe it’ll help put a lot of minds at rest. In whatever I could read, I was unable to find any reference to all 3 of them. Thank you.

Raw/hashed are just the way files are transferred from the client to the server, not how they are stored on the server. Raw means that the entire file is transferred, hashed means that the client computes the hash of the file, and only if it is different than the server hash, it is transferred. Hash is a great way to save bandwidth on slow connections.

But you should understand that even if a second full backup is done, similar files would only be stored once on the server.

Full file backups can resume, so it’s not a problem. It would continue the next day.

Once again @MrBates , thank you for explaining everything in such detail.

1 Like