en
Feedback
/usr/bin

/usr/bin

Open in Telegram

Канал для пользователей и администраторов Linux-систем: управление, инфраструктура, технические детали, новости и прочее. Реклама и цены: @gals_ad_bot Вопросы: @antoniusfirst @monitorim_it — канал о мониторинге ИТ

Show more
4 924
Subscribers
+924 hours
+157 days
+4730 days
Attracting Subscribers
Oct '26
October '26
+18
in 2 channels
September '26
+75
in 2 channels
Get PRO
August '26
+87
in 2 channels
Get PRO
July '26
+66
in 2 channels
Get PRO
June '26
+63
in 1 channels
Get PRO
May '26
+69
in 2 channels
Get PRO
April '26
+72
in 2 channels
Get PRO
March '26
+79
in 2 channels
Get PRO
February '26
+63
in 1 channels
Get PRO
January '26
+71
in 2 channels
Get PRO
December '25
+94
in 2 channels
Get PRO
November '25
+118
in 1 channels
Get PRO
October '25
+123
in 4 channels
Get PRO
September '25
+105
in 2 channels
Get PRO
August '25
+98
in 4 channels
Get PRO
July '25
+127
in 2 channels
Get PRO
June '25
+60
in 2 channels
Get PRO
May '25
+90
in 2 channels
Get PRO
April '25
+81
in 3 channels
Get PRO
March '25
+152
in 2 channels
Get PRO
February '25
+440
in 2 channels
Get PRO
January '25
+981
in 9 channels
Get PRO
December '24
+194
in 5 channels
Get PRO
November '24
+134
in 2 channels
Get PRO
October '24
+126
in 2 channels
Get PRO
September '24
+95
in 1 channels
Get PRO
August '24
+94
in 2 channels
Get PRO
July '24
+54
in 1 channels
Get PRO
June '24
+25
in 2 channels
Get PRO
May '24
+33
in 1 channels
Get PRO
April '24
+58
in 1 channels
Get PRO
March '24
+41
in 1 channels
Get PRO
February '24
+75
in 1 channels
Get PRO
January '24
+66
in 1 channels
Get PRO
December '23
+56
in 1 channels
Get PRO
November '23
+17
in 0 channels
Get PRO
October '23
+23
in 1 channels
Get PRO
September '23
+37
in 0 channels
Get PRO
August '23
+50
in 0 channels
Get PRO
July '23
+420
in 0 channels
Get PRO
June '23
+15
in 0 channels
Get PRO
May '23
+16
in 0 channels
Get PRO
April '23
+26
in 0 channels
Get PRO
March '23
+109
in 0 channels
Get PRO
February '23
+27
in 0 channels
Get PRO
January '23
+14
in 0 channels
Get PRO
December '22
+27
in 0 channels
Get PRO
November '22
+25
in 0 channels
Get PRO
October '22
+63
in 0 channels
Get PRO
September '22
+75
in 0 channels
Get PRO
August '22
+1 395
in 0 channels
Get PRO
July '22
+550
in 0 channels
Date
Subscriber Growth
Mentions
Channels
06 October+1
05 October+9
04 October+4
03 October+2
02 October+2
01 October0
Channel Posts
Address already in use: как найти, кто занял порт, и почему он не всегда освобождается сразу Сервис не запускается, потому что порт занят. Кажется, решение очевидно: найти PID и завершить процесс. Но иногда процесса уже нет, а порт всё ещё остаётся недоступен из-за состояния TIME_WAIT. В случае с Docker его может удерживать контейнер через docker-proxy. В статье разбираются основные сценарии этой ошибки и способы диагностики в Linux, macOS и Windows: как найти владельца порта через ss, lsof, netstat или PowerShell, правильно остановить systemd-сервис либо контейнер и отличить живой процесс от TCP-соединения, ожидающего завершения. Отдельная часть посвящена профилактике: SO_REUSEADDR, различиям его поведения в Linux и Windows, а также тому, почему его не следует путать с SO_REUSEPORT. Читать дальше на Хабре →

