Use BorgMate

Repositories and SSH

Create new storage, open an existing Borg repository, or connect to a remote host over SSH. BorgMate verifies reachability before accepting connection changes.

Create a repository

Create initializes Borg data at the configured location. The destination must not already contain a Borg repository.

  1. Click Create on the Repositories page.
  2. Choose Borg version and Local, SSH, SMB Share, or—when using Borg 2—Borg URL.
  3. Set the location and encryption mode.
  4. Add at least one source folder.
  5. Save. BorgMate initializes and verifies the repository before adding it.

Open an existing repository

Open adds an existing Borg repository to BorgMate. It does not copy, reinitialize, or import its archive data.

  1. Click Open and select the Borg version that created the repository.
  2. Enter the local path, SSH connection, SMB share, or Borg 2 URL.
  3. If the repository is encrypted, enter the passphrase when prompted and choose whether to save it in the system keychain.
  4. Add source folders if you also want to create new backups from this computer.
  5. Save and wait for connection verification.
Source folders are BorgMate configuration.

Existing archives remain browsable even if you have not configured sources. Sources are needed only for new backups from this machine.

Connect over SSH

Confirm that SSH works outside BorgMate first. On Windows, run the command inside WSL.

ssh -i ~/.ssh/id_ed25519 borg@backup.example.net

Example configuration

FieldExampleMeaning
Repository NameHome NASName shown only in BorgMate.
Hostbackup.example.netSSH host name or IP address.
Port22SSH server port.
UserborgRemote SSH account.
Repository Path/srv/borg/laptopPath as seen by the remote host.
SSH Key Path~/.ssh/id_ed25519Private key used for authentication.
Borg Remote Path/usr/local/bin/borgOptional; set only when Borg is not on the remote PATH.
Use a private key, never a public .pub file.

BorgMate can prompt for an encrypted key's passphrase and save it in the OS keychain. It never writes repository or SSH-key passphrases to JSON configuration.

Store backups on a NAS over SMB

SSH requires Borg installed on the server, which most NAS systems do not offer out of the box. The SMB Share location needs only a regular network share: BorgMate mounts it automatically before every operation — including scheduled backups — and runs Borg against the mounted path. Borg does not need to be installed on the NAS.

Example configuration

FieldExampleMeaning
Servernas.localSMB server host name or IP address.
SharebackupsShare name as exported by the server.
UserbobAccount on the NAS; leave empty for guest access.
Repository Pathlaptop/repoOptional path inside the share; empty means the share root.

BorgMate prompts for the share password on first use and can save it in the OS keychain — required for scheduled backups: a scheduled run never shows a password prompt, so without a saved password it fails with a journal entry and a notification asking you to open BorgMate. The same applies to SSH key and repository passphrases. The share stays mounted after operations finish, matching the behavior of mounting it manually.

Platform notes.

macOS mounts under /Volumes via the system NetFS API — nothing extra to install. Windows mounts the share inside WSL, where Borg runs. Linux mounts through GVFS (a user-level mount, no root required): BorgMate talks to the GVFS daemons through the GLib/GIO libraries, so both GIO and the GVFS SMB backend must be present. Desktop distributions ship them by default; on minimal systems install gvfs with gvfs-backends (Debian/Ubuntu) or gvfs-smb (Fedora, Arch) — commands are in the installation notes.

Network filesystems are slower than SSH mode.

Over SMB, Borg reads and writes repository files across the network instead of talking to a remote Borg process. Backups of large repositories take longer, and an unstable connection can interrupt an operation. For servers where Borg can be installed, SSH mode remains the better option.

Borg 1 or Borg 2?

Borg 1Borg 2
Status in BorgMateRecommended for productionExperimental
Supported version1.4.xOnly 2.0.0b21
Binaryborgborg2
LocationsLocal, SSH fields, or SMB shareLocal, SSH fields, SMB share, or raw Borg URLs
EnablementAvailable by defaultEnable in Settings → Advanced

Borg 2 URL mode accepts supported upstream schemes such as ssh://, sftp://, file://, rest://, rclone:, s3:, and b2:. BorgMate rejects embedded passwords and secret tokens because repository URLs are stored in configuration and may appear in logs.

Repository editor fields

FieldUse it for
Repository NameThe display name in BorgMate.
Archive Name PrefixPrefix for newly generated archive names; defaults to the repository name when blank.
Server / Share / UserSMB share connection for NAS repositories; the password is stored only in the OS keychain.
Source FoldersFolders included in new archives from this computer.
Excluded Files and DirectoriesExact local paths omitted from new archives. Selecting a directory also excludes everything inside it.
ScheduleManual, every N hours, daily, weekly, or monthly backups.
PruneRetention counts and optional compact-after-prune behavior.
Encryption ModeBorg's repository encryption and authentication mode.
Rate LimitTransfer limit shown in the configured binary or decimal units and stored in Borg's native KiB/s; 0 means unlimited.
Skip iCloud placeholder filesmacOS only, enabled by default when supported: excludes iCloud files whose content is not downloaded to the Mac, so backups do not force macOS to download them. Requires Borg 1.4.5 or newer; the setting is disabled with older versions.

Duplicate and remove

Duplicate copies only the BorgMate repository configuration under a new name. It does not copy repository data. Remove deletes only the entry from BorgMate; it does not delete the Borg repository at its local or remote location.