January 13, 2026Guides
How to Configure Automatic Backups on Linux Server
Step-by-step guide on setting up automated backup scripts using cron jobs for files and databases.

Regular backups are essential for protecting your data. This guide shows you how to set up automatic backups for your files and databases using shell scripts and cron jobs on your Hiddence server.
Creating Backup Script
Create a backup script for your files:
bash
sudo nano /usr/local/bin/backup.sh
#!/bin/bash
BACKUP_DIR="/backups"
SOURCE_DIR="/var/www"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/backup_$DATE.tar.gz $SOURCE_DIR
find $BACKUP_DIR -name "backup_*.tar.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/backup.shSetting Up Cron Job
Schedule automatic backups using cron:
bash
sudo crontab -e
# Add this line to run backup daily at 2 AM
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1Database Backup Script
Create script for MySQL database backups:
bash
sudo nano /usr/local/bin/db_backup.sh
#!/bin/bash
BACKUP_DIR="/backups/db"
DB_NAME="your_database"
DB_USER="root"
DB_PASS="your_password"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
mysqldump -u $DB_USER -p$DB_PASS $DB_NAME > $BACKUP_DIR/db_backup_$DATE.sql
gzip $BACKUP_DIR/db_backup_$DATE.sql
find $BACKUP_DIR -name "db_backup_*.sql.gz" -mtime +7 -delete
sudo chmod +x /usr/local/bin/db_backup.shRemote Backup Storage
Copy backups to remote server using rsync or SCP:
bash
#!/bin/bash
BACKUP_DIR="/backups"
REMOTE_HOST="backup-server.com"
REMOTE_USER="backup"
REMOTE_DIR="/backups"
rsync -avz -e ssh $BACKUP_DIR/ $REMOTE_USER@$REMOTE_HOST:$REMOTE_DIR/Backup Retention Policy
Configure retention to keep backups for specific period:
bash
# Keep daily backups for 7 days
find /backups -name "backup_*.tar.gz" -mtime +7 -delete
# Keep weekly backups for 4 weeks
find /backups/weekly -name "backup_*.tar.gz" -mtime +28 -delete
# Keep monthly backups for 12 months
find /backups/monthly -name "backup_*.tar.gz" -mtime +365 -deleteBackup Best Practices
- Test backup restoration regularly
- Store backups in multiple locations
- Encrypt sensitive backup data
- Monitor backup logs for errors
- Document your backup procedures
- Set up alerts for backup failures