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.
- Click Create on the Repositories page.
- Choose Borg version and Local, SSH, SMB Share, or—when using Borg 2—Borg URL.
- Set the location and encryption mode.
- Add at least one source folder.
- 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.
- Click Open and select the Borg version that created the repository.
- Enter the local path, SSH connection, SMB share, or Borg 2 URL.
- If the repository is encrypted, enter the passphrase when prompted and choose whether to save it in the system keychain.
- Add source folders if you also want to create new backups from this computer.
- Save and wait for connection verification.
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.netExample configuration
| Field | Example | Meaning |
|---|---|---|
| Repository Name | Home NAS | Name shown only in BorgMate. |
| Host | backup.example.net | SSH host name or IP address. |
| Port | 22 | SSH server port. |
| User | borg | Remote SSH account. |
| Repository Path | /srv/borg/laptop | Path as seen by the remote host. |
| SSH Key Path | ~/.ssh/id_ed25519 | Private key used for authentication. |
| Borg Remote Path | /usr/local/bin/borg | Optional; set only when Borg is not on the remote PATH. |
.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
| Field | Example | Meaning |
|---|---|---|
| Server | nas.local | SMB server host name or IP address. |
| Share | backups | Share name as exported by the server. |
| User | bob | Account on the NAS; leave empty for guest access. |
| Repository Path | laptop/repo | Optional 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.
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.
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 1 | Borg 2 | |
|---|---|---|
| Status in BorgMate | Recommended for production | Experimental |
| Supported version | 1.4.x | Only 2.0.0b21 |
| Binary | borg | borg2 |
| Locations | Local, SSH fields, or SMB share | Local, SSH fields, SMB share, or raw Borg URLs |
| Enablement | Available by default | Enable 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
| Field | Use it for |
|---|---|
| Repository Name | The display name in BorgMate. |
| Archive Name Prefix | Prefix for newly generated archive names; defaults to the repository name when blank. |
| Server / Share / User | SMB share connection for NAS repositories; the password is stored only in the OS keychain. |
| Source Folders | Folders included in new archives from this computer. |
| Excluded Files and Directories | Exact local paths omitted from new archives. Selecting a directory also excludes everything inside it. |
| Schedule | Manual, every N hours, daily, weekly, or monthly backups. |
| Prune | Retention counts and optional compact-after-prune behavior. |
| Encryption Mode | Borg's repository encryption and authentication mode. |
| Rate Limit | Transfer limit shown in the configured binary or decimal units and stored in Borg's native KiB/s; 0 means unlimited. |
| Skip iCloud placeholder files | macOS 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.