Guides
Full and incremental backups
Choose a destination explicitly. An incremental set keeps its complete chain on one provider.
glesha create docs ~/Documents --to b2
glesha run docs
echo "new-file" > ~/Documents/new_file.txt
glesha run docs --incremental
glesha history docs
glesha status docs
Removed paths require [y/N] confirmation. Use --assume-yes for automation. Earlier snapshots remain available.
Find and restore files
Browsing reads local metadata; it downloads no archive payloads.
glesha browse docs
glesha browse docs --path Documents --recursive
glesha restore docs --snapshot latest --into ~/recovered
The destination must be new. Sync metadata on another machine before restoring:
glesha list --remote --from b2
glesha catalog pull docs --from b2
glesha restore docs --into ~/recovered --from b2
Resume an interrupted run
glesha run docs
# After interruption, repeat run or retry.
glesha retry docs
Completed uploads are reused. Single-file runs retain the encrypted archive until publication succeeds; --keep-archive keeps it afterwards too.
Bounded disk space
glesha run docs --chunked --spool-max 128M
glesha run docs --chunked --spool-max 1.1G
glesha retry docs
glesha restore docs --into ~/recovered
Chunks are independent encrypted archives. Completed uploads survive interruption; changed sources prevent an unsafe resume. Chunked snapshots currently cannot be moved or retiered.
AWS storage costs
Choose a class for new archives, or change an existing snapshot. Compact metadata and explicit incrementals reduce stored data. Registry and catalog objects use Standard.
glesha create docs ~/Documents --to aws
glesha run docs --storage-class STANDARD_IA
glesha storage-class docs --snapshot latest --class DEEP_ARCHIVE
glesha status docs
Status estimates yearly storage for recorded copies. Requests, retrieval, egress and untracked versions cost extra. --refresh observes external lifecycle class changes.
glesha status docs --refresh
Restore from cold storage
Bulk retrieval is the lowest-cost default. Deep Archive recovery can take up to 48 hours. Faster Standard retrieval is opt-in.
glesha restore docs --into ~/recovered --request-retrieval
# Run again after AWS finishes retrieval.
glesha restore docs --into ~/recovered
# Opt into faster retrieval.
glesha restore docs --into ~/recovered --request-retrieval --retrieval standard
AWS expires the temporary readable copy automatically. The stored object stays in its original class.
Existing encb archives
Import catalogs the archive without replacing its remote payload.
glesha import docs --from b2 --key encb-20240101.tar.gz.gpg
glesha browse docs --recursive
glesha restore docs --into ~/recovered
For a cold object, request retrieval explicitly, then repeat import when it is readable.
glesha import old-docs --from aws --key encb-old.tar.gz.gpg \
--request-retrieval --retrieval bulk
Use import options for source mappings and baseline selection.
Standalone archives
glesha archive ~/Documents --compression xz
glesha decrypt backup.tar.xz.gpg
glesha extract backup.tar.xz.gpg --into ~/extracted
# Standard tools also read single-file full archives.
gpg --output backup.tar.xz --decrypt backup.tar.xz.gpg
tar -xJf backup.tar.xz