Skip to content

Latest commit

 

History

History
210 lines (134 loc) · 3.98 KB

File metadata and controls

210 lines (134 loc) · 3.98 KB

🗂️ Linux Backup Automation

A Linux automation project that creates timestamped backups and restores them using Bash scripting.

Linux Bash Git GitHub VS Code


📖 Project Overview

Linux Backup Automation is a Bash scripting project that automates the process of backing up important directories in Linux. It creates compressed timestamped archives, stores them in a backup directory, and allows users to restore backups whenever required.

This project demonstrates practical Linux administration, shell scripting, file management, automation, Git, GitHub, and VS Code skills.


✨ Features

  • 📂 Automatic directory backup
  • 📦 Compressed .tar.gz backup archives
  • 🕒 Timestamped backup files
  • ♻️ Restore backups easily
  • ⚡ Fast Bash automation
  • 🖥️ Works on Ubuntu / WSL
  • 📁 Organized project structure
  • ✅ Beginner-friendly and production-style documentation

🛠️ Tech Stack

  • Bash Shell Scripting
  • Linux (Ubuntu / WSL)
  • VS Code
  • Git
  • GitHub

📂 Project Structure

linux-backup-automation/
│
├── backup.sh
├── restore.sh
├── backup/
├── test-data/
├── screenshots/
│   ├── 01-project-folder.png
│   ├── 02-folder-structure.png
│   ├── 03-tree.png
│   ├── 04-config-file-vscode.png
│   ├── 05-config-terminal.png
│   ├── 06-backup succes.png
│   └── 07-restore.png
│
└── README.md

🚀 Getting Started

1. Clone the Repository

git clone https://github.com/anamika-saini/linux-backup-automation.git

2. Navigate to the Project

cd linux-backup-automation

3. Give Execute Permission

chmod +x backup.sh
chmod +x restore.sh

4. Run Backup Script

./backup.sh

5. Restore Backup

./restore.sh

📸 Project Screenshots

📁 Project Folder

Project Folder


📂 Folder Structure

Folder Structure


🌳 Tree Output

Tree Structure


💻 Configuration File (VS Code)

VS Code


🖥️ Configuration (Terminal)

Terminal


✅ Backup Successful

Backup Success


♻️ Restore Process

Restore


📚 Learning Outcomes

This project helped me strengthen my knowledge of:

  • Linux File System
  • Bash Shell Scripting
  • Linux Commands
  • Automation
  • File Compression using tar
  • Linux Permissions
  • Git & GitHub Workflow
  • VS Code + WSL Development
  • Project Documentation

🎯 Future Improvements

  • Scheduled Backups using Cron Jobs
  • Automatic Backup Cleanup
  • Backup Encryption
  • AWS S3 Backup Integration
  • Email Notifications
  • Logging System
  • Configuration File Support

👩‍💻 Author

Anamika Saini

Aspiring Cloud Support Engineer | Linux Enthusiast | AWS Learner

GitHub: https://github.com/anamika-saini


🤝 Contributing

Contributions, issues, and feature requests are welcome.

If you'd like to improve this project, feel free to fork the repository and submit a pull request.


⭐ Show Your Support

If you found this project helpful, please consider giving it a ⭐ Star on GitHub.

It helps others discover the project and motivates future improvements.


📜 License

This project is licensed under the MIT License.