Administering Linux
Рабочий skill для эксплуатации Linux-сервера. Цель — починить хост командами, которые можно копировать, а не пересказывать man pages.
Не используй этот skill как основной для Docker, GitLab CI, Ansible, Amnezia
или policy routing: там свои skills (docker-ops, gitlab-ci,
ansible-playbook, amnezia-vpn, linux-routing).
Когда использовать
- Сервис не стартует, падает, не слушает порт, не поднимается после reboot.
- Нужен unit file, timer, drop-in override, logrotate.
- Разбор CPU/RAM/IO/disk full/OOM/load.
- Пользователи, sudo, SSH, пакеты, базовый firewall.
- «Почему хост тормозит / не пускает / не резолвит DNS».
Workflow
- Зафиксируй distro и роль хоста:
source /etc/os-release; hostnamectl; uptime. - Отдели симптом: сервис, диск, память, сеть, auth.
- Смотри факты, не гипотезы:
systemctl --failed,journalctl -xe,df -h,free -h,ss -lntup. - Меняй один слой за раз. Для unit-файлов — drop-in, не правь vendor unit.
- После фикса проверь: статус сервиса, порт, лог, reboot-persistence (
enable).
Быстрые факты
source /etc/os-release
systemctl --failed
journalctl -p err -b --no-pager | tail -n 80
df -hT
free -h
ss -lntup
- Ubuntu/Debian:
apt, netplan, частоufw. - RHEL/Rocky/Alma:
dnf, NetworkManager, частоfirewalld+ SELinux. - Не убивай процесс через
kill -9, пока не исчерпанsystemctl stop/ SIGTERM. - Не рестартуй
sshdв единственной сессии без проверенногоsshd -tи запасного канала.
Companion skills
- Docker-демон, compose, контейнер не стартует →
docker-ops. - Плейбуки и идемпотентность →
ansible-playbook. ip rule, fwmark, nft NAT, policy routing →linux-routing.- Pipeline/runner →
gitlab-ci.
References
references/systemd-journal.md— unit files, drop-in, timers, journalctl.references/diagnosis.md— CPU/RAM/IO/disk/OOM/сеть/SSH, готовые команды.