A comprehensive, hands-on project demonstrating core Linux system administration, file management, process handling, and resource monitoring. This repository serves as a practical execution log of essential CLI operations required for DevOps and SysAdmin roles.
This project simulates real-world server management tasks. The challenges progress from basic file handling to intermediate system discovery, resource monitoring, and background process management.
Key Skills Demonstrated:
- Navigation & File Operations (
cp,mv,rm,mkdir) - Content Filtering & Redirection (
grep,echo,>,>>) - Permissions Management (
chmod) - Compression & Backups (
tar) - Process Control (
ps,kill, background jobs) - System Monitoring (
free,du,ifconfig,uptime)
- A Linux-based OS (Ubuntu, RHEL, CentOS, etc.) or WSL.
- Basic understanding of command-line interfaces.
- Root or Sudo privileges for system-level commands.
Initializing the workspace by creating a project directory and an empty file.
mkdir my_project
cd my_project
touch index.htmlDuplicating files and organizing them into subdirectories logically.
cp -rf index.html about.html
mkdir pages
mv about.html ./pagesCleaning up the workspace and restructuring directories.
cd ..
rm index.html
mv pages assets4. Hidden Files & Recursive Deletion
Managing hidden configuration files and safely wiping non-empty directories.
cd assets
touch .secret
ls -a
cd ..
rm -rvf assetsWriting logs directly via CLI and tracking files down using find.
mkdir network_logs && cd network_logs
echo "Destination Host Unreachable" > ping_results.txt
find . -name "ping_results.txt"Simulating application logs, filtering specific error metrics, and securing the file.
touch app.log
echo "[INFO] server is running" > app.log
echo "[ERROR] Connection Timeout" >> app.log
cat app.log | grep -F "[ERROR]"
chmod 444 app.logCompressing the project directory into a GZIP tarball for backup simulation.
mkdir backup_dir
tar -czf Project_backup.tar.gz my_project
mv Project_backup.tar.gz backup_dir/
cd backup_dir
tar -xf Project_backup.tar.gzRunning dummy processes in the background, isolating their PIDs, and terminating them.
sleep 6000 &
ps | grep sleep
kill <PID>Extracting real-time statistics regarding Memory (RAM), Disk Utilization, and Network Interfaces.
free -h
du -sh /var/log
ifconfigGathering kernel information, verifying the OS distribution, checking server uptime, and exporting the session history for documentation.
uname -a
cat /etc/os-release
uptime
history >> session_history.txt
tail -n 5 session_history.txt