1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2024-12-24 16:55:36 +00:00

Document repository file system requirements

#2080
This commit is contained in:
Steve Groesz 2017-04-05 20:29:04 -05:00 committed by Thomas Waldmann
parent bc3bc1a79c
commit 605f281b37

View file

@ -20,6 +20,37 @@ There are different ways to install |project_name|:
have the latest code or use revision control (each release is
tagged).
.. _installation-requirements:
Pre-Installation Considerations
-------------------------------
Repository File System
~~~~~~~~~~~~~~~~~~~~~~
:ref:data-structures-and-file-formats
- |project_name| stores data only 3 directory levels deep and uses short file and
directory names.
- |project_name| requires read and write permissions on the repository file system.
- |project_name| stores backup metadata and data into so-called segment files. The
target size of these files and also the count of these files per directory is set
in the :ref:config-file.
- |project_name| uses a generic and very portable mkdir-based `locking<https://en.wikipedia.org/wiki/File_locking#Lock_files`_ mechanism.
POSIX locks, NFS locks, windows file locks, lockf(), flock() and hardlinks are
**not** used.
- Hardlinks are only required when performing an in-place upgrade of an Attic
repository.
- A journaling file system is strongly recommended. More information can be
found in :ref:`file-systems`.
- |project_name| requires the following file system operations:
- create, open, read, write, seek, close, rename, delete
- link - when upgrading an Attic repo in-place
- listdir, stat
- posix_fadvise - to not flood the operating system's cache
- sync on files and directories to ensure data is written onto storage media
:ref:data-structures-and-file-formats contains additional information about how |project_name|
manages data.
.. _distribution-package:
Distribution Package