backup-solution/README.md

1.1 KiB

Backup Solution

This is currently WIP btw.

  • Install restic > 1.14
  • Create new repository (where backups are stored)

Create a new ssh keypair, in this example I'm naming the keyfile "keyfile"

ssh-keygen -f ~/.ssh/keyfile

Share the key it with the remote host

ssh-copy-id -i ~/.ssh/keyfile.pub admin@192.168.1.20

Create a ~/.ssh/config file and name it. In this case we will name it "remote"

# ~/.ssh/config
Host remote
	Hostname 192.168.1.20 # example
	User admin
	IdentityFile ~/.ssh/keyfile
# This could also be a local folder (/to/whereever/) but that's dumb.
export RESTIC_REPOSITORY="sftp:remote:/srv/repo"
restic init
# It will ask you for a password, ofc make this good and don't forget it.

Backup some files

# Set $TMPDIR to somewhere on a tmpfs filesystem to reduce drive wear
# Optionally add the `--tag foo` flag to tag backup snapshots
restic backup /ImportantDocuments --no-scan --compression max 
  • Restore from a snapshot:
restic snapshots
# Copy the desired snapshot id (short or long)
restic restore <id> --target <target folder>