bup(1) General Commands Manual bup(1)NAME
bup - Backup program using rolling checksums and git file formats
SYNOPSIS
bup [global options...] <command> [options...]
DESCRIPTION
bup is a program for making backups of your files using the git file format.
Unlike git(1) itself, bup is optimized for handling huge data sets including individual very large files (such a virtual machine images).
However, once a backup set is created, it can still be accessed using git tools.
The individual bup subcommands appear in their own man pages.
GLOBAL OPTIONS --version
print bup's version number. Equivalent to bup-version(1)-d, --bup-dir=BUP_DIR
use the given BUP_DIR parameter as the bup repository location, instead of reading it from the $BUP_DIR environment variable or
using the default ~/.bup location.
COMMONLY USED SUBCOMMANDS bup-fsck(1)
Check backup sets for damage and add redundancy information
bup-ftp(1)
Browse backup sets using an ftp-like client
bup-fuse(1)
Mount your backup sets as a filesystem
bup-help(1)
Print detailed help for the given command
bup-index(1)
Create or display the index of files to back up
bup-on(1)
Backup a remote machine to the local one
bup-restore(1)
Extract files from a backup set
bup-save(1)
Save files into a backup set (note: run "bup index" first)
bup-web(1)
Launch a web server to examine backup sets
RARELY USED SUBCOMMANDS bup-damage(1)
Deliberately destroy data
bup-drecurse(1)
Recursively list files in your filesystem
bup-init(1)
Initialize a bup repository
bup-join(1)
Retrieve a file backed up using bup-split(1)bup-ls(1)
Browse the files in your backup sets
bup-margin(1)
Determine how close your bup repository is to armageddon
bup-memtest(1)
Test bup memory usage statistics
bup-midx(1)
Index objects to speed up future backups
bup-newliner(1)
Make sure progress messages don't overlap with output
bup-random(1)
Generate a stream of random output
bup-server(1)
The server side of the bup client-server relationship
bup-split(1)
Split a single file into its own backup set
bup-tick(1)
Wait for up to one second.
bup-version(1)
Report the version number of your copy of bup.
SEE ALSO git(1) and the README file from the bup distribution.
The home of bup is at <http://github.com/apenwarr/bup/>.
AUTHORS
Avery Pennarun <apenwarr@gmail.com>.
Bup unknown-bup(1)
Check Out this Related Man Page
bup-midx(1) General Commands Manual bup-midx(1)NAME
bup-midx - create a multi-index (.midx) file from several .idx files
SYNOPSIS
bup midx [-o outfile] <-a|-f|idxnames...>
DESCRIPTION
bup midx creates a multi-index (.midx) file from one or more git pack index (.idx) files.
Note: you should no longer need to run this command by hand. It gets run automatically by bup-save(1) and similar commands.
OPTIONS -o, --output=filename.midx
use the given output filename for the .midx file. Default is auto-generated.
-a, --auto
automatically generate new .midx files for any .idx files where it would be appropriate.
-f, --force
force generation of a single new .midx file containing all your This will result in the fastest backup performance, but may take a
long time to run.
--dir=packdir
specify the directory containing the .idx/.midx files to work with. The default is $BUP_DIR/objects/pack and $BUP_DIR/indexcache/*.
--max-files
maximum number of .idx files to open at a time. You can use this if you have an especially small number of file descriptors avail-
able, so that midx can complete (though possibly non-optimally) even if it can't open all your .idx files at once. The default
value of this option should be fine for most people.
--check
validate a .midx file by ensuring that all objects in its contained .idx files exist inside the .midx. May be useful for debugging.
EXAMPLE
$ bup midx -a
Merging 21 indexes (2278559 objects).
Table size: 524288 (17 bits)
Reading indexes: 100.00% (2278559/2278559), done.
midx-b66d7c9afc4396187218f2936a87b865cf342672.midx
DISCUSSION
By default, bup uses git-formatted pack files, which consist of a pack file (containing objects) and an idx file (containing a sorted list
of object names and their offsets in the .pack file).
Normal idx files are convenient because it means you can use git(1) to access your backup datasets. However, idx files can get slow when
you have a lot of very large packs (which git typically doesn't have, but bup often does).
bup .midx files consist of a single sorted list of all the objects contained in all the .pack files it references. This list can be binary
searched in about log2(m) steps, where m is the total number of objects.
To further speed up the search, midx files also have a variable-sized fanout table that reduces the first n steps of the binary search.
With the help of this fanout table, bup can narrow down which page of the midx file a given object id would be in (if it exists) with a
single lookup. Thus, typical searches will only need to swap in two pages: one for the fanout table, and one for the object id.
midx files are most useful when creating new backups, since searching for a nonexistent object in the repository necessarily requires
searching through all the index files to ensure that it does not exist. (Searching for objects that do exist can be optimized; for exam-
ple, consecutive objects are often stored in the same pack, so we can search that one first using an MRU algorithm.)
SEE ALSO bup-save(1), bup-margin(1), bup-memtest(1)BUP
Part of the bup(1) suite.
AUTHORS
Avery Pennarun <apenwarr@gmail.com>.
Bup unknown-bup-midx(1)