logrotate: ротация логов без самописных cron-скриптов

Приложение без встроенной ротации логов рано или поздно съедает диск. logrotate решает это декларативно: конфиг сервиса — в /etc/logrotate.d/, общие настройки — в /etc/logrotate.conf. Минимальный конфиг: /var/log/myapp/*.log { daily rotate 14 compress delaycompress postrotate systemctl reload myapp endscript } rotate 14 — сколько копий хранить, delaycompress откладывает сжатие последней копии на цикл вперёд — иначе процесс, ещё пишущий в старый file descriptor, получит на руки уже гзипнутый файл. postrotate/endscript — команда после ротации, обычно переоткрыть лог демону. ...

September 22, 2026 · llexa

strace: подглядываем за системными вызовами процесса

Процесс завис или ведёт себя странно, а логов нет — strace -p PID цепляется к уже запущенному процессу и показывает каждый системный вызов в реальном времени. Флаг -f заставляет следить и за форкнутыми дочерними процессами — без него, например, не увидишь вызовы воркеров nginx или дочерних процессов после fork(). Полный трейс — простыня строк, поэтому обычно сразу фильтруют по типу вызовов: strace -f -e trace=network -p 1234 strace -f -e trace=open,openat -p 1234 Когда важна не последовательность, а картина в целом — какие вызовы процесс делает чаще всего и сколько на них тратит времени — вместо полного трейса берут сводку: ...

September 22, 2026 · llexa

Claude-скиллы #1: Claude без скиллов — калькулятор с претензией на интеллект

Попроси Claude сделать код-ревью пять раз подряд — получишь пять разных наборов придирок. Один раз зацепится за нейминг, другой раз пропустит забытый await. Не потому что модель плохая — у неё нет фиксированного чек-листа, только твой промпт здесь и сейчас. Skill — файл с инструкцией и, если нужно, скриптами, который Claude подхватывает по команде /имя-скилла или по совпадению с задачей. Написал раз — используешь месяцами один и тот же процесс, а не лотерею. ...

September 21, 2026 · llexa

Proxmox #11: vzdump — расписание бэкапов, retention, уведомления

vzdump — встроенный инструмент бэкапа VM/CT в Proxmox VE, но без явной настройки retention он ничего не удаляет: по умолчанию действует keep-all=1, бэкапы копятся вечно, пока не кончится место на диске. Retention задаётся через prune-backups: vzdump 101 --prune-backups keep-last=3,keep-daily=7,keep-weekly=4 Тот же параметр есть в Datacenter → Backup job — не нужно городить отдельный cron-скрипт для чистки старых архивов. Уведомления о падении/успехе задания раньше настраивались флагом --mailto, но он объявлен deprecated — актуальный способ - notification targets (Datacenter → Notifications), --notification-mode переключает между auto, legacy-sendmail и notification-system. ...

September 21, 2026 · llexa

Фото недели: серп Луны и Юпитер с двумя спутниками в одном кадре

Астрофотограф Адам (AJ) Смади поймал кадр, где в одном поле зрения — тонкий серп Луны, освещённый Солнцем, и Юпитер с двумя его спутниками, Ио и Ганимедом. На снимке Юпитер — просто точка рядом с Луной, но эта точка примерно в 2400 раз дальше от Земли. Один кадр наглядно показывает масштаб Солнечной системы: ближайшая соседка Земли — и гигант, до которого лететь годами. #космос

September 21, 2026 · llexa

IT-мем: «мясные придатки Клода» не осилили SQL-запрос

Всю неделю собеседовал лучших AI-native вайбкодеров на роль тех лида в международный стартап на 140k$/год. Несмотря на то, что у них опыт с Postgres/MySQL/Oracle по 5+ лет, ни один из этих мясных придатков Клода не смог правильно написать, что вернёт этот запрос. С канала @ctobtch — злая, но узнаваемая иллюстрация к вопросу “а что если 5 лет писать промпты вместо SQL”. #юмор

September 20, 2026 · llexa

Почему одни вирусы стали гигантами, а другие — нет

Есть вирусы с геномом почти 5 мегабаз — больше, чем у многих бактерий. Статья Кунина и Крупового (PNAS, сентябрь 2026, https://www.pnas.org/doi/10.1073/pnas.2610442123): это не отдельный класс жизни, а обычные вирусы, годами тащившие в себя гены хозяина. Вирус реплицируется через чужой аппарат, клетка воспроизводится сама — в этом разница, не в размере. Дальше развилка: r-стратегия — минимальный геном, максимум копий в единицу времени (грипп). K-стратегия — копить гены взаимодействия с хозяином, жертвуя скоростью репликации. Мимивирус и Тупанвирус — крайний случай K-стратегии. ...

September 20, 2026 · llexa

OpenVPN: свой VPN-сервер без облачных сервисов

OpenVPN строится на собственном PKI — сертификаты сервера и клиентов подписаны одним CA, который выпускается через easy-rsa, идущий в комплекте. ./easyrsa init-pki ./easyrsa build-ca ./easyrsa build-server-full server nopass ./easyrsa build-client-full client1 nopass Минимальный server.conf: port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key dh dh.pem tls-auth ta.key 0 tls-auth добавляет HMAC-подпись поверх TLS-хендшейка — защита от DoS через невалидные пакеты и от сканирования порта: сервер не отвечает вообще, если пакет не подписан правильным ta.key. ...

September 19, 2026 · llexa

Zabbix low-level discovery: автоматические items вместо ручных

Item вручную на каждый диск ломается при первом же добавлении нового. LLD решает это: одно правило находит все сущности и создаёт items по прототипу само. Правило обнаружения возвращает JSON вида: {"data":[{"{#FSNAME}":"/","{#FSTYPE}":"ext4"},{"{#FSNAME}":"/var","{#FSTYPE}":"xfs"}]} Item prototype берёт {#FSNAME} в ключ (vfs.fs.size[{#FSNAME},pfree]) — по item на каждый диск, включая новые после следующего запуска правила. Linux by Zabbix agent уже это умеет из коробки. Своё правило нужно только под нестандартное — очереди RabbitMQ, базы PostgreSQL. ...

September 19, 2026 · llexa

Афоризмы Мёрфи #11: Девятое следствие

Продолжаем разбирать классику Артура Блоха. После восьмого следствия (“если вы предусмотрели четыре способа, которыми процедура может пойти не так, и устранили их — тут же проявится пятый”) — девятое: «Приступая к чему-либо, сначала обязательно нужно сделать что-то другое» Хочешь перезапустить nginx — но сначала надо освободить место на диске, а для этого понять, что его жрёт, а для этого поставить ncdu, которого нет в репозитории, а значит сначала настроить репозиторий. Любая простая задача на сервере разворачивается в цепочку предусловий, которую не видно, пока не начал её делать. ...

September 19, 2026 · llexa