auberge backup restore
Restore application data from a backup. Alias: auberge b r.
auberge backup restore [OPTIONS] [BACKUP_ID]BACKUP_ID is a timestamp (YYYY-MM-DD_HH-MM-SS) or latest. Omit to be prompted (newest first).
Arguments
Section titled “Arguments”| Argument | Description |
|---|---|
BACKUP_ID |
Timestamp or latest (omit to be prompted) |
Options
Section titled “Options”| Option | Description | Default |
|---|---|---|
-H, --host HOST |
Target host | Interactive |
-F, --from-host HOST |
Source host (cross-host migration) | Same as target |
-a, --apps APPS |
Apps to restore (comma-separated) | Prompt (pick from apps in the backup); required when non-interactive |
-k, --ssh-key PATH |
SSH private key | ~/.ssh/identities/{host}/{user} |
-n, --dry-run |
Preview without restoring | false |
-y, --yes |
Skip confirmation prompt | false |
--skip-playbook-unsafe |
Skip Ansible playbook run after restore | false |
Examples
Section titled “Examples”auberge backup restore latest --host myserver # prompts to pick appsauberge backup restore latest --host myserver --apps baikal,freshrssauberge backup restore 2024-01-27_14-30-00 --host myserverauberge backup restore latest --host newserver --from-host oldserver # migrationauberge backup restore latest --host myserver --dry-runWhat gets restored
Section titled “What gets restored”Every path the backup directory holds, including optional ones. backup create --include-music stages /srv/music; restoring that backup pushes it back. There is no --include-music on restore — the backup is the record of what was collected, and a restore never drops part of it.
rsync --delete applies to each restored path: files on the target that the backup lacks are removed. --dry-run lists the paths per app before anything is overwritten.
Gotchas
Section titled “Gotchas”- SSH/service failures: verify key and run
auberge ansible runto install missing apps first. - Insufficient disk: free space or exclude large apps with
--apps. - Services fail after restore: check ownership with
ls -la /var/lib/<app>, then rerun playbooks.