Borg (backup software)

Last updated

Borg
Developer(s) The Borg Collective
Initial releaseJune 11, 2015;9 years ago (2015-06-11)
Stable release(s)
1.4.0 [1] / 3 July 2024;5 months ago (3 July 2024)
Written in Python, C
Operating system Linux, FreeBSD, OS X
Size 86 KB
Type Backup
License BSD [4]
Website attic-backup.org [ dead link ]

Attic development began in 2010 and was accepted to Debian in August 2013. Attic was available from pip and notably part of Debian, Ubuntu, Arch and Slackware.

In 2015, Attic was forked as "Borg" to support a "more open, faster paced development", according to its developers. [5] Many issues in Attic have been fixed in this fork, but backward compatibility with the original program has been lost (a non-reversible upgrade process exists). Borg 1.0.0 was finally released on 5 March 2016.

As of April 2021, the attic website was removed. [6]

The next major Borg version, 2.0, in beta since 2022, will break backward compatibility again, requiring a non-reversible upgrade process. [7]

As of 2024, Borg is actively developed by many contributors, [8] while Attic is no longer available. Stable releases can be found in various Linux distributions such as Arch Linux, Debian, Fedora, OpenSUSE, Ubuntu, as well as in the ports collection of various BSD derivatives and through Homebrew for macOS. The project also offers pre-built binaries for Linux, FreeBSD, and macOS.

Design

Borg offers efficient, deduplicated, compressed and (optionally) encrypted and authenticated backups.

A backup includes metadata like owner/group, permissions, POSIX ACLs and Extended file attributes. It handles special files also - like hardlinks, symlinks, devices files, etc. Internally it represents the files in an archive as a stream of metadata, similar to tar and unlike tools such as git. The Borg project has created extensive documentation of the internal workings.

It uses a rolling hash to implement global data deduplication. Compression defaults to lz4, encryption is AES (via OpenSSL) authenticated by a HMAC.

Frontends

Since Borg is essentially a command line program, several GUI frontends for Borg exist. A few desktop app, Pika and Vorta for example and many web interfaces. See the community pages for an updated list. [9]

See also

Related Research Articles

<span class="mw-page-title-main">Blackbox</span> Free and open-source stacking window manager for the X Window System

Blackbox is a free and open-source stacking window manager for the X Window System.

phpLDAPadmin is a web app for administering Lightweight Directory Access Protocol (LDAP) servers. It's written in the PHP programming language, and is licensed under the GNU General Public License. The application is available in 14 languages and supports UTF-8 encoded directory strings.

Filesystem in Userspace (FUSE) is a software interface for Unix and Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. This is achieved by running file system code in user space while the FUSE module provides only a bridge to the actual kernel interfaces.

Technical variations of Linux distributions include support for different hardware devices and systems or software package configurations. Organizational differences may be motivated by historical reasons. Other criteria include security, including how quickly security upgrades are available; ease of package management; and number of packages available.

Squashfs is a compressed read-only file system for Linux. Squashfs compresses files, inodes and directories, and supports block sizes from 4 KiB up to 1 MiB for greater compression. Several compression algorithms are supported. Squashfs is also the name of free software, licensed under the GPL, for accessing Squashfs filesystems.

<span class="mw-page-title-main">PulseAudio</span> Sound server for Unix-like operating systems

PulseAudio is a network-capable sound server program distributed via the freedesktop.org project. It runs mainly on Linux, including Windows Subsystem for Linux on Microsoft Windows and Termux on Android; various BSD distributions such as FreeBSD, OpenBSD, and macOS; as well as Illumos distributions and the Solaris operating system. It serves as a middleware in between applications and hardware and handles raw PCM audio streams.

<span class="mw-page-title-main">Leafpad</span> Lightweight text editor

Leafpad is a free and open-source graphical text editor for Linux, Berkeley Software Distribution (BSD), and Maemo that is similar to the Microsoft Windows program Notepad. Created with the focus of being a lightweight text editor with minimal dependencies, it is designed to be simple-to-use and easy-to-compile.

<span class="mw-page-title-main">Zim (software)</span> Personal wiki software written in Python

Zim is a graphical text editor designed to maintain a collection of locally stored wiki-pages, a personal wiki. It works as a personal knowledge base and note-taking software application that operates on text files using markdown. Each wiki-page can contain things like text with simple formatting, links to other pages, attachments, and images. Additional plugins, such as an equation editor and spell-checker, are also available. The wiki-pages are stored in a folder structure in plain text files with wiki formatting. Zim can be used with the Getting Things Done method.

<span class="mw-page-title-main">OpenZFS</span> Open-source implementation of the ZFS file system

