Instalasi, Operasi dan Strategi Rapid Jurnal Backup dengan Restic

From OnnoWiki
Jump to navigation Jump to search

Berikut adalah panduan instalasi, setup, dan strategi rapid backup dengan interval jurnal 1–2 menit menggunakan Restic di Ubuntu 24.04. Restic adalah software backup yang cepat, aman, dan open-source, ideal untuk penggunaan di server atau workstation.

Instalasi Restic di Ubuntu 24.04

sudo apt update
sudo apt install restic -y

Verifikasi versi:

restic version

Setup Awal: Direktori, Repo & Password

a. Buat direktori backup dan repo

mkdir -p ~/backups/restic-repo

b. Set password repo

Buat file `restic-password.txt`:

echo "ganti_dengan_password_aman" > ~/.restic-password.txt
chmod 600 ~/.restic-password.txt

c. Inisialisasi repository

restic -r ~/backups/restic-repo --password-file ~/.restic-password.txt init

Strategi Rapid Backup (Jurnal 1–2 Menit Sekali)

a. Buat file script: `rapid-backup.sh`

#!/bin/bash

# Folder yang ingin dibackup
SOURCE="/home/namapengguna/Documents"

# Lokasi repo Restic
REPO="/home/namapengguna/backups/restic-repo"

# File password
PASS="/home/namapengguna/.restic-password.txt"

# Timestamp
NOW=$(date +"%Y-%m-%d_%H-%M-%S")

# Backup hanya jika file berubah (opsional: --exclude atau --one-file-system bisa ditambah)
restic -r "$REPO" --password-file "$PASS" backup "$SOURCE" --tag "rapid-backup" --host "$(hostname)" --verbose

# Tambahkan snapshot info ke log
echo "Backup done at $NOW" >> ~/backups/backup-log.txt

> Jangan lupa `chmod +x rapid-backup.sh`

Setup Cron atau Systemd Timer untuk 1-2 Menit Sekali

Opsi A: Cronjob (setiap 2 menit)

Edit dengan:

crontab -e

Tambahkan:

*/2 * * * * /home/namapengguna/rapid-backup.sh

Opsi B: systemd timer (lebih stabil dan modern)

Buat service unit `/etc/systemd/system/restic-rapid-backup.service`

[Unit]
Description=Rapid Restic Backup

[Service]
ExecStart=/home/namapengguna/rapid-backup.sh
Nice=19
IOSchedulingClass=best-effort

Buat timer `/etc/systemd/system/restic-rapid-backup.timer`

[Unit]
Description=Run Rapid Restic Backup every 2 minutes

[Timer]
OnBootSec=2min
OnUnitActiveSec=2min
Persistent=true 

[Install]
WantedBy=timers.target

Aktifkan dan mulai:

sudo systemctl daemon-reexec
sudo systemctl enable --now restic-rapid-backup.timer

Opsional: Cleanup & Pruning (Misalnya 1x sehari)

Tambahkan ke cron harian:

restic -r ~/backups/restic-repo --password-file ~/.restic-password.txt forget --keep-last 100 --prune

Tips Tambahan

  • Gunakan `--exclude` untuk mengecualikan folder besar atau temporary.
  • Gunakan remote storage (B2, SFTP, rclone) kalau butuh backup offsite.
  • Tambahkan email alert/log jika backup gagal (pakai `mail` atau `sendmail`).

Pranala Menarik