Introduce comprehensive recipes for Restic-based S3 backups. Covers installation, S3 repository configuration, automated backup job creation, and restoration of files.
96 lines
1.2 KiB
Markdown
96 lines
1.2 KiB
Markdown
# Restore Backup
|
|
|
|
This recipe restores files from a Restic repository.
|
|
|
|
## Load Environment
|
|
|
|
```bash
|
|
source <(sudo cat /etc/restic.env)
|
|
```
|
|
|
|
## List Snapshots
|
|
|
|
```bash
|
|
restic snapshots
|
|
```
|
|
|
|
Expected output:
|
|
|
|
```text
|
|
ID Time Host
|
|
----------------------------------------
|
|
xxxxxxxx YYYY-MM-DD HH:MM
|
|
```
|
|
|
|
## Restore Latest Snapshot
|
|
|
|
```bash
|
|
restic restore latest --target /tmp/restore
|
|
```
|
|
|
|
## Restore Specific Snapshot
|
|
|
|
Replace `<snapshot-id>` with the desired snapshot.
|
|
|
|
```bash
|
|
restic restore <snapshot-id> --target /tmp/restore
|
|
```
|
|
|
|
## Restore a Single Directory
|
|
|
|
```bash
|
|
restic restore latest --target /tmp/restore --include <PATH>
|
|
```
|
|
|
|
Replace:
|
|
|
|
- `<PATH>` with the folder path you want to restore (e.g. `/srv/samba`)
|
|
|
|
## Verify Restored Files
|
|
|
|
```bash
|
|
ls -la /tmp/restore
|
|
```
|
|
|
|
## Verify Repository Integrity
|
|
|
|
```bash
|
|
restic check
|
|
```
|
|
|
|
Expected output:
|
|
|
|
```text
|
|
no errors were found
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
### Repository not found
|
|
|
|
Verify:
|
|
|
|
```bash
|
|
echo $RESTIC_REPOSITORY
|
|
```
|
|
|
|
### Authentication failed
|
|
|
|
Verify the configured S3 credentials.
|
|
|
|
```bash
|
|
echo $AWS_ACCESS_KEY_ID
|
|
```
|
|
|
|
```bash
|
|
echo $AWS_SECRET_ACCESS_KEY
|
|
```
|
|
|
|
### Wrong password
|
|
|
|
Verify:
|
|
|
|
```bash
|
|
echo $RESTIC_PASSWORD
|
|
```
|