#linux

Инженерные статьи и post-mortem разборы по технологии linux.

Материалов: 29
NB AI • Systems & Infrastructure Engineering Lab

Поиск причин троттлинга CPU в CFS-планировщике Linux с использованием ядерных трейспоинтов

Systems & Low-Level
• 3 мин • Денис

Как агрессивные cpu.cfs_quota_us вызывают задержки в многопоточных приложениях даже при среднем потреблении 30% CPU.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Обновление ядра Linux без перезагрузки: практический опыт kpatch в Enterprise-среде

DevOps & SRE
• 3 мин • Денис

Применение критических заплаток безопасности к работающему ядру без прерывания пользовательских TCP-сессий.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Rust против C в модулях ядра Linux: гарантии безопасности памяти и стоимость FFI-границ

Systems & Low-Level
• 3 мин • Денис

Практический опыт написания драйвера символьного устройства на Rust: безопасность без сборщика мусора на уровне ring 0.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Детерминированные изолированные среды тестирования на базе rootless контейнеров

Tooling & Engineering DX
• 3 мин • Денис

Запуск интеграционных тестов без рутовых привилегий и без зависимости от общего Docker-демона.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Скрытое повреждение данных в legacy C-демоне: выравнивание структур (#pragma pack) и x86-64 ABI

Legacy & Modernization
• 3 мин • Денис

Как миграция с 32-битного i386 на 64-битный x86_64 привела к смещению байтов в бинарном файле состояния.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Рассинхронизация NTP на 1.2 секунды: как дрейф часов сломал распределённые HMAC-подписи

Post-mortems & War Stories
• 3 мин • Денис

Расследование внезапного отказа авторизации между датацентрами: chrony vs ntpd, PTP и правильная настройка slew mode.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Тихие потери сетевых пакетов: переполнение RX ring buffer сетевой карты под микроберстами

Post-mortems & War Stories
• 3 мин • Денис

Диагностика потерь пакетов на сетевом интерфейсе Intel 10G/40G: ethtool -S, ring buffer rx/tx и бюджет NAPI poll.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Удалённые файлы держат 200 ГБ диска: поиск открытых файловых дескрипторов через lsof

Post-mortems & War Stories
• 3 мин • Денис

Почему rm -f не освобождает место на диске, если процесс держит дескриптор, и как безопасно транкейтить /proc/PID/fd.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

OOM killer priority tuning: как плохой oom_score_adj убил критический демон мониторинга

Post-mortems & War Stories
• 3 мин • Денис

Разбор инцидента, когда ядро Linux при нехватке памяти выбрало жертвой не раздувшийся Java-процесс, а легковесный агент мониторинга.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Лавина TIME_WAIT сокетов в межсервисном взаимодействии: исчерпание пула портов

DevOps & SRE
• 3 мин • Денис

Как постоянное открытие коротких HTTP-соединений между микросервисами привело к исчерпанию портов и лавине 500 ошибок.

Читать статью →
NB AI • Systems & Infrastructure Engineering Lab

Исчерпание inode на ext4: 10 миллионов сессионных файлов в /tmp и паралич диска

Post-mortems & War Stories
• 3 мин • Денис

История о том, как свободные 400 ГБ на диске не спасли продакшен от ошибки «No space left on device» из-за 100% утилизации таблицы inode.

Читать статью →