Major changes with server 2.3.x beta
- Use reflinks on file systems that do not have snapshot/subvolume support (XFS and ReFS v3)
- Run backup storage checks asynchronously from status screen
- Allow client renames in some cases
- Preparations for special Hyper-V client with disk images instead of volume images
- Allow client to restore its own image backups (image restore with normal client)
Changes with server 2.3.6
- Disabled assertions
- Retry updating client settings infinitely on failure while the client is online
- Make client update download more robust
- Set e flag in popen on Linux to open the pipe with O_CLOEXEC
Changes with server 2.3.5 beta
- Linux build changes: Option to build with non-embedded sqlite3, lua and lmdb
- Fix a missed crypto++ byte occurrence
- Updated crypto++, lua, sqlite3 to newest version
- Changed embedded crypto++ build to use unofficial configure recursively
- Update filesystem configuration after backupfolder is changed
- Fix C++ ODR build issue
- Restore selected directory instead of only directory contents when starting restore via command line
- Exponentially backed off reauthentication if channel has error
- Option to send alerts regularly
- Do not use O_NOATIME/FILE_FLAG_BACKUP_SEMANTICS on server to open files
- Add tclap to about page and license files
- Release session when doing access dir checks
- Fix cleanup of hyper-v images
- Set uid to 0 for zfs operations so maybe ZFS works with non-root users on Linux now
Changes with server 2.3.4 beta
- Reflink support with ReFS v3 (Windows Server 2016 and 2019)
- Raw image support on Windows (if reflinks are available, see above)
Changes with server 2.3.3 beta
- Fix incremental chain handling when deleting images
Changes with server 2.3.2 beta
- Load all lua modules per default
- Do not strip debug information (line numbers) when compiling lua script
- Comment to disable lua code compilation
Changes with server 2.3.1 beta
- Functionality to log file changes in incremental image backups
- Seek to correct position in source file before sending when resuming image restore
- Return error correctly when server runs out of space during file backup in a corner case
- Only use CURLOPT_EXPECT_100_TIMEOUT_MS if curl version is high enough
- Fix Crypto++ 6.0 byte compile issue
- Prevent cleanup from deleting incremental image chains that cause number of incremental images to fall below min_incr_image (in testing)
Changes with server 2.3.0 beta
- Improve space accounting if reflinking is replaced by copying
- Alert/status fixes
- Set json content type when returning json in web interface
- Stop parallel hash download thread in all cases
- Parallel file hashing fixes
- Add Pulseway alert script (mainly as an example)
- Improve out of space error handling
- Log login attempts where username does not exist as failed login attempts
- Fix settings threading issue
- Log failed client authentications into auth log (Linux)
Changes with client 2.3.3
- Build without assertions
- Fix version check during update and disable it for now (client update might not work from pervious 2.3.x client versions)
- Set e flag on Linux in popen to open the pipe with O_CLOEXEC
Changes with client 2.3.2 beta
- Set FSCTL_ALLOW_EXTENDED_DASD_IO on volume handle to be able to read last sector
- Clarify keep option in command line client
- Embed version into update file and check if it is actually larger on update
- Don’t use RequestUserAttention on Linux because it segfaults
Changes with client 2.3.1 beta
- Fix permission translation for Linux and macOS
Changes with client 2.3.0 beta
- Retry llistxattr with a multiple of the required memory if it fails
- Cooperate CBT with multiple running clients
- Don’t show restore components option if components never have been backed up
- Fix change indicator of open files such that the symbolic link detection works for them
- Read USNs of symbolic links and directories on Windows instead of last modified time to detect directory metadata changes
- Fix file permission translation on Linux/MacOS
- Fix Crypto++ 6.0 byte compile issue
- Handle reparse tag IO_REPARSE_TAG_APPEXECLINK on Windows
- Backup VeraCrypt boot loader
- Improve log message if indexing is interrupted
Changes with Restore CD 2.2.2 beta
- Fix GPT restore with restore disk being (slightly) smaller
Changes with Restore CD 2.2.1 beta
- Restore whole disks (created with Hyper-V client)
- Continuously track image download progress for resume
- Restore VeraCrypt boot loader
Changes with Restore CD 2.2.0 beta
- Bugfix: In some cases the restore did not continue at the most recent position when it had to reconnect to the server
- Build with default Debian stretch live-build and not the accumulation of patches, fixes and manual changes I had beforehand
Upgrade process
As always: Replace the executables (via the installers) and the database of the server/client will be updated on first running it.
Place the files from the update directory into C:\Program Files\UrBackupServer\urbackup or /var/urbackup to auto-update clients. Disable Download client from update server in the server settings to prevent the server from downloading the current version.
On Linux e.g. with this update script: https://github.com/ptempier/get_urbackupclient/blob/master/updateclient.sh
Downgrade process (server)
Stop the UrBackup server, restore C:\Program Files\UrBackupServer\urbackup
or /var/urbackup
from a backup before upgrade and then install the previous version over the beta release.