siege и wrk: нагрузочное тестирование HTTP из терминала

Перед тем как отдавать сервис в прод, полезно прикинуть, сколько запросов в секунду он держит — без разворачивания JMeter или Gatling. siege и wrk — однобинарники, дают нагрузку из терминала за одну команду. # siege: 50 одновременных клиентов, 30 секунд siege -c 50 -t 30s http://localhost/ # wrk: 4 потока, 100 соединений, 30 секунд wrk -t4 -c100 -d30s http://localhost/ siege проще читается (concurrent users, availability, response time), wrk быстрее на высоких нагрузках за счёт своего event-loop на Lua-скриптах — можно писать кастомные сценарии запросов, не только GET на один URL. Для быстрой проверки “не упадёт ли nginx под пиковой нагрузкой” любой из двух хватает. ...

July 24, 2026 · llexa

nerdctl: docker-совместимый CLI поверх containerd

Если на сервере уже стоит containerd (например, как часть Kubernetes-ноды), ставить рядом полный Docker ради привычного CLI избыточно — nerdctl даёт те же команды, но работает прямо через containerd, без своего демона. nerdctl run -d -p 8080:80 nginx nerdctl ps nerdctl build -t myapp . docker-compose.yml тоже читается как есть: nerdctl compose up -d Отдельно стоит rootless-режим — контейнеры без root на хосте, без suid-бинарников и без выхода из namespace как единственной защиты: ...

July 23, 2026 · llexa

Современные ФС #6: ZFS — RAIDZ

Зеркало (mirror) — 50% полезного места на N дисков. raidz экономнее: чётность распределена по всем дискам, как в RAID5; raidz2 — двойная чётность, переживает потерю двух дисков разом (аналог RAID6). zpool create tank raidz sda sdb sdc zpool create tank raidz2 sda sdb sdc sdd Целостность проверяется не fsck, а scrub — ZFS перечитывает блоки, сверяет контрольные суммы и чинит найденное за счёт избыточности: zpool scrub tank zpool status tank # прогресс и найденные ошибки Замена упавшего диска — без остановки пула: ...

July 22, 2026 · llexa

Архиваторы #5: bzip2 — где он ещё оправдан

bzip2 — блочный архиватор на BWT (Burrows-Wheeler Transform), долго был стандартом для .tar.bz2. Сжимает лучше gzip, но однопоточный и заметно медленнее современных алгоритмов. bzip2 -9 file.bin # максимальное сжатие → file.bin.bz2 bzip2 -k file.bin # сжать, оставив оригинал pbzip2 -p4 -9 file.bin # многопоточно, формат тот же Сравнение на 1 ГБ логов: gzip -9 12с 380МБ bzip2 -9 34с 290МБ xz -6 22с 290МБ zstd -19 18с 310МБ Степень сжатия на уровне xz, но в разы медленнее и без многопоточности из коробки. Оправдан сегодня по инерции: legacy-пайплайны, ждущие .bz2, патчи ядра Linux. Для новых задач — zstd или xz. ...

July 20, 2026 · llexa

chroot и arch-chroot: смена корня файловой системы

chroot меняет корень файловой системы для процесса — программа видит /mnt/rescue как /, а всё, что выше, ей недоступно. Классический сценарий — сломанный загрузчик: грузимся с LiveCD, монтируем раздел и чиним систему изнутри неё. mount /dev/sda2 /mnt for d in dev proc sys; do mount --bind /$d /mnt/$d; done chroot /mnt /bin/bash grub-install /dev/sda update-grub exit Три bind mount руками — то, что забывают чаще всего: без /dev и /proc внутри chroot откажутся работать даже базовые команды. В Arch Linux это автоматизировал arch-chroot из пакета arch-install-scripts — та же задача одной командой: ...

July 18, 2026 · llexa

LVM с нуля: pvcreate, vgcreate, lvcreate, lvextend

Без LVM размер раздела фиксирован разметкой диска — расширить его без даунтайма сложно. LVM добавляет промежуточный слой: физические тома (PV) объединяются в группу (VG), из которой нарезаются логические тома (LV) — их можно растягивать, пока в VG есть свободное место. pvcreate /dev/sdb /dev/sdc # физические тома из целых дисков vgcreate data_vg /dev/sdb /dev/sdc # группа томов lvcreate -L 50G -n data_lv data_vg # логический том 50 ГБ mkfs.ext4 /dev/data_vg/data_lv Расширение на лету, когда место закончилось: ...

July 18, 2026 · llexa

nmcli: NetworkManager из терминала

На серверах с NetworkManager настройки сети живут не в /etc/network/interfaces, а в connection-профилях самого NetworkManager. nmcli — способ управлять ими из терминала, без риска потерять единственный SSH-сеанс на неудачный ifconfig. nmcli device status # список интерфейсов и их состояние nmcli con show # все сохранённые подключения nmcli con up "Wired connection 1" # поднять nmcli con down eth0 # погасить Статический IP без правки конфигов руками: nmcli con mod eth0 ipv4.addresses 192.168.1.50/24 nmcli con mod eth0 ipv4.gateway 192.168.1.1 nmcli con mod eth0 ipv4.dns "8.8.8.8 1.1.1.1" nmcli con mod eth0 ipv4.method manual nmcli con up eth0 Изменения применяются сразу после con up — перезагрузка не нужна. ...

July 18, 2026 · llexa

lynis: аудит безопасности сервера одной командой

lynis — сканер безопасности для Linux/Unix без агента и без сети: работает локально, читает конфиги и состояние системы. На выходе — не список уязвимостей, а числовой hardening index и причина по каждой находке. apt install lynis # или git clone для последней версии lynis audit system # полный прогон, ~200 тестов lynis show tests # список проверок с ID lynis audit system --cronjob # тихий прогон для cron Результат — в /var/log/lynis.log и /var/log/lynis-report.dat. В конце — блок Suggestions с ID вида SSH-7408 и кратким пояснением. Категории: SSH-конфиг, права на файлы, устаревшие пакеты, параметры ядра — первый прогон на свежем сервере обычно выдаёт полсотни рекомендаций. ...

July 17, 2026 · llexa

rkhunter: охота за руткитами и бэкдорами

rkhunter (Rootkit Hunter) ищет то, что обычный антивирус на сервере не ловит: подмену системных бинарников, скрытые процессы, следы известных руткитов. Работает по базе сигнатур плюс сравнение с сохранённым эталоном — эталон нужно снять сразу после чистой установки. apt install rkhunter rkhunter --propupd # снять эталон после установки rkhunter --update # обновить базу сигнатур rkhunter --check --sk # проверка без пауз (--skip-keypress) Результат — в /var/log/rkhunter.log, предупреждения помечены [Warning]. Часть — стандартный шум (изменённые пути после апдейта пакетов, нестандартные права) — разобрать один раз и занести в /etc/rkhunter.conf через ALLOWHIDDENDIR. Для регулярного контроля — --cronjob вместо интерактивного режима. ...

July 17, 2026 · llexa

Новые версии: 10 июля — 17 июля

Новые релизы за неделю — только то, что важно для сервера. vscode 1.129.0 nginx 1.31.3 — nginx-1.31.3 mainline: фикс переполнения буфера при использовании map с конкатенацией строк. loki helm-loki-7.1.0 immich v3.0.3 — исправления багов, публикация в собственный F-Droid репозиторий. node_exporter v1.12.1 — фикс обработки флага perf-профайлера, опциональный сбор csrow ue_count в edac. postgres 19_BETA2 3x-ui v3.5.0 — MTProto Multi-Client, миграция SQLite → PostgreSQL, доработки под нагрузку до 500k. terminal v1.25.1912.0 prometheus v0.313.1 bottom 0.14.4 — фикс бага с колонками процессов в конфиге и хоткеем выхода. skim v5.1.0 eza v0.23.5 #linux #sysadmin #releases ...

July 17, 2026 · llexa