System Backup
Comprehensive system backup and restoration tool with verification and cloud sync capabilities.
System Backup Tool
A comprehensive system backup tool for Linux systems that handles configuration and data backups, verification, and restoration.
Features
Backup Management
- Configuration backup
- Data backup
- Automated backup rotation
- Backup verification
- Restore capabilities
- Backup cleanup
Backup Types
Configuration Backup
- System configuration files
- Service configurations
- Application settings
- Custom configurations
Data Backup
- Web application data
- Database files
- Log files
- Custom data directories
Backup Operations
- Backup creation
- Backup verification
- Backup restoration
- Backup cleanup
- Retention management
Installation
- Download the script from the Lambda Softworks Customer Portal:
- Log in to your Lambda Softworks Customer Portal account
- Navigate to the Files section
- Download the system-backup.sh script
Usage
Basic Commands
- Backup system configuration:
sudo ./system-backup.sh --backup-config
- Backup system data:
sudo ./system-backup.sh --backup-data
- Verify backup:
sudo ./system-backup.sh --verify /var/backups/lambdasoftworks/config/config_20240101.tar.gz
- Restore backup:
sudo ./system-backup.sh --restore /var/backups/lambdasoftworks/data/data_20240101.tar.gz
- Clean up old backups:
sudo ./system-backup.sh --cleanup
Command-Line Options
--backup-config
: Backup system configuration--backup-data
: Backup system data--verify FILE
: Verify backup file integrity--restore FILE [PATH]
: Restore backup to specified path (default: /)--cleanup
: Clean up old backups--config FILE
: Use custom configuration file--help
: Show help message
Configuration
Configuration File
Location: /etc/lambdasoftworks/system-backup.yml
Example configuration:
# Backup settings BACKUP_RETENTION_DAYS: 30 BACKUP_PATHS: config: - /etc/lambdasoftworks/ - /etc/nginx/ - /etc/apache2/ - /etc/mysql/ - /etc/postgresql/ data: - /var/www/ - /var/lib/mysql/ - /var/lib/postgresql/ - /var/log/lambdasoftworks/ # Backup verification VERIFY_BACKUPS: true VERIFY_TIMEOUT: 300 # seconds # Backup compression COMPRESSION_LEVEL: 9
Logs and Data Storage
Log Files
- Main log:
/var/log/lambdasoftworks/system-backup.log
- Backup logs:
/var/log/lambdasoftworks/backup.log
- Verification logs:
/var/log/lambdasoftworks/verify.log
Backup Locations
- Configuration backups:
/var/backups/lambdasoftworks/config/
- Data backups:
/var/backups/lambdasoftworks/data/
Temporary Files
- Temporary directory:
/tmp/lambdasoftworks/
Examples
Configuration Backup
# Create configuration backup sudo ./system-backup.sh --backup-config # Verify the backup sudo ./system-backup.sh --verify /var/backups/lambdasoftworks/config/config_20240101.tar.gz # List recent backups ls -l /var/backups/lambdasoftworks/config/
Data Backup
# Create data backup sudo ./system-backup.sh --backup-data # Verify the backup sudo ./system-backup.sh --verify /var/backups/lambdasoftworks/data/data_20240101.tar.gz # List recent backups ls -l /var/backups/lambdasoftworks/data/
Backup Restoration
# Restore configuration backup sudo ./system-backup.sh --restore /var/backups/lambdasoftworks/config/config_20240101.tar.gz # Restore data backup to specific path sudo ./system-backup.sh --restore /var/backups/lambdasoftworks/data/data_20240101.tar.gz /var/www/
Troubleshooting
Common Issues
Permission Errors
- Ensure the script is run with sudo
- Check directory permissions
- Verify user has necessary privileges
Backup Issues
- Verify backup paths
- Check backup configuration
- Review backup logs
Report Generation Issues
- Check log directory permissions
- Verify HTML template access
- Check disk space
Debug Mode
To enable debug logging:
sudo DEBUG=1 ./system-backup.sh [OPTIONS]