bup-restore(1) General Commands Manual bup-restore(1) (NAME) bup-restore - bup (SYNOPSIS) bup restore [-r host:[path]] [--outdir=outdir] [--exclude-rx pattern] [--exclude-rx-from filename] [-v] [-q] (DESCRIPTION) bup restore ( bup-save(1)) . (paths) : /branch/revision/some/where. : branch --name (-n) bup save . revision (revision) . latest . bup ls /branch . some/where ( stripping/grafting) . etc/passwd. some/where bup restore . some/where ( path/to/dir/) bup restore ( --outdir) . some/where . some/where `/.` ( path/to/dir/.) bup restore path/to/dir (metadata) dir ( --outdir) . <<>> . some/where "latest" bup restore /foo/latest bup "latest" "latest" . bup restore . bup tar/rsync . uid gid (root) uid gid . --numeric-ids ( chroot ) uid gid 0 . uid/gid / . bup . <<>> (synthetic) bup save --graft / (world) umask 022 . ( bup get --repair bup DESIGN ) umask 077 . --map-user --map-group --map-uid --map-gid --map-uid --map-gid . --numeric-ids --map-user foo= --map-group foo= . (Hardlinks) . (index) (save) . bup ( ). . . <<>> . (OPTIONS) -r, --remote=[user@]host:[path], --remote=URL SSH. REMOTE OPTIONS bup(1) . -C, --outdir=outdir outdir . --numeric-ids ( ) . --exclude-rx=pattern pattern (Regular Expression) (http://docs.python.org/library/re.html). (anchoring) "x/y" "ox/yard" "box/yards" . /tmp "^/tmp/." . ( ) ( `^/` ) . "restore ... /foo/latest/etc/" `^/passwd$` passwd `/foo/latest/etc/passwd` . : o /foo$ - foo o /foo/$ - foo o /foo/. - foo o ^/tmp/. - tmp --exclude-rx-from=filename -exclude-rx filename ( ). . --sparse (sparse) . << >> . --map-user old=new old () new . "" new . "-map-user foo=" uid "foo" "-map-user foo=..." . <<>> . --map-group old=new old () new . "" new . "-map-group foo=" gid "foo" "-map-group foo=..." . <<>> . --map-uid old=new uid (old) new "-map-uid old=..." . uid . <<>> . --map-gid old=new gid (old) new "-map-gid old=..." . gid . <<>> . -v, --verbose . . -q, --quiet . stderr tty . (EXAMPLES) : $ bup index -u /etc $ bup save -n mybackup /etc/passwd /etc/profile : $ bup restore /mybackup/latest/etc/passwd Restoring: 1, done. $ ls -l passwd -rw-r--r-- 1 apenwarr apenwarr 1478 2010-09-08 03:06 passwd etc test ( ): $ bup restore -C test /mybackup/latest/etc Restoring: 3, done. $ find test test test/etc test/etc/passwd test/etc/profile etc test ( ): $ bup restore -C test /mybackup/latest/etc/ Restoring: 2, done. $ find test test test/passwd test/profile etc etc test ( "/." ): $ bup restore -C test /mybackup/latest/etc/. Restoring: 2, done. # At this point test and etc's metadata will match. $ find test test test/passwd test/profile : # mkdir --mode 0700 restore-tmp # bup restore -C restore-tmp /somebackup/latest/foo Restoring: 42, done. # mv restore-tmp/foo somewhere # rmdir restore-tmp : # ls -l /original/y -rw-r----- 1 foo baz 3610 Nov 4 11:31 y # bup restore -C dest --map-user foo=bar --map-group baz=bax /x/latest/y Restoring: 42, done. # ls -l dest/y -rw-r----- 1 bar bax 3610 Nov 4 11:31 y uid uid . bup uid : # ls -l /original/y -rw-r----- 1 foo baz 3610 Nov 4 11:31 y # ls -ln /original/y -rw-r----- 1 1000 1007 3610 Nov 4 11:31 y # bup restore -C dest --map-user foo= --map-uid 1000=1042 /x/latest/y Restoring: 97, done. # ls -ln dest/y -rw-r----- 1 1042 1007 3610 Nov 4 11:31 y / --numeric-ids: # bup restore -C dest --numeric-ids --map-uid 1000=1042 /x/latest/y Restoring: 97, done. (SEE ALSO) bup-save(1), bup-ftp(1), bup-fuse(1), bup-web(1) BUP (BUP) bup(1). (AUTHORS) Avery Pennarun . Bup 0.34+ 2026-09-01 bup-restore(1)