2
🐧 Microsoft представила WSL 3.0 с поддержкой запуска Linux-контейнеров в Windows Microsoft представила WSL 3.0: подсистема п
🐧 Microsoft представила WSL 3.0 с поддержкой запуска Linux-контейнеров в Windows Microsoft представила WSL 3.0: подсистема перешла на ядро Linux 6.18 и получила встроенный инструментарий WSL Containers для создания, сборки и запуска Linux-контейнеров. Новая утилита wslc умеет управлять жизненным циклом контейнеров и образов, ограничивать потребление CPU и памяти, настраивать виртуальные сети и проброс портов, работать с VHD и предоставлять контейнерам доступ к GPU. Для автоматизации предусмотрен API для C++ и C#, а для разработки — интеграции с MSBuild, CMake, VS Code Dev Containers и Aspire. Исходный код компонентов WSL опубликован на GitHub под лицензией MIT. Читать подробности на Хабре → @usr_bin_linux
891
3
📁 lf — быстрый файловый менеджер для терминала lf расшифровывается как list files. Это минималистичный файловый менеджер на
📁 lf — быстрый файловый менеджер для терминала lf расшифровывается как list files. Это минималистичный файловый менеджер на Go, ориентированный на управление с клавиатуры в стиле Vim. Проект запускается из одного бинарного файла, не требует дополнительных зависимостей и экономно расходует память. Асинхронные файловые операции не блокируют интерфейс даже при копировании или перемещении больших объёмов данных. Горячие клавиши, цвета и команды можно полностью настроить под себя, а недостающие функции — добавить с помощью обычных shell-команд. Клиент-серверная архитектура позволяет управлять несколькими запущенными экземплярами lf. Работает в Linux, macOS, BSD и Windows. Особенно пригодится тем, кто проводит большую часть времени в терминале и предпочитает клавиатуру мыши. Репыч на GitHub → @usr_bin_linux
906
4
«У меня CSV-файл размером 10 ГБ и всего 512 МБ оперативной памяти» — вопрос на собеседовании, который поставил меня в тупик Я
«У меня CSV-файл размером 10 ГБ и всего 512 МБ оперативной памяти» — вопрос на собеседовании, который поставил меня в тупик Я проходил собеседование на позицию Java-разработчика. Всё шло хорошо — я ответил на вопросы по Spring Boot, микросервисам и даже решил несколько задач в стиле LeetCode. Затем интервьюер откинулся назад и спросил: «Представьте, что у вас есть очень большой файл — допустим, CSV размером 10 ГБ. При этом вычислительные ресурсы сильно ограничены — например, всего 512 МБ оперативной памяти и одно ядро процессора. Как бы вы обработали этот файл, чтобы выполнить предварительную обработку данных и сохранить их в другом формате?» Я замер. Мысли в голове сменяли друг друга. Продолжение читайте в статье → @usr_bin_linux
1 138
5
Логи Linux В этом переводе разобраны типы логов, существующих в Linux и где их искать. Читать → @usr_bin_linux
Логи Linux В этом переводе разобраны типы логов, существующих в Linux и где их искать. Читать → @usr_bin_linux
1 305
6
Перенос Docker-контейнера между двумя Linux-хостами При смене Docker-хостов мы часто думаем: «Я копирую, перезапускаю — и всё». Но Docker-сервис — это не только образ: есть ещё тома, переменные окружения, порты, иногда база данных… и именно здесь всё ломается, если действовать слишком быстро. В статье описано как убедиться в том, что все правильно перенесено → @usr_bin_linux
1 396
7
Чем заменить MinIO? Многие команды ищут альтернативу MinIO после изменений вокруг Community Edition. Но выбрать S3-совместимо
Чем заменить MinIO? Многие команды ищут альтернативу MinIO после изменений вокруг Community Edition. Но выбрать S3-совместимое хранилище по описанию на сайте сложно: одинаковые галочки в таблице возможностей ещё ничего не говорят о поведении системы под реальной нагрузкой. Коллеги из РСХБ протестировали сразу три варианта — SeaweedFS, RustFS и российское решение «Закрома». Причём проверяли не только скорость чтения и записи, но и кластерную работу, заполнение диска, восстановление загрузки, удаление больших объектов, поддержку STS, шифрования, Object Lock и интеграцию с Keycloak. В статье не пытаются назвать универсального победителя. SeaweedFS показывает сильные результаты на чтении и больших объёмах, RustFS привлекает простотой миграции и скоростью, а «Закрома» — промышленной поддержкой и возможностью влиять на развитие продукта. Но у каждого варианта есть свои ограничения, которые важно учитывать до начала миграции. Полезный материал для тех, кто уже ищет замену MinIO или хочет заранее оценить возможные варианты. Читать дальше на Хабре → P.S. В комментах к статье рекомендуют посмотреть также на silo. @usr_bin_linux
1 543
8
PatchMon Серверы работают, мониторинг зелёный, а обновления пакетов ждут своего часа. Желательно понимать, на каких машинах и
PatchMon Серверы работают, мониторинг зелёный, а обновления пакетов ждут своего часа. Желательно понимать, на каких машинах и сколько уже ждут. PatchMon — open-source-проект для учёта пакетов и управления обновлениями на серверах. В одном интерфейсе можно посмотреть установленные версии, доступные обновления, подключённые репозитории и состояние хостов. На машины устанавливается агент, который сам подключается к серверу PatchMon. Открывать входящие порты на наблюдаемых хостах для его работы не требуется. Поддерживаются apt, dnf, yum, apk, pacman и FreeBSD pkg. С обновлениями тоже есть чем управлять: сначала посмотреть план изменений через dry-run, затем одобрить запуск и назначить окно обслуживания. Можно выбирать отдельные пакеты, наблюдать за выполнением в браузере и потом поднять историю — что обновляли, кто согласовал и чем всё закончилось. Дополнительно есть проверки через OpenSCAP и Docker Bench for Security, инвентаризация Docker, роли доступа и вход через OIDC. Развернуть у себя можно через Docker Compose, лицензия — AGPLv3. В PatchMon можно собрать весь процесс обновления в одном месте: от списка отставших серверов до результата установки. Репыч на Гитхаб @usr_bin_linux
1 175
9
Семь привычек Linux-инженера, которые спасают прод Внутри — семь разборов сбоев: от прав на домашнюю директорию до деградации производительности после обновления ядра. Интересный кейс про бэкапы между дата-центрами. Скорость упиралась примерно в 1 Гбит/с, и ровная полка на графике выглядела как сетевое ограничение. Но отдельный тест показал, что канал спокойно отдаёт свои 5 Гбит/с. Дальше выяснилось, что rsync поверх SSH упирался в производительность одного ядра, а сжатие и дедупликация добавляли дополнительную нагрузку. Читать дальше на Хабре → @usr_bin_linux
1 172
10
Уже завтра! Приходите на наш вебинар. Вместе с Александром Тварадзе расскажем про Pandora FMS платформы для мониторинга IT-инфраструктуры Если вы используете (или использовали) PRTG, WhatsUp Gold или SolarWinds и рассматриваете альтернативные решения для мониторинга IT-инфраструктуры — приходите на вебинар. 📅 30 сентября ⏰ 10:00 МСК 📍 Онлайн 👉 Зарегистрируйтесь, чтобы получить напоминание и ссылку на вебинар. Ссылка на подключение придёт в Telegram-бот за 40 минут до начала вебинара.
1 188
11
webtop Интересный проект от LinuxServer.io. Поднимаешь контейнер на сервере и заходишь через браузер в графическое окружение: окна, терминал, файловый менеджер и приложения. Всё выполняется на сервере, а в браузер транслируется рабочий стол через Selkies. Есть образы на базе Alpine, Ubuntu, Debian, Fedora и Arch с разными окружениями: XFCE, KDE, MATE, i3 и LXQt. Поддерживаются x86-64 и ARM64. По умолчанию тег latest запускает Alpine с XFCE. Из приятного — передача файлов, общий буфер обмена, звук и возможность подключить GPU для аппаратного ускорения. Домашний каталог можно сохранить в volume, чтобы настройки и файлы переживали пересоздание контейнера. Интересен сценарий удалённого рабочего места для периодических задач: открыть GUI-утилиту, поработать с файлами или держать отдельное окружение для демонстраций. На клиентской машине достаточно браузера. Как обычно, есть нюанс: по умолчанию аутентификация отключена, а внутри доступен терминал с беспарольным sudo. Поэтому перед публикацией такого рабочего стола в интернете нужно настроить защищённый доступ. Репыч на Гитхаб @usr_bin_linux
1 285
12
Docker для параноика: организация SSH‑доступа для rootless‑контейнера без передачи приватного ключа Примонтировать ~/.ssh в к
Docker для параноика: организация SSH‑доступа для rootless‑контейнера без передачи приватного ключа Примонтировать ~/.ssh в контейнер с флагом :ro — и вроде как позаботился о безопасности. Только приватный ключ при этом всё ещё можно прочитать и утащить. От этого read-only не спасает. В этом разборе на Хабре рассказывают о том, как дать rootless-контейнеру SSH-доступ через ssh-agent, оставив сам ключ на хосте. Пригодится для автоматизации, работы с приватными репозиториями и ИИ-агентов, которым нужен Git. Rootless Docker имеет свои нюансы: UID пользователя внутри контейнера преобразуется в другой UID на хосте, поэтому просто пробросить сокет агента недостаточно. Оказывается, доступ к сокету всё ещё позволяет пользоваться загруженным ключом. Если контейнер взломали, злоумышленник сможет выполнять доступные этой SSH-идентичности операции, пока имеет доступ к агенту. Сам приватный ключ через штатный протокол агента при этом не выдаётся. @usr_bin_linux
2 193
13
Netronome — self-hosted-мониторинг качества сети и интернет-каналов Если Speedtest Tracker, который я упоминал одном из прошл
Netronome — self-hosted-мониторинг качества сети и интернет-каналов Если Speedtest Tracker, который я упоминал одном из прошлых постов, в первую очередь собирает историю тестов скорости, то Netronome идёт дальше: объединяет проверку пропускной способности, диагностику маршрутов и мониторинг удалённых серверов. Что умеет Netronome: — запускать тесты через Speedtest.net, LibreSpeed и iperf3; — выполнять проверки автоматически по расписанию; — сохранять историю скорости, задержки и других показателей; — непрерывно контролировать потерю пакетов через ICMP; — анализировать маршрут с помощью traceroute и MTR; — показывать статистику потерь отдельно по каждому узлу маршрута; — контролировать DNS-запросы; — собирать с удалённых серверов загрузку CPU, память, диски, температуру и сетевой трафик; — отправлять уведомления в Telegram, Discord, email и другие сервисы через Shoutrrr. Для распределённого мониторинга используются легковесные агенты. Их можно установить на домашних серверах или удалённых площадках, а результаты свести в один веб-интерфейс. Есть интеграция с Tailscale и автоматическое обнаружение агентов внутри tailnet — удобно, если не хочется публиковать служебные порты в интернете. Netronome потенциально может подойти в сценариях: — контроля качества домашнего или офисного интернет-канала; — сравнения фактической скорости с тарифом провайдера; — мониторинга связи между филиалами через iperf3; — поиска участка маршрута, на котором начинаются потери; — наблюдения за серверами без развёртывания полноценного стека Prometheus; — контроля трафика VPN-контейнеров, например Gluetun. Само приложение написано на Go, а интерфейс — на React и TypeScript. Frontend и backend упакованы в один исполняемый файл. По данным разработчиков, типичное потребление памяти составляет около 35 МБ. Для хранения можно использовать SQLite или PostgreSQL. Развернуть Netronome можно готовым бинарником либо в Docker. В контейнерный образ уже включены iperf3, LibreSpeed CLI, traceroute, MTR и vnstat. Есть встроенная авторизация, OIDC и ограничение доступа по IP. Из нюансов: тесты скорости создают реальную нагрузку на канал, поэтому расписание нужно выбирать аккуратно. Для полноценной работы MTR потребуются дополнительные привилегии, а некоторые функции при установке без Docker зависят от внешних утилит. Основная функциональность распространяется на бесплатной основе, но разрабы отдельно предлагают платный набор дополнительных тем интерфейса. Репыч на GitHub @usr_bin_linux
1 766
14
MinIO заархивировал открытую версию. Что остаётся тем, у кого он уже развёрнут Июнь 2025 года. Из бесплатной сборки убрали административную часть веб-консоли. Остался просмотр объектов. Политики бакетов, правила жизненного цикла, пользователи и настройки сервера уехали в платную версию, в бесплатной остался только консольный клиент mc. Октябрь 2025 года. Прекратилась публикация готовых сборок и образов. Остались исходники. Декабрь 2025 года. Репозиторий переведён в режим поддержки. Новых возможностей нет, исправления безопасности рассматриваются выборочно. Тогда же появилась редакция AIStor Free, бесплатная, с полным набором возможностей, но по проприетарной лицензии и только в одноузловом режиме, без распределённого кластера и отказоустойчивости. Февраль 2026 года. В описании репозитория появилась строка о том, что он больше не поддерживается. 25 апреля 2026 года. Репозиторий заархивирован и доступен только для чтения. То есть бесплатный вариант у MinIO остался, просто он больше не открытый и не распределённый. Для одного узла AIStor Free закрывает почти всё, включая консоль. Для кластера из нескольких узлов бесплатного пути не осталось. Ещё пользуетесь MiniO? Тогда прочитайте эту статью на Хабре → @usr_bin_linux
1 473
15
Pandora FMS — замена ушедших PRTG, WhatsUp Gold и SolarWinds 🔥 Проверенная временем платформа мониторинга, доступная для исп
Pandora FMS — замена ушедших PRTG, WhatsUp Gold и SolarWinds 🔥 Проверенная временем платформа мониторинга, доступная для использования в России . Более 20 лет на рынке. 📅 30 сентября в 10:00 МСК приглашаем на бесплатный вебинар по Pandora FMS, где мы проведем презентацию возможностей платформы для мониторинга IT-инфраструктуры. Если вы используете PRTG, WhatsUp Gold или SolarWinds и рассматриваете альтернативные решения для мониторинга IT-инфраструктуры — приходите на вебинар. В рамках встречи Александр Тварадзе, представитель Pandora FMS, проведёт презентацию платформы и расскажет о её возможностях. Разберём: 🚀 мониторинг сетевой инфраструктуры и оборудования; 🚀 серверы, приложения и базы данных; 🚀 мониторинг SCADA-систем и промышленной инфраструктуры; 🚀 сбор логов и работу с событиями; 🚀 виртуализацию и облачные среды; 🚀 инвентаризацию IT-инфраструктуры и интеграцию с CMDB; 🚀 встроенный Service Desk и управление заявками; 🚀 оповещения, отчёты и панели мониторинга; 🚀 автоматизацию и интеграции через API; 🚀 распределённый мониторинг и масштабирование; 🚀 возможности Pandora FMS для комплексного мониторинга IT-инфраструктуры. Также рассмотрим, чем Pandora FMS отличается от PRTG, WhatsUp Gold и других систем мониторинга. Спикеры: Александр Тварадзе — Pandora FMS Антон Касимов — Gals Software, региональный партнёр Pandora FMS 📅 30 сентября ⏰ 10:00 МСК 📍 Онлайн Участие бесплатное. 👉 Зарегистрируйтесь, чтобы получить напоминание и ссылку на вебинар. Ссылка на подключение придёт в Telegram-бот за 40 минут до начала вебинара.
1 422
16
PortPal — наглядный контроль локальных портов для разработчика Ошибка EADDRINUSE: address already in use знакома, думаю, мног
PortPal — наглядный контроль локальных портов для разработчика Ошибка EADDRINUSE: address already in use знакома, думаю, многим. Дальше обычно начинаются lsof, netstat, поиск PID и ручное завершение забытого процесса. Небольшой open-source-проект PortPal превращает всё это в наглядное десктопное приложение. Он показывает открытые TCP-порты, связанные процессы, PID, активные соединения и проект, из которого был запущен сервис. Что умеет PortPal: — обновлять список занятых портов в реальном времени; — определять популярные сервисы и фреймворки: React, Vite, Angular, Django, PostgreSQL, Redis и другие; — находить проект по package.json, Cargo.toml, go.mod, pyproject.toml и другим маркерам; — завершать мешающий процесс одним кликом; — перезапускать сервис, если удалось определить команду запуска; — строить интерактивную карту соединений между локальными сервисами; — сохранять события запуска, остановки и изменения сетевой активности; — работать в системном трее. Особенно зашла карта портов на D3.js. Она может пригодиться при локальной разработке микросервисов, когда одновременно работают API, frontend, базы данных, брокеры и несколько вспомогательных компонентов. Приложение написано на Tauri 2: системная часть работает на Rust, интерфейс — на React и TypeScript. Заявлена поддержка Windows, macOS и Linux, лицензия — MIT. При этом проект пока молодой: текущая версия — 0.2.0, а распознавание фреймворков во многом основано на стандартных номерах портов. В целом, удобный локальный инструмент, но не замена полноценному сетевому мониторингу. И с кнопкой Kill All, разумеется, стоит обращаться аккуратно. Репыч на GitHub @usr_bin_linux
1 393
17
Скрипт для Linux, переназначающий клавиши Shift, Backspace, стрелки и мышку на клавиши домашнего ряда Не знаю зачем вам это м
Скрипт для Linux, переназначающий клавиши Shift, Backspace, стрелки и мышку на клавиши домашнего ряда Не знаю зачем вам это может быть нужно, но вдруг заинтересует и захочется меньше стучать по клавишам 🙃 Автор пишет: При печати руки сдвигаются или отгибается кисть к клавишам Shift, Backspace, стрелкам. Это неизбежные перемещения, даже если вы печатаете вслепую. В свое время я задался вопросом, а насколько эти движения неизбежные. С помощью autohotkey написал скрипт, который переназначил Shift прямо под мизинцы, то есть на клавиши "A" и ";". Теперь мне не надо было изгибать кисть к шифтам, чтобы печатать заглавные буквы и спецсимволы. Затем я переназначил Backspace, затем Enter, как самые часто используемые клавиши, требующие изгибания кисти вправо. И так за пару месяцев я полностью перенес все функциональные клавиши на слои. Ушел от autohotkey и нейросетью написал программу на C#. Ощущения от работы за компьютером сильно изменились. И обычный способ печати для меня теперь крайне не эффективен. А затем я перешел на Zorin OS. Написал скрипт для keyd с таким же функционалом переназначения клавиш. Спустя еще пару месяцев, решил попробовать переназначить управление мышкой тоже на клавиши домашнего ряда. Keyd не поддерживал управление мышкой на том уровне, что я хотел. И после некоторых поисков я нашел Kanata, которая позволила написать скрипт с управлением мышкой. Теперь управление курсором и скролл текста тоже на домашнем ряде. И если раньше для навигации по тексту я много стучал по клавишам в слое стрелок, то теперь в слое мышки я могу двигать курсор с меньшим количеством нажатий. Данную технику печати на клавиатуре, когда все функции управления уже под пальцами, я назвал zero reach typing. Переводится как печать с нулевыми дотягиваниями пальцами. Далее приведу скрипт и картинки с пояснениями как работает скрипт. Так как скрипт зависит от типа клавиатуры, то будет две версии скрипта: для ANSI клавиатуры (клавиша Enter стоит горизонтально); для ISO клавиатуры (клавиша Enter стоит вертикально). Читать дальше на Хабре @usr_bin_linux
1 335
18
Speedtest Tracker — свой мониторинг качества интернет-канала Когда интернет периодически тормозит, одной проверки через Speed
Speedtest Tracker — свой мониторинг качества интернет-канала Когда интернет периодически тормозит, одной проверки через Speedtest может быть недостаточно. К моменту проверки проблема уже исчезает, а для обращения к провайдеру нужны цифры и история. На просторах Гитхаба нашлось интересное self-hosted-решение — Speedtest Tracker. Оно автоматически запускает тесты скорости по расписанию, сохраняет результаты и показывает, как менялось качество соединения. Что можно отслеживать: — скорость загрузки и отдачи; — ping и jitter; — потерю пакетов; — успешные и неудачные проверки; — отклонения от заданных пороговых значений. В интерфейсе есть графики, история запусков и экспорт данных в CSV. Можно выбрать конкретный сервер Speedtest или задать список серверов, чтобы результаты не зависели от одной точки измерения. Если скорость или задержка вышли за допустимые пределы, Speedtest Tracker может отправить уведомление по электронной почте, через webhook или Apprise. Последний позволяет подключить Telegram, Discord, Ntfy, Pushover и множество других сервисов. Для интеграции с существующим мониторингом есть: — endpoint с метриками Prometheus; — готовый дашборд для Grafana; — отправка данных в InfluxDB 2.x. Разворачивается в контейнере. Для небольшой инсталляции достаточно SQLite, а для более серьёзного стенда можно использовать MariaDB, MySQL или PostgreSQL. Самый очевидный вариант использования Speedtest Tracker для мониторинга домашнего подключения, каналов в филиалах, резервных линий и точек выхода в интернет. Также пригодится, если нужно подтвердить, что провайдер систематически не выдерживает заявленные параметры. Но, как всегда, есть нюанс: тест скорости сам создаёт заметную нагрузку на канал. Поэтому интервал запуска нужно выбирать осознанно. Кроме того, результат характеризует маршрут от сервера, на котором запущен Speedtest Tracker, до выбранного тестового узла. В итоге получается домашний SLA-мониторинг. Репыч на GitHub Документация Интеграция с Prometheus @usr_bin_linux
1 451
19
HUATUO — eBPF-наблюдаемость и автоматическая диагностика ядра Linux HUATUO — open source-платформа для глубокой наблюдаемости
HUATUO — eBPF-наблюдаемость и автоматическая диагностика ядра Linux HUATUO — open source-платформа для глубокой наблюдаемости Linux, созданная в DiDi (китайская служба такси). Она работает на уровне ядра и помогает разбирать проблемы, которые сложно диагностировать с помощью обычных метрик приложений: задержки планировщика, блокировки процессов, memory reclaim, OOM, сетевые потери, аномалии дискового I/O и всплески системного CPU. Под капотом HUATUO работают eBPF, kprobe, tracepoint и ftrace. Инструмент собирает данные без модификации приложений и может автоматически связывать их с Kubernetes-контейнерами, labels и annotations. В HUATUO есть несколько режимов работы: Metrics — постоянный сбор показателей CPU, памяти, сети, планировщика и дисковой подсистемы. Метрики публикуются в формате Prometheus. Events — фиксация событий ядра: OOM, soft lockup, hung task, packet drop, аномальный memory reclaim и сетевые задержки. AutoTracing — автоматический запуск углублённой диагностики при обнаружении аномалии. Например, при резком росте CPU sys, накоплении процессов в D-state, всплеске аллокаций памяти или проблемах с I/O. Continuous Profiling — построение flame graph и анализ on-CPU, off-CPU и memory-профилей для C, C++, Go, Java и Python. AutoTracing выглядит особенно полезным: детальная диагностика включается не после обращения пользователя, а непосредственно в момент срабатывания алерта. В результате сохраняются call stacks, список процессов, контекст контейнера и flame graph, необходимые для последующего RCA. HUATUO нативно интегрируется с Prometheus, Grafana, Elasticsearch и Pyroscope. Репыч на GitHub Документация @usr_bin_linux
2 607
20
Как я сделал Telegram‑бота для управления Linux‑серверами через SSH Мне довольно часто нужно было зайти на свой сервер: посмо
Как я сделал Telegram‑бота для управления Linux‑серверами через SSH Мне довольно часто нужно было зайти на свой сервер: посмотреть какие‑то данные, проверить его состояние или обновить один из сервисов. Каждый раз для этого приходилось брать ноутбук, открывать SSH‑клиент, подключаться к серверу и только потом выполнять нужные команды. Ради небольшой операции это занимало больше времени, чем хотелось. Поэтому я решил сделать Telegram‑бота, который сможет подключаться к нужному мне серверу по SSH и выполнять команды, которые я использую чаще всего. Идея была простой: открыть Telegram, выбрать сервер, выполнить нужное действие и сразу получить результат. Сначала мне казалось, что вся схема будет выглядеть примерно так: Читать дальше на Хабре @usr_bin_linux
1 863