Службы
-
Служба (service)
Что такое служба, чем она отличается от обычной программы и как ей управлять.
4 минsystemctl statussystemctl startsystemctl stop -
journalctl — логи и журнал systemd
Чтение журнала systemd (journald) — фильтры по службе, времени, приоритету.
4 минjournalctl -ujournalctl -xeujournalctl -p -
systemd
Init-система и менеджер служб (PID 1): юниты, цели, зависимости, журналы.
7 минsystemctl statussystemctl startsystemctl stop -
systemctl — управление службами systemd
Основной интерфейс к systemd. enable включает автозапуск, start запускает сейчас — это разные операции.
5 минsystemctl statussystemctl startsystemctl stop -
cloud-init — первичная настройка ВМ
Автонастройка облачных/виртуальных машин при первом старте — user-data, отладка.
3 минcloud-init statuscloud-init schemaless -
nginx — веб-сервер и обратный прокси
nginx отдаёт сайты с диска и пересылает запросы приложениям; сайт выбирает по Host, конфиг проверяет nginx -t.
11 минnginx -tsystemctl reloadnginx -T -
sshd — SSH-сервер
Сервер OpenSSH; правь конфиг со вторым открытым сеансом — ошибка в PermitRootLogin закроет доступ немедленно.
4 минsshd -tsshd -Tsystemctl reload -
Cron — планировщик задач
Запуск задач по расписанию — классический cron и современные systemd-таймеры.
6 минcrontab -ecrontab -lsystemctl list-timers -
Ограничения службы: User=, ProtectSystem, NoNewPrivileges
Ключи юнита, отбирающие у службы лишнее: root, запись в систему, новые привилегии; оценка — systemd-analyze security.
12 минsystemd-analyze securitysystemctl showsystemctl edit -
Таймеры systemd — задачи по расписанию
Таймер systemd — юнит .timer, который по расписанию запускает одноимённую службу; её вывод пишется в журнал.
10 минsystemctl list-timerssystemctl enablesystemctl start -
AppArmor
Мандатный контроль доступа в Ubuntu — профили служб, режимы enforce/complain.
7 минaa-statusjournalctl -kaa-complain -
PostgreSQL — доступ, pg_hba.conf, дамп и восстановление
PostgreSQL — реляционная СУБД: роли и базы, правила доступа pg_hba.conf, дамп pg_dump и восстановление pg_restore.
12 минsystemctl startpg_lsclusterspsql -h -
Redis — хранилище ключ-значение в памяти
Кэш, очереди и сессии в оперативной памяти; KEYS * блокирует сервер на больших базах — вместо неё используй --scan.
4 минredis-cli pingredis-cli inforedis-cli --bigkeys -
unattended-upgrades: обновления безопасности без участия человека
Служба Ubuntu: раз в сутки по таймеру apt ставит обновления из разрешённых источников, по умолчанию — только security.
10 минsystemctl list-timerscatapt-config dump -
fail2ban
Бан по логам — защита SSH и сервисов от перебора; jail'ы, статус, разбан.
6 минfail2ban-client statusfail2ban-client setfail2ban-regex -
Docker — контейнеры: запуск, порты, тома, сети
Docker запускает программы в контейнерах — изолированных процессах из образов — и управляет их портами, томами и сетями.
21 минsystemctl enabledocker rundocker ps -
docker compose — стек контейнеров одним файлом
docker compose описывает стек контейнеров с сетью, томами и переменными в compose.yaml и поднимает его одной командой.
13 минdocker compose -
Ansible: инвентарь, модули и разовые команды
Система настройки серверов по SSH: по инвентарю и плейбукам приводит машины к описанному состоянию без агента на них.
8 минansible -iansible-inventory -iansible-playbook -i -
ansible-playbook: запуск плейбука
Запускает плейбук Ansible на машинах инвентаря и по каждой задаче пишет ok, changed, skipping или failed.
13 минansible-playbook -i -
timedatectl — время, часовой пояс и синхронизация
Управляет системным временем и NTP; set-time требует сначала выключить set-ntp, иначе время вернётся обратно.
4 минtimedatectltimedatectl set-timezonetimedatectl set-ntp -
chrony: синхронизация времени по NTP
NTP-клиент и сервер: подводит системные часы по серверам времени и может раздавать время своим машинам.
11 минchronyc trackingchronyc sourceschronyc sourcestats -
Prometheus — сбор метрик
Prometheus собирает метрики по pull-модели: таргеты, язык запросов PromQL, экспортеры и алерты.
3 минpromtool checkcurl -
Grafana — дашборды
Визуализация метрик и логов — источники данных, дашборды, переменные, алерты.
3 минsystemctl statusss -tlnpgrafana-cli admin -
hostnamectl — имя хоста и его атрибуты
Просмотр и смена имени хоста и сведений о машине; /etc/hostname и /etc/hosts.
3 минhostnamectlhostname -fhostname -I -
Samba — общий доступ к файлам по SMB
SMB-сервер для общих папок, совместимых с Windows; SMB-пароль отдельный от системного, его легко забыть завести.
5 минsmbpasswd -atestparmsmbstatus -
KVM и libvirt
Виртуальные машины на Linux — управление через virsh, сети и хранилища, консоль.
3 минvirsh listvirsh startvirsh shutdown -
Postfix — почтовый сервер
Отправка и приём почты — конфиг, очередь, логи, типичная отладка доставки.
4 минpostconf -nmailqpostqueue -f -
BIND9 — DNS-сервер
Собственный DNS-сервер BIND: зоны и записи, проверка конфигурации, отладка разрешения имён.
3 минnamed-checkconfnamed-checkzonerndc reload -
DHCP-сервер
DHCP-сервер раздаёт адреса в сети: пул адресов, резервации по MAC, аренды и диагностика.
3 минdhcpd -tcatjournalctl -u -
HAProxy — балансировщик
Балансировка нагрузки и проксирование TCP/HTTP — бэкенды, health-check, статистика.
3 минhaproxy -csystemctl reloadecho -
keepalived — отказоустойчивость через VRRP
Высокая доступность через виртуальный IP — failover между узлами по VRRP.
3 минip ajournalctl -u