administering-linux_skill

This skill empowers you to manage Linux servers, optimize performance, and troubleshoot production issues with systemd, networking, and security best practices.
  • Python

291

GitHub Stars

2

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill ancoleman/ai-design-components --skill administering-linux

  • outputs.yaml5.9 KB
  • SKILL.md14.9 KB

Overview

This skill provides practical Linux system administration for managing systemd services, processes, filesystems, networking, performance tuning, and troubleshooting on modern distributions (Ubuntu, RHEL, Debian, Fedora). It focuses on outcomes: deploy reliable services, diagnose production issues, optimize servers, and manage users and security basics. The content is hands-on with essential commands, decision frameworks, and repeatable workflows.

How this skill works

The skill inspects and guides common server tasks: creating and managing systemd units and timers, monitoring and controlling processes, analyzing logs with journalctl, and handling disk and network configuration. It provides step-by-step workflows for troubleshooting CPU/memory/disk/network bottlenecks, tuning sysctl and ulimits, and hardening SSH/firewalls. Examples and templates speed deployment and investigation in production environments.

When to use it

  • Deploy or manage long-running services with systemd
  • Diagnose slow or failing production servers (CPU, memory, I/O, network)
  • Configure filesystems, LVM, or choose an appropriate filesystem for workload
  • Harden SSH and basic firewall rules for remote access
  • Tune kernel and resource limits for databases or high-load applications
  • Create scheduled jobs using systemd timers or cron

Best practices

  • Prefer systemd unit files and overrides in /etc/systemd/system and use daemon-reload after changes
  • Collect metrics and correlate logs (journalctl) with top/htop, iostat, and ss before acting
  • Use non-root service users, minimal privileges, and ReadWritePaths/PrivateTmp for service isolation
  • Apply sysctl and limits via /etc/sysctl.d/ and /etc/security/limits.conf for reproducible tuning
  • Keep a rescue SSH session when restarting sshd and test configuration with sshd -t
  • Start with conservative changes in production and validate with monitoring and rollback plans

Example use cases

  • Create a systemd service for a web application with automatic restart and minimal privileges
  • Troubleshoot an application experiencing high load: identify CPU spike, check dmesg/journalctl for OOM, and isolate offending process
  • Recover disk space: use df/du/ncdu to find large directories and adjust log rotation or archive old data
  • Harden server access: deploy ed25519 keys, disable root login, restrict AllowUsers and adjust SSH port if required
  • Schedule backups with a systemd timer and a oneshot service that runs reliably after reboots

FAQ

Use XFS for large files and database workloads on RHEL/CentOS; ext4 is a solid default for general purpose systems; consider ZFS for NAS or when data integrity and snapshots are required.

How do I safely change sshd settings without locking myself out?

Keep an existing session open, test the config with sshd -t, and restart sshd only after confirming the test succeeds. Have a secondary access method (console or cloud provider serial) ready.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
administering-linux skill by ancoleman/ai-design-components | VeilStrat