Skip to content

goback

Take snapshots of your files and restore them.

Terminal window
goback [global flags] <command> [flags] [arguments]
Command Does
agent Run a machine’s scheduled backups from one config file
commit Back up, list, restore, delete and undelete commits
file List, show and restore single files and their versions
fix Rebuild the index from the objects in the store, for example on a new machine or after losing the index
gc Collect garbage: mark the objects that live commits and pins reach, then rewrite the archives that hold enough dead objects
index Add objects the store already holds to the index without a full rebuild
key Manage the store key that encrypts names and contents before upload, and the at-rest key
maintain Run the housekeeping that is due, for example from cron
mysql Back up and restore MySQL servers
object Read stored objects by ref
pin Keep commits, trees or files regardless of retention
postgres Back up and restore Postgres clusters
repair Rewrite each archive that holds corrupt objects, without the corrupt objects
scrub Hash every stored object again and report corruption; exit non-zero if any object fails
server Serve one store to many agents over gRPC
set Delete or undelete a set, or show and change its retention

Global flags go before the command.

Flag Description Environment Default
--json print results and errors as JSON on stdout; logs go to stderr as JSON lines GOBACK_JSON
--storage value the store: a directory, gcs://bucket, s3://bucket?endpoint=…, goback://key@host:port for a store server, or goback+insecure://key@host:port for a store server without TLS, such as one on this machine; required GOBACK_STORAGE
--index value index of a directory or bucket store: a directory for SQLite, or a postgres:// URL; required unless –storage is a store server GOBACK_INDEX
--set value, -s value backup set to work on
--agent-id value this machine’s id; goback records it in commits and sends it to a goback:// store server; the hostname by default
--store-key value store key file; goback encrypts names and contents with it before upload
--passphrase value passphrase of the escrowed store key kept in the store; used when –store-key is not set GOBACK_PASSPHRASE
--at-rest-key value key file that seals the archives of a local, gcs:// or s3:// store, made with goback key at-rest; without it, objects are stored as received
--cache-dir value directory for this machine’s caches of all stores; it holds blobs a restore can use instead of downloading, the stat and tree caches that let a backup skip unchanged files, and a bucket’s archive metadata; empty turns caching off GOBACK_CACHE_DIR
--metadata-cache-size value size limit of a bucket’s metadata cache under –cache-dir; above it, the least recently used commits, trees and files are evicted; 0 keeps them all 1GiB
--blob-cache-size value size to trim the blob cache under –cache-dir to after a backup or restore 4GB
--blob-cache-on-backup also add uploaded blobs to the blob cache, so a rollback to the last backup can restore from the cache
--help, -h show help