OpenZFS is an open-source implementation of the ZFS file system and volume manager initially developed by Sun Microsystems for the Solaris operating system, and is now maintained by the OpenZFS Project. Similar to the original ZFS, the implementation supports features like data compression, data deduplication, copy-on-write clones, snapshots, RAID-Z, and virtual devices that can create filesystems that span multiple disks.

X2Go is open source remote desktop software for Linux that uses a modified NX 3 protocol. X2Go gives remote access to a Linux system's graphical user interface. It can also be used to access Windows systems through a proxy.

<span class="mw-page-title-main">Zathura (document viewer)</span> Free software document viewer

Zathura is a free, plugin-based document viewer. Plugins are available for PDF, PostScript and DjVu. It was written to be lightweight and controlled with vi-like keybindings. Zathura's customizability makes it well-liked by many Linux users.

Bup is a Backup system written in Python. It uses several formats from Git but is capable of handling very large files like operating system images. It has block-based deduplication and optional par2-based error correction.

git-annex is a distributed file synchronization system written in Haskell. It aims to solve the problem of sharing and synchronizing collections of large files independent from a commercial service or even a central server.

Zstandard is a lossless data compression algorithm developed by Yann Collet at Facebook. Zstd is the corresponding reference implementation in C, released as open-source software on 31 August 2016.

<span class="mw-page-title-main">Budgie (desktop environment)</span> Desktop environment for Unix-like operating systems

Budgie is an independent, free and open-source desktop environment for Linux and other Unix-like operating systems that targets the desktop metaphor. Budgie is developed by the Buddies of Budgie organization, which is composed of a team of contributors from Linux distributions such as Fedora, Debian, and Arch Linux. Its design emphasizes simplicity, minimalism, and elegance, while providing the means to extend or customize the desktop in various ways. Unlike desktop environments like Cinnamon, Budgie does not have a reference platform, and all distributions that ship Budgie are recommended to set defaults that best fit their desired user experience. Budgie is also shipped as an edition of certain Linux distributions, such as Ubuntu Budgie.

<span class="mw-page-title-main">Lumina (desktop environment)</span> Desktop environment for X Window System

Lumina Desktop Environment, or simply Lumina, is a plugin-based desktop environment for Unix and Unix-like operating systems. It was designed specifically as a system interface for TrueOS and systems derived from Berkeley Software Distribution (BSD) in general, but it has been ported to various Linux distributions.

<span class="mw-page-title-main">GNOME SoundConverter</span>

GNOME SoundConverter is an unofficial GNOME-based free and open-source transcoder for digital audio files. It uses GStreamer for input and output files. It has multi threaded design and can also extract the audio from video files.

LibRaw is a free and open-source software library for reading raw files from digital cameras. It supports virtually all raw formats. It is based on the source code of dcraw, with modifications, and "is intended for embedding in raw converters, data analyzers, and other programs using raw files as the initial data."

<span class="mw-page-title-main">Foliate (software)</span> E-book reading application for Linux

Foliate is a free and open-source program for reading e-books in Linux. In English, foliate is an adjective meaning to be shaped like a leaf, from the Latin foliatus, meaning leafy.

<span class="mw-page-title-main">GNOME Terminator</span> Terminal emulator influenced by GNOME Terminal

GNOME Terminator is a free and open-source terminal emulator for Linux programmed in Python, licensed under GPL-2.0-only. The goal of the project is to produce a useful tool for arranging terminals. It is inspired by programs such as gnome-multi-term, QuadKonsole, etc. In that the main focus is arranging terminals in grids. Terminator packages exist for Arch, Debian/Ubuntu, Fedora, OpenSUSE, Gentoo, Snap, FreeBSD, OpenBSD. In 2017 took second place in voting at opensource.com, after Gnome Terminal.

References

[2]

[3]

[4]

  1. "Release 1.4.0".
  2. 1 2 "Releases - borgbackup/borg". www.smlnj.org. Retrieved 2023-01-28 via GitHub.
  3. 1 2 "LICENSE published in source repository". 2013-06-24. Retrieved 2023-01-29 via GitHub.
  4. 1 2 "LICENSE published in source repository". 2013-06-24. Retrieved 2023-01-29 via GitHub.
  5. "Discuss Goals · Issue #1 · borgbackup/Borg". GitHub .
  6. "Archive of attic-backup.org as of 2021-04-15". 2021-04-15. Archived from the original on 2021-04-15. Retrieved 2021-11-19.
  7. "Important notes 2.x — Borg - Deduplicating Archiver 2.0.0b9.dev56 documentation". borgbackup.readthedocs.io. Retrieved 2024-05-22.
  8. "The BorgBackup Open Source Project on Open Hub". 20 July 2024. Retrieved 20 July 2024.
  9. "Resources from the Borg Community" . Retrieved 2024-06-04.