123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- |screencast|
- What is BorgBackup?
- ===================
- BorgBackup (short: Borg) is a deduplicating backup program.
- Optionally, it supports compression and authenticated encryption.
- The main goal of Borg is to provide an efficient and secure way to backup data.
- The data deduplication technique used makes Borg suitable for daily backups
- since only changes are stored.
- The authenticated encryption technique makes it suitable for backups to not
- fully trusted targets.
- See the `installation manual`_ or, if you have already
- downloaded Borg, ``docs/installation.rst`` to get started with Borg.
- .. _installation manual: https://borgbackup.readthedocs.org/en/stable/installation.html
- Main features
- -------------
- **Space efficient storage**
- Deduplication based on content-defined chunking is used to reduce the number
- of bytes stored: each file is split into a number of variable length chunks
- and only chunks that have never been seen before are added to the repository.
- To deduplicate, all the chunks in the same repository are considered, no
- matter whether they come from different machines, from previous backups,
- from the same backup or even from the same single file.
- Compared to other deduplication approaches, this method does NOT depend on:
- * file/directory names staying the same: So you can move your stuff around
- without killing the deduplication, even between machines sharing a repo.
- * complete files or time stamps staying the same: If a big file changes a
- little, only a few new chunks need to be stored - this is great for VMs or
- raw disks.
- * The absolute position of a data chunk inside a file: Stuff may get shifted
- and will still be found by the deduplication algorithm.
- **Speed**
- * performance critical code (chunking, compression, encryption) is
- implemented in C/Cython
- * local caching of files/chunks index data
- * quick detection of unmodified files
- **Data encryption**
- All data can be protected using 256-bit AES encryption, data integrity and
- authenticity is verified using HMAC-SHA256. Data is encrypted clientside.
- **Compression**
- All data can be compressed by lz4 (super fast, low compression), zlib
- (medium speed and compression) or lzma (low speed, high compression).
- **Off-site backups**
- Borg can store data on any remote host accessible over SSH. If Borg is
- installed on the remote host, big performance gains can be achieved
- compared to using a network filesystem (sshfs, nfs, ...).
- **Backups mountable as filesystems**
- Backup archives are mountable as userspace filesystems for easy interactive
- backup examination and restores (e.g. by using a regular file manager).
- **Easy installation on multiple platforms**
- We offer single-file binaries that do not require installing anything -
- you can just run them on these platforms:
- * Linux
- * Mac OS X
- * FreeBSD
- * OpenBSD and NetBSD (no xattrs/ACLs support or binaries yet)
- * Cygwin (not supported, no binaries yet)
- **Free and Open Source Software**
- * security and functionality can be audited independently
- * licensed under the BSD (3-clause) license
- Easy to use
- -----------
- Initialize a new backup repository and create a backup archive::
- $ borg init /mnt/backup
- $ borg create /mnt/backup::Monday ~/Documents
- Now doing another backup, just to show off the great deduplication::
- $ borg create --stats -C zlib,6 /mnt/backup::Tuesday ~/Documents
- Archive name: Tuesday
- Archive fingerprint: 387a5e3f9b0e792e91c...
- Start time: Tue Mar 25 12:00:10 2014
- End time: Tue Mar 25 12:00:10 2014
- Duration: 0.08 seconds
- Number of files: 358
- Original size Compressed size Deduplicated size
- This archive: 57.16 MB 46.78 MB 151.67 kB <--- !
- All archives: 114.02 MB 93.46 MB 44.81 MB
- For a graphical frontend refer to our complementary project `BorgWeb <https://borgbackup.github.io/borgweb/>`_.
- Links
- =====
- * `Main Web Site <https://borgbackup.readthedocs.org/>`_
- * `Releases <https://github.com/borgbackup/borg/releases>`_
- * `PyPI packages <https://pypi.python.org/pypi/borgbackup>`_
- * `ChangeLog <https://github.com/borgbackup/borg/blob/master/CHANGES.rst>`_
- * `GitHub <https://github.com/borgbackup/borg>`_
- * `Issue Tracker <https://github.com/borgbackup/borg/issues>`_
- * `Bounties & Fundraisers <https://www.bountysource.com/teams/borgbackup>`_
- * `Mailing List <https://mail.python.org/mailman/listinfo/borgbackup>`_
- * `License <https://borgbackup.github.io/borgbackup/authors.html#license>`_
- Notes
- -----
- Borg is a fork of `Attic`_ and maintained by "`The Borg collective`_".
- .. _Attic: https://github.com/jborg/attic
- .. _The Borg collective: https://borgbackup.readthedocs.org/en/latest/authors.html
- Differences between Attic and Borg
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Here's a (incomplete) list of some major changes:
- * more open, faster paced development (see `issue #1 <https://github.com/borgbackup/borg/issues/1>`_)
- * lots of attic issues fixed (see `issue #5 <https://github.com/borgbackup/borg/issues/5>`_)
- * less chunk management overhead via --chunker-params option (less memory and disk usage)
- * faster remote cache resync (useful when backing up multiple machines into same repo)
- * compression: no, lz4, zlib or lzma compression, adjustable compression levels
- * repokey replaces problematic passphrase mode (you can't change the passphrase nor the pbkdf2 iteration count in "passphrase" mode)
- * simple sparse file support, great for virtual machine disk files
- * can read special files (e.g. block devices) or from stdin, write to stdout
- * mkdir-based locking is more compatible than attic's posix locking
- * uses fadvise to not spoil / blow up the fs cache
- * better error messages / exception handling
- * better logging, screen output, progress indication
- * tested on misc. Linux systems, 32 and 64bit, FreeBSD, OpenBSD, NetBSD, Mac OS X
- Please read the `ChangeLog`_ (or ``CHANGES.rst`` in the source distribution) for more
- information.
- BORG IS NOT COMPATIBLE WITH ORIGINAL ATTIC (but there is a one-way conversion).
- EXPECT THAT WE WILL BREAK COMPATIBILITY REPEATEDLY WHEN MAJOR RELEASE NUMBER
- CHANGES (like when going from 0.x.y to 1.0.0).
- NOT RELEASED DEVELOPMENT VERSIONS HAVE UNKNOWN COMPATIBILITY PROPERTIES.
- THIS IS SOFTWARE IN DEVELOPMENT, DECIDE YOURSELF WHETHER IT FITS YOUR NEEDS.
- Borg is distributed under a 3-clause BSD license, see `License`_
- for the complete license.
- |doc| |build| |coverage|
- .. |doc| image:: https://readthedocs.org/projects/borgbackup/badge/?version=stable
- :alt: Documentation
- :target: https://borgbackup.readthedocs.org/en/stable/
- .. |build| image:: https://travis-ci.org/borgbackup/borg.svg
- :alt: Build Status
- :target: https://travis-ci.org/borgbackup/borg
- .. |coverage| image:: https://codecov.io/github/borgbackup/borg/coverage.svg?branch=master
- :alt: Test Coverage
- :target: https://codecov.io/github/borgbackup/borg?branch=master
- .. |screencast| image:: https://asciinema.org/a/28691.png
- :alt: BorgBackup Installation and Basic Usage
- :target: https://asciinema.org/a/28691?autoplay=1&speed=2
|