Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

LinuxPulse

██╗     ██╗███╗   ██╗██╗   ██╗██╗  ██╗██████╗ ██╗   ██╗██╗     ███████╗███████╗
██║     ██║████╗  ██║██║   ██║╚██╗██╔╝██╔══██╗██║   ██║██║     ██╔════╝██╔════╝
██║     ██║██╔██╗ ██║██║   ██║ ╚███╔╝ ██████╔╝██║   ██║██║     ███████╗█████╗
██║     ██║██║╚██╗██║██║   ██║ ██╔██╗ ██╔═══╝ ██║   ██║██║     ╚════██║██╔══╝
███████╗██║██║ ╚████║╚██████╔╝██╔╝ ██╗██║     ╚██████╔╝███████╗███████║███████╗
╚══════╝╚═╝╚═╝  ╚═══╝ ╚═════╝ ╚═╝  ╚═╝╚═╝      ╚═════╝ ╚══════╝╚══════╝╚══════╝

Linux System Intelligence & Administration Framework

LinuxPulse is a single-file Bash toolkit for getting a fast, complete picture of a Linux system's health, security posture, and activity — all from an interactive terminal menu, with no dependencies beyond standard system utilities.

Features

🖥️ System Information

Hostname, kernel, architecture, OS, uptime, CPU, memory, and disk usage at a glance.

📈 Live Resource Monitor

Auto-refreshing view (every 2s) of system load, memory, filesystem usage, and top CPU-consuming processes.

🔍 Process Inspector

Lists top processes by CPU usage, then lets you drill into any PID for its command line, executable path, working directory, and open file descriptors.

📂 Filesystem Analyzer

  • Disk usage by mount point
  • Largest directories / largest files in a given path
  • Recently modified files
  • World-writable files (permission audit)
  • SUID/SGID files (privilege escalation audit)

🌐 Network Inspector

Interfaces, routing table, listening sockets (ss/netstat), and DNS configuration.

⚙️ Service Inspector

Failed systemd services and currently running services.

📜 System Log Analyzer

Recent errors and warnings pulled straight from journalctl.

👤 Session Auditor

Currently logged-in users, recent login history, and failed login/authentication attempts parsed from the journal.

🧭 Baseline & Drift Detection

  • Create Baseline — snapshots hostname, kernel, filesystem, listening sockets, running services, users, and SUID files
  • Compare Baseline — diffs the current system state against the saved baseline to surface what changed (new listening ports, new SUID binaries, new users, etc.) — useful for spotting unauthorized changes over time

🛡️ Security Quick Scan

A 7-step sweep covering disk pressure, world-writable files, SUID files, failed services, listening ports, recent errors, and resource pressure — a fast health/security check in one command.

📄 Report Generator

Compiles system, memory, filesystem, network, process, service, and security data into a single timestamped report file under reports/.

🧹 Safe System Actions

Package cache cleanup (apt/dnf/pacman auto-detected), a scan for large temp files (report-only, nothing is auto-deleted), and filesystem check info.

Requirements

  • Linux with Bash
  • Standard utilities: uname, df, free, ps, ip, ss (or netstat), find
  • systemd (systemctl, journalctl) for service/log features — the tool detects and gracefully skips these if unavailable
  • Some scans (world-writable/SUID search, package cache cleanup) benefit from sudo

Installation

git clone https://github.com/Shahzaib/LinuxPulse.git
cd LinuxPulse
chmod +x linuxpulse.sh
./linuxpulse.sh

Usage

Run the script and pick an option from the numbered menu:

[1]  System Information
[2]  Live Resource Monitor
[3]  Process Inspector
[4]  Filesystem Analyzer
[5]  Network Inspector
[6]  Service Inspector
[7]  System Log Analyzer
[8]  Session Auditor
[9]  Security Quick Scan
[10] Create System Baseline
[11] Compare Against Baseline
[12] Generate Full Report
[13] Safe System Actions
[0]  Exit

Generated reports are saved to reports/linuxpulse_report.txt in the working directory.

Notes

  • All destructive-looking actions (temp file scan, package cache clean) either report only or use standard, reversible package-manager commands — nothing is force-deleted without explicit confirmation.
  • SUID/world-writable scans walk the filesystem (find / -xdev ...) so they can take a moment on large systems.

License

MIT

Author

Built by @Shahzaib — CS student, CCNA instructor, and cybersecurity practitioner focused on practical sysadmin and security tooling.

About

LinuxPulse is a single-file Bash toolkit for getting a fast, complete picture of a Linux system's health, security posture, and activity

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages