Commit Graph

2 Commits

Author SHA1 Message Date
jgitta 2267a34b47 Fix: Use disk staging directory instead of tmpfs /tmp for backups
Problem:
- /tmp is a tmpfs mount with only 3.9GB space
- Backing up 1.4TB Nextcloud files requires space for tar and zstd compression
- Both mysqldump and tar were failing with 'No space left on device'

Solution:
- Changed TEMP_DIR from /tmp to /mnt/nextcloud-data/.backup-staging
- /mnt/nextcloud-data has 487GB free space (sufficient for compressed backups)
- Staging directory is automatically cleaned up after successful upload to B2

Impact:
- Backup process now completes successfully for full 1.4TB Nextcloud datasets
- No changes to B2 credentials or configuration
- Backward compatible with existing backup configurations
2026-04-25 19:13:19 -05:00
jgitta 2625cf36d2 Add: Nextcloud Backblaze B2 backup solution - automated daily backups
- Complete backup script for native Nextcloud (MySQL + files)
- Systemd service and timer for daily automated backups at 2 AM
- Backblaze B2 integration with secure credential storage
- Incremental backup support with 30-day retention
- zstd compression for 40-70% storage reduction
- Comprehensive documentation and deployment guides
- Successfully tested with first backup: 203MB DB + 1.3GB files
- Cost-optimized: ~/bin/bash.01-0.02/month for 1.5GB data

Deployment Details:
- Installed B2 CLI via pipx
- Created backup directories at /opt/nextcloud-backup/
- Configured systemd timer for daily execution at 2 AM
- First backup verified in B2 bucket: jg-nextcloud
- Automated scheduling enabled and tested

Documentation includes:
- Deployment report with complete setup details
- Quick start guide for future deployments
- Comprehensive technical reference
- Troubleshooting procedures
- File manifest and index
2026-04-25 18:00:07 -05:00