Посты
lsof: какие процессы слушают порт и держат файл
Сервис не стартует — порт 8080 занят. Разбираешься, кто именно его держит, и попутно выясняется, что тот же процесс держит конфиг, который ты хотел …
ethtool: диагностика и тюнинг сетевого интерфейса
Проблемы с сетевой картой редко видны снаружи — интерфейс поднят, IP назначен, iptables молчит, а потери пакетов или микрофризы проявляются только под …
curl: отладка HTTP в терминале
cURL — стандартный инструмент отладки HTTP в терминале. Работает из коробки в Linux и macOS, есть в большинстве Docker-образов. Если нужно быстро проверить API, …
tcpdump и tshark: захват и анализ пакетов в CLI
При отладке сетевых проблем в Linux-инфраструктуре недостаточно ping и curl. Иногда нужно посмотреть, что реально ходит по проводу. tcpdump — стандартный …
strace: трассировка системных вызовов для диагностики зависаний и утечек
При зависании сервиса стандартные инструменты — top, htop, ps — показывают состояние, но не причину. Если процесс в state D (uninterruptible sleep), значит он …
SSH Config: wildcards и подстановка переменных
SSH-клиент читает ~/.ssh/config строчку за строчкой, но без переменных файл быстро превращается в копипасту. Разбираю, как Host *, Match exec и подстановки %h, …
ss: socket statistics вместо устаревшего netstat
Если netstat зависает на сервере с десятками тысяч соединений — пора переходить на ss. Утилита из пакета iproute2 работает напрямую с ядром через netlink, а не …
Что такое Self-Hosted и почему она так популярна
Вы платите за подписку на Notion, Dropbox и Google Drive. Затем Notion повышает цену, Dropbox ограничивает хранилище, а Google «улучшает» интерфейс Docs. …
Создание собственной службы Systemd
Приложение нужно запускать при старте сервера, перезапускать при падении и вести логи. Shell-скрипты в /etc/rc.local не дают ни перезапуска, ни зависимостей. …
SSH escape-последовательности: оживление зависшего терминала
SSH-сессия зависла, Ctrl+C не помогает, Ctrl+D вываливает мусор — знакомая картина. Прежде чем закрывать терминал и терять сессию, попробуй встроенные …
socat: проброс Unix-сокетов через TCP
Иногда нужно обратиться к Unix-сокету с хоста, где этот сокет физически не существует. SSH-туннель не поможет — он работает с TCP-портами. socat решает эту …
ngrep: grep по сетевым пакетам в реальном времени
Ngrep — утилита, которая ищет паттерны в сетевых пакетах так же, как grep ищет строки в файлах. Когда нужно понять, что конкретно передаётся по сети между двумя …