Nextcloud
How to backup Nextcloud to S3
Rclone
1. Configure S3 Remote
Install rclone and run:
rclone config
Follow the prompts to create a new remote (name it mys3) using the s3 provider.
2. Create a Backup Script
A proper backup requires a database dump before the transfer. Create a script (backup.sh):
# 1. Put Nextcloud in maintenance mode
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
# 2. Dump the database (example for MariaDB)
mysqldump --single-transaction -u [user] -p[password] [db_name] > /tmp/nextcloud-db.sql
# 3. Sync to S3 (Data + Config + DB Dump)
rclone sync /var/www/nextcloud/data mys3:my-bucket/data/
rclone sync /var/www/nextcloud/config mys3:my-bucket/config/
rclone copy /tmp/nextcloud-db.sql mys3:my-bucket/database/
# 4. Turn off maintenance mode
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off