Uploader seneste WWW-backup ugentligt til Nextcloud og rydder op i gamle filer
Definerer rclone remote (nextcloud:Backups), backup-mappe og logfil. Remote-navnet skal svare til det der er konfigureret med rclone config.
command -v rclone verificerer at binæren er tilgængelig. Mangler den, logges installationsvejledning og scriptet afslutter med exit 1.
find returnerer alle www_backup_*.tar.gz med timestamp-sortering via -printf '%T@' + sort -rn. Første resultat er den nyeste fil. Ingen fil → exit 1.
Kopierer kun den fundne fil til Nextcloud-mappen. --progress logges via tee. PIPESTATUS[0] sikrer at rclones faktiske exit-kode tjekkes, ikke tee's.
Kører rclone delete --dry-run først — dette sletter ingenting, men logger præcis hvilke filer der ville blive slettet. God til debugging.
Sletter alle www_backup_*.tar.gz-filer på Nextcloud der er ældre end 28 dage. Svarer til at beholde de 4 seneste ugentlige uploads.
| Variable | Beskrivelse |
|---|---|
| RCLONE_REMOTE | rclone destination (nextcloud:Backups) |
| BACKUP_DIR | Lokal mappe med backup-filer |
| LOG_FILE | Sti til logfil |
| --min-age 28d | Slet filer ældre end 28 dage på cloud |
Ugentlige uploads, 28 dages grænse → max 4 filer bevares:
Scriptet kører --dry-run lige inden den faktiske sletning. Dry-run sletter ingenting — den logger kun hvad der ville ske. Tjek logfilen for at bekræfte adfærd efter første kørsel.
Input Bruger filer oprettet af www-backup.sh
Cloud Uploader til samme Nextcloud som MariaDB-backup
Log Separat logfil: nextcloud_upload.log