ancoleman/ai-design-components/administering-linux
Claude Code and agent skill by ancoleman/ai-design-components
- community
Checking that the SKILL.md file is still in the repository.
Manage Linux systems covering systemd services, process management, filesystems, networking, performance tuning, and troubleshooting. Use when deploying applications, optimizing server performance, diagnosing production issues, or managing users and security on Linux servers.
Install
npx vskill@latest install ancoleman/ai-design-components/administering-linuxSKILL.md
Linux Administration
Comprehensive Linux system administration for managing servers, deploying applications, and troubleshooting production issues in modern cloud-native environments.
Purpose
This skill teaches fundamental and intermediate Linux administration for DevOps engineers, SREs, backend developers, and platform engineers. Focus on systemd-based distributions (Ubuntu, RHEL, Debian, Fedora) covering service management, process monitoring, filesystem operations, user administration, performance tuning, log analysis, and network configuration.
Modern infrastructure requires solid Linux fundamentals even with containerization. Container hosts run Linux, Kubernetes nodes need optimization, and troubleshooting production issues requires understanding systemd, processes, and logs.
Not Covered:
- Advanced networking (BGP, OSPF) - see
network-architectureskill - Deep security hardening (compliance, pentesting) - see
security-hardeningskill - Configuration management at scale (Ansible, Puppet) - see
configuration-managementskill - Container orchestration - see
kubernetes-operationsskill
When to Use This Skill
Use when deploying custom applications, troubleshooting slow systems, investigating service failures, optimizing workloads, managing users, configuring SSH, monitoring disk space, scheduling tasks, diagnosing network issues, or applying performance tuning.
Quick Start
Essential Commands
Service Management:
Process Monitoring:
Disk Usage:
Log Analysis:
User Management:
Core Concepts
Systemd Architecture
Systemd is the standard init system and service manager. Systemd units define services, timers, targets, and other system resources.
Unit File Locations (priority order):
/etc/systemd/system/- Custom units (highest priority)/run/systemd/system/- Runtime units (transient)/lib/systemd/system/- System-provided units (don't modify)
Key Unit Types: .service (services), .timer (scheduled tasks), .target (unit groups), .socket (socket-activated)
Essential systemctl Commands:
For detailed systemd reference, see references/systemd-guide.md.
Process Management
Processes are running programs with unique PIDs. Understanding process states, signals, and resource usage is essential for troubleshooting.
Process States: R (running), S (sleeping), D (uninterruptible sleep/I/O), Z (zombie), T (stopped)
Common Signals: SIGTERM (15) graceful, SIGKILL (9) force, SIGHUP (1) reload config
Process Priority:
Filesystem Hierarchy
Essential directories: / (root), /etc/ (config), /var/ (variable data), /opt/ (optional software), /usr/ (user programs), /home/ (user directories), /tmp/ (temporary), /boot/ (boot loader)
Filesystem Types Quick Reference:
- ext4 - General purpose (default)
- XFS - Large files, databases (RHEL default)
- Btrfs - Snapshots, copy-on-write
- ZFS - Enterprise, data integrity, NAS
For filesystem management details including LVM and RAID, see references/filesystem-management.md.
Package Management
Ubuntu/Debian (apt):
RHEL/CentOS/Fedora (dnf):
Use native package managers for system services; snap/flatpak for desktop apps and cross-distro compatibility.
Decision Frameworks
Troubleshooting Performance Issues
Investigation Workflow:
- Identify bottleneck:
``bash top # Quick overview uptime # Load averages ``
- CPU Issues (usage >80%):
``bash top # Press Shift+P to sort by CPU ps aux --sort=-%cpu | head ``
- Memory Issues (swap used):
``bash free -h # Memory usage top # Press Shift+M to sort by memory ``
- Disk I/O Issues (high wa%):
``bash iostat -x 1 # Disk statistics iotop # I/O by process ``
- Network Issues:
``bash ss -tunap # Active connections iftop # Bandwidth monitor ``
For comprehensive troubleshooting, see references/troubleshooting-guide.md.
Filesystem Selection
Quick Decision:
- Default/General → ext4
- Database servers → XFS
- Large file storage → XFS or ZFS
- NAS/File server → ZFS
- Need snapshots → Btrfs or ZFS
Common Workflows
Creating a Systemd Service
Step 1: Create unit file
Step 2: Unit file content
Step 3: Deploy and start
For complete examples, see examples/systemd-units/.
Systemd Timer (Cron Replacement)
Create service and timer units for scheduled tasks. Timer unit specifies OnCalendar= schedule and Persistent=true for missed jobs. Service unit has Type=oneshot. See examples/systemd-units/backup.timer and backup.service for complete examples.
SSH Hardening
Generate SSH key:
Harden sshd_config:
Key settings:
Apply changes:
For complete SSH configuration, see examples/configs/sshd_config.hardened and references/security-hardening.md.
Performance Tuning
Configure sysctl parameters in /etc/sysctl.d/99-custom.conf for network tuning (tcp buffers, BBR congestion control), memory management (swappiness, cache pressure), and file descriptors. Set ulimits in /etc/security/limits.conf for nofile and nproc. Configure I/O schedulers and CPU governors. For comprehensive tuning, see references/performance-tuning.md and examples/configs/ for templates.
Log Investigation
Use systemctl status myapp and journalctl -u myapp to investigate issues. Filter logs by time --since, severity -p err, or search patterns with grep. Correlate with system metrics using top, df -h, free -h. Check for OOM kills with journalctl -k | grep -i oom. For detailed workflows, see references/troubleshooting-guide.md.
Essential Commands
Interface Management:
Routing:
Socket Statistics:
Firewall Configuration
Ubuntu (ufw):
RHEL/CentOS (firewalld):
For complete network configuration including netplan, NetworkManager, and DNS, see references/network-configuration.md.
Scheduled Tasks
Cron Syntax
Systemd Timer Calendar Syntax
Essential Tools
Process Monitoring
top,htop- Real-time process monitorps- Report process statuspgrep/pkill- Find/kill by name
Log Analysis
journalctl- Query systemd journalgrep- Search text patternstail -f- Follow log files
Disk Management
df- Disk space usagedu- Directory space usagelsblk- List block devicesncdu- Interactive disk analyzer
Network Tools
ip- Network configurationss- Socket statisticsping- Test connectivitydig/nslookup- DNS queriestcpdump- Packet capture
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationWarning, 84 of 100Marginal. 1 run. Evaluated 7 months ago.
Source
- SKILL.md in the repositoryCheckingskills/administering-linux/SKILL.md
Popularity
- Repository stars
- 350
- Repository forks
- 53
- 7-day trend score
- 29
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 1 May 2026, 6 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ancoleman/ai-design-components/administering-linux)