Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

Linux System Maintenance & Monitoring Toolkit

A comprehensive Bash script for system administration tasks on Linux systems, designed as a menu-driven Swiss Army knife for sysadmins.

📋 Table of Contents

🎯 Project Objectives

This project was created to demonstrate mastery of Linux essentials by building a practical toolkit that automates common system administration tasks including monitoring, maintenance, user management, and security configuration.

⚡ Key Features

Module Functionality
System Info View hostname, OS, kernel, uptime, users, disk/memory usage
Resource Monitoring Real-time CPU/memory monitoring, top processes
Backup Management Create, list, restore, and delete backups
User Management Add/delete users, manage passwords, show groups
Log Management View, search, and analyze system logs
Network Tools Connectivity testing, DNS resolution, port checking
Task Scheduling Cron job management and scheduling
System Configuration Change hostname, timezone, and system settings
Package Management Install, remove, update, and search for packages
Firewall Control UFW firewall management and rule configuration

🚀 Getting Started

Prerequisites

  • Linux system or WSL (Windows Subsystem for Linux)
  • Bash shell
  • sudo privileges for certain operations

Installation & Usage

# 1. Download the script
git clone
cd linux-system-toolkit

# 2. Make it executable
chmod +x sysadmin_toolkit.sh

# 3. Run the script
./sysadmin_toolkit.sh

# 4. For full functionality (some operations require root)
sudo ./sysadmin_toolkit.sh

WSL Usage Notes

This project was developed and tested on WSL (Windows Subsystem for Linux). When using WSL:

  • Some system operations may behave slightly differently
  • Firewall (UFW) operations work but may not affect Windows host firewall
  • Network configuration might have WSL-specific considerations

📚 Important Linux Concepts

This project demonstrates these essential Linux concepts:

  • File System Navigation: Working with directories and file operations
  • Process Management: Monitoring and controlling running processes
  • User Permissions: Understanding root vs user privileges
  • Package Management: Using apt-get for software management
  • Networking Basics: IP configuration, DNS, and firewall rules
  • Shell Scripting: Creating automated scripts with Bash
  • System Services: Managing daemons and background processes
  • Log Files Analysis: Reading and interpreting system logs

📖 Learning Resources

For deeper understanding of these concepts, I recommend:

Linux Essentials by Cisco Networking Academy

A comprehensive course covering all fundamental Linux concepts demonstrated in this project.

Official Cisco Networking Academy Website

This resource provides excellent coverage of:

  • Linux command line basics
  • File system hierarchy
  • User and group management
  • Package management
  • Basic networking concepts
  • Scripting fundamentals

🔮 Future Improvements

Potential enhancements for this toolkit:

  • Add service management (systemctl commands)
  • Implement backup encryption with GPG
  • Add DHCP/Static IP toggle functionality
  • Include password policy checking
  • Add ANSI colors for better menu formatting
  • Create logging for all operations performed
  • Add remote system management capabilities

⚠️ Important Notes

  1. Use with Caution: Some operations can affect system stability
  2. Backup First: Always backup important data before making system changes
  3. Root Privileges: Many functions require sudo access - understand what each command does
  4. Testing: Test in a safe environment before using on production systems
  5. WSL Limitations: Some system operations may behave differently in WSL vs native Linux

This project serves as both a practical tool and a learning exercise in Linux system administration fundamentals.

About

Menu-driven Bash toolkit for Linux system administration — covers system monitoring, backup management, user and package management, log analysis, network tools, cron scheduling, and UFW firewall control.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages