I back up my main PC to two servers: a local one and an offsite DR server. The client can talk to more than one server, but it treats the LAN and internet connection as the same server, so settings, paths and restores get mixed up between them. This comes up regularly here, e.g. Multiple Internet Backup Servers ( Multiple Internet Backup Servers ), multiple servers and one client with different folders ( multiple servers and one client with different folders ) (settings get overwritten by whichever server did the last backup) and How client settings works with multiple servers ( How client settings works with multiple servers ).
I’ve built a client that handles any number of independent servers and have been running it on my own PC for a few days. I’d like your opinion before turning it into PRs.
What it does:
- A server list on the client. Each server has its own name, identity, and “local (LAN)” and/or “internet” connection.
- Each server’s backup settings are kept separately (intervals, retention, patterns, image volumes, Windows components). A server pushing its settings only changes its own.
- Backup paths can be assigned to some servers only. A server’s default paths only go to that server.
- Logs record which server they belong to.
- Restore, “Access backups” and “Back up now” ask which server. The tray tooltip shows the last backup per server.
- New settings window: the server table, with the selected server’s settings, paths, components and logs below it.
Server changes are small and backward compatible. There are two new capability bits: the client can ask a server for its settings (“SEND SETTINGS”), and the server announces when it does no file backups. Stock servers and stock clients keep working; I’ve tested against both.
I’d send it in three PRs: the server list and per-server settings first, then per-server paths and logs, then the new settings window.
Questions:
- Is this something you’d want upstream, and on 2.6.x?
- The new settings window is built in code. Should I also update settings.fbp, or is code fine?