Restic Command Generator
Generate restic CLI commands to restore a Backrest or plain restic repository: a whole snapshot, only some files, or a browsable mount.
Generator only: nothing runs here and nothing you type leaves your browser. Describe your repository, pick what you need to recover, and copy the shell snippet.
Repository
S3 compatible (Backblaze B2, MinIO, Wasabi, AWS…)
-r flag on every command
Prompt for it in the shell (read -rs, stays out of the history)
Prompt for the secret in the shell
No secret is ever put in the generated command: the prompt options read them into your shell with "read -rs" so they stay out of your history.
What do you want to do?
restore — write files from a snapshot back to disk
Snapshot selection
Backrest tags the snapshots it creates with "plan:" and "created-by:" followed by the plan and the instance IDs. Tags inside a single --tag are ANDed while repeated --tag flags are ORed, so the plan and the instance stay in one flag and each extra tag gets its own.
Restore options
restic default (always)
Global options
Generated command
restore recreates the full path of every file under the target directory, so /etc/hosts ends up in the etc/hosts subfolder of the target.
Recovery walkthrough
The usual sequence when the repository is all that is left, built from the settings above.
1. List the snapshots of the repository
2. Find which snapshot holds the file you need
3. List the files of the chosen snapshot
4. Restore only the files you need
5. Or browse the repository and copy files out by hand
Backrest cheat sheet
| Item | Default path or format (Docker image between parentheses) |
|---|---|
| Config file, holding the repository URI, its password and the backend environment variables | $BACKREST_CONFIG — ~/.config/backrest/config.json (/config/config.json) |
| Data directory | $BACKREST_DATA — ~/.local/share/backrest (/data) |
| Restic binary downloaded by Backrest | $BACKREST_DATA/restic-<version> |
| Tag identifying the plan | plan:<plan id> |
| Tag identifying the instance | created-by:<instance id> |
A Backrest repository is a plain restic repository: if the web UI is gone, read the URI and the password out of config.json and drive it with the restic binary Backrest already downloaded.