Skip to content

KavinduDr/Automating-backups

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ” Automated Backup & Recovery with Encryption + Cloud Storage

This project demonstrates a secure, automated backup system built using:

  • Bash scripting for automation
  • GPG for encryption
  • Cron for scheduling
  • AWS S3 (or Google Drive via rclone) for offsite storage

It’s designed as a learning + portfolio project to showcase system administration, security, and cloud integration skills.


πŸš€ Features

  • πŸ“‚ Compress files/folders into .tar.gz
  • πŸ”‘ Encrypt backups with GPG (asymmetric encryption)
  • ☁️ Upload to AWS S3 (or Google Drive alternative)
  • ♻️ Automated with cron jobs
  • βœ… Restore tested (backup β†’ decrypt β†’ extract)

πŸ“‚ Project Structure

automating-backups/

β”œβ”€β”€ backup.sh # Main backup script

β”œβ”€β”€ sample_crontab.txt # Example cron schedule

β”œβ”€β”€ README.md # Documentation

β”œβ”€β”€ screenshots/


βš™οΈ Setup Guide

1. Clone repo

git clone https://github.com/KavinduDr/Automating-backups.git

2. Make script executable

chmod +x backup.sh

3. Edit script

BACKUP_SRC="/var/www/html"   # Or your chosen directory
BACKUP_DEST="/home/ubuntu/backup-project/backups"
GPG_RECIPIENT="Your Name <[email protected]>"

4. Run backup manually

./backup.sh

5. Automate with cron

to install :

crontab sample_crontab.txt

6. To restore

Decrypt

gpg -d backups/backup_2025-08-30_10-25-12.tar.gz.gpg > restore.tar.gz

Extract

tar -xzf restore.tar.gz -C /path/to/restore/

About

An automated backup system using GPG and Crontab

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages