github marcpope/borgbackupserver v2.95.1

latest release: v2.95.2
2 hours ago

2.95.1 replaces 2.95.0, which was withdrawn within the hour. Since 2.94.1 the server could not read the agent version it ships: the constant sits in the agent script's header, and the reader only looked at the first 50 lines. The agents card on the Updates page disappeared, the client page stopped offering agent updates, and agent updates were never queued after a server update, which left agents on 2.93.9 through two releases. Fixed in this release. Once your server is on 2.95.1, the scheduler queues the update for every outdated, online agent within a minute (with Auto-update agents on, the default), and the Updates page shows the agents card again.


New: backups from filesystem snapshots (#479)

A backup plan has a new option, Back up from a snapshot. With it on, the agent takes a snapshot of every volume that holds one of the plan's directories, backs up from the snapshot, and removes it when the job ends. Files that change while borg is running no longer land half-written in the archive, which matters for databases, mail spools, VM images and anything else that is written to constantly.

How it works:

  • Supported volumes: LVM logical volumes (the volume group needs free space: 10% of the volume, at least 512 MB), btrfs subvolumes, and ZFS datasets. Linux only; the agent must run as root, which the default install does.
  • Where the option appears. The agent reports what its host can snapshot. The checkbox in the plan editor is enabled only on a client where it can work, and the tooltip says why when it cannot. Clients that can snapshot get a "Snapshots: LVM" badge in their header. Agents older than 2.95.0 have not reported yet, so the option waits until the agent updates.
  • Mixed hosts. A volume the agent cannot snapshot, such as a plain ext4 partition or an LVM group with no free space, is backed up live, read-only, so the archive is still complete. The job's activity log says which volumes were live and which came from a snapshot.
  • Archives look the same. Paths are stored as they would be from a live backup, so the catalog, file browser, and restores need nothing new. Existing plans can turn the option on without starting a new repository.
  • Failure is loud. A snapshot that cannot be taken fails the job instead of quietly backing up live. Snapshots are removed when the job finishes, and the agent clears anything a crashed job left behind when it starts.

Archive page: step through recovery points (#475)

The archive page has Newer and Older buttons with the archive's position in the list, "3 / 16", so the File Changes of consecutive archives can be reviewed without going back to the list each time. The left and right arrow keys do the same.

Fixes

  • Updating in a container that refuses executable memory failed at the Composer step with Allocation of JIT memory failed and left the install half-updated. The updater and installer now run Composer with PCRE JIT off for that one process, and a Composer failure no longer stops the migrations that follow (#480).
  • Plan and repository card menus opened underneath the "…" buttons of the cards after them (#463).
  • The back arrow on a job page returns to the page that linked there, such as a client's Repos tab, instead of always the queue (#469).
  • Report email showed a literal   in the data-added figure.
  • Client page with an unknown ?tab= value showed an empty pane; it now falls back to Status.

API

  • snapshot (bool) on plans: create, update, list, and client detail.
  • snapshot_capable on GET /api/v1/clients and GET /api/v1/clients/{id}, with the full snapshot_support report on the detail. Turning snapshot on for a client that cannot take one answers 422 with the reason.

Agent 2.95.0. Agents update themselves once the server is on this release.

BBS Manager for iOS is on the App Store; connect it under Settings → Push Service.

Don't miss a new borgbackupserver release

NewReleases is sending notifications on new releases.