Обновить
301.18

Linux *

Пишем под *nix

Сначала показывать
Порог рейтинга
Уровень сложности

Enterprise мониторинг с нуля: Prometheus + Grafana для FastAPI приложения

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели9.2K

После того как ваше веб-приложение попадает в продакшн, самый важный вопрос — а как оно работает прямо сейчас? Логи дают ответ постфактум, но хочется видеть проблемы до того, как пользователи начнут жаловаться.

В этой статье я расскажу, как построил полноценную систему мониторинга для Peakline — FastAPI приложения для анализа Strava данных, обрабатывающего тысячи запросов в день от спортсменов по всему миру.

Читать далее

Можно ли было обнаружить бэкдор XZ при более продуманной работе с пакетами в Git и Debian?

Уровень сложностиСредний
Время на прочтение23 мин
Охват и читатели5.6K

Обнаружение бэкдора в XZ Utils весной 2024 года поразило опенсорс-сообщество и подняло серьёзные вопросы о безопасности цепочки поставок ПО. В этом посте мы изучим, могло ли улучшение практик работы с пакетами Debian помочь в выявлении этой угрозы, приведём руководство по аудиту пакетов и предложим улучшения на будущее.

Бэкдор XZ в версиях 5.6.0/5.6.1 быстро попал во многие крупные дистрибутивы Linux наподобие Debian и Fedora, но, к счастью, не добрался до многих реальных пользователей, потому что благодаря героическому усердию Андреса Фройнда релизы с бэкдором были быстро удалены. Нам крайне повезло, что мы выявили регрессию производительности SSH в полсекунды, уделили время её трассировке, обнаружили зловредный код в загружаемой SSH библиотеке XZ и быстро сообщили о нём различным командам безопасников для принятия быстрых координированных мер защиты.

Этот эпизод заставил разработчиков ПО задаться следующими вопросами:

Почему ни один из упаковщиков дистрибутивов Linux не заметил ничего странного при импорте новой версии XZ 5.6.0/5.6.1 из апстрима?
Легко ли проводить аудит современной цепочки поставок в самых популярных дистрибутивах Linux?
Возможно ли наличие других подобных бэкдоров, которые мы пока не выявили?

Я разработчик Debian Developer, поэтому решил провести аудит пакета xz в Debian, поделиться в этом посте своей методологией и находками, а также предложить способы повышения безопасности цепочки поставок конкретно в Debian.

Стоит отметить, что мы ограничимся только изучением способа импорта ПО дистрибутивом Debian из его апстрима, а также его распространения среди пользователей Debian. При этом мы никак не затронем тему оценки соответствия проекта апстрима best practices по безопасности разработки ПО. В этом посте мы не будем и говорить о том, какие меры следует предпринять на компьютере с Debian, чтобы гарантировать его защиту, потому что таких руководств и так уже много.

Читать далее

Сетевое хранилище для дома

Время на прочтение9 мин
Охват и читатели21K

Это начиналось как эксперимент, но показало определенную практическую полезность.
Старый регистратор, переделанный в сетевое хранилище, вот уже год бесперебойно обеспечивает хранение данных.

Всё бы хорошо, вот только диск в нем внутри - единственный, а USB-порты, чтобы подключить больше дисков - медленные.
Кто еще ни разу не слышал, как в один прекрасный день диск вдруг делает "цок-цок-цок" - и больше диска нет? И когда это произойдет - не предскажет никакой SMART: может, никогда, а может - через пару минут.

Во взрослых системах для этого существуют RAID-массивы, с корзинами дисков, гудением вентиляторов и прочими сопутствующими радостями.
Для SOHO тоже придумали такие ящики, со встроенной корзиной - и непременными вентиляторами. Куда ж без вентиляторов?

Захотелось сделать почти такое же, но маленькое и бесшумное.

Читать далее

Systemd-rc — мост для тех кто привык к Systemd

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели13K

Мост для тех кто привык к Systemd. Без эмуляции, без Systemd-зависимостей. Только переводит команды.

Читать далее

Библиотека Eremex Controls для Avalonia UI — Версия 1.2 — Октябрь 2025

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели10K

На прошлой неделе мы выпустили обновление кроссплатформенной библиотеки контролов Eremex Controls для Avalonia UI. О новых ее возможностях расскажем в этой статье, но уже в рамках нового корпоративного блога нашей компании Эремекс.

Читать далее

Минималистичные дистрибутивы Linux: как выбрать систему, которая не подведет

Время на прочтение11 мин
Охват и читатели15K


Привет! На связи Слёрм и Кирилл Казарин, DevOps and SRE global manager в RingCentral Inc. Сегодня мы немного рассмотрим мир минималистичных дистрибутивов Linux.

Наша цель — разобраться, какие из них лучше всего подходят для систем, работающих в режиме 24/7/365, с повышенными требованиями к отказоустойчивости, например: встраиваемые устройства, edge-вычисления, контейнерные хосты, сетевые шлюзы и просто о легковесные сервера. Ключевые требования к таким системам: быстрый старт, минимальный след на диске, и, что критически важно, устойчивость к внезапному отключению питания.

Читать далее

Ускоряем навигацию в 5 раз: CD-меню для частых папок

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели10K

Привет, Хабр! Сколько раз за день Вы вводите cd ~/projects/current-project/src/components/very-long-folder-name, чтобы просто перейти в нужную директорию? Такая навигация в терминале отнимает кучу времени и сил, теряется фокус. В данной статье хочу поделиться простым bash-скриптом, который покажет Вам пронумерованный список избранных папок и позволит переходить в них одной цифрой.

Читать далее

.Net GRPC, или мульти-стек в проекте

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели5K

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

Начинали мы с нуля, с эскизов. Задача была реализовать систему, обладающую следующими функциональными и техническими требованиями:

поддержка разговора с абонентом в режиме реального времени
адаптация на высокую нагрузку + масштабируемость (тысячи одновременных звонков)
доп. фичи, в виде отправки расшифровки разговора абоненту, текстовые нотификации в телеграмм и прочее.

Читать далее

Как быстро избавиться от лагов на сервере по методике RED S.O.S

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели8K

Представьте: вы получаете алерт "сервер тормозит" или замечаете странные лаги в приложении. Отставить панику)) В этой статье мы разберем, как провести технический осмотр Linux-сервера и найти корень проблемы без углубления в тонны логов.

Сейчас расскажем вам про методику RED S.O.S. - структурированный подход, который превращает хаотичную проверку в системный диагноз. Это ваш чеклист для экстренного реагирования. Он не заменяет системы мониторинга (Prometheus, Zabbix), но дает моментальный снимок здоровья системы.

Фокус здесь на ключевых ресурсах: Resources (Ресурсы), Errors (Ошибки), Dependencies (Зависимости)

Читать далее

Мой первый pet-проект: процесс-менеджер synd3

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели8.4K

Всем привет!

Пишу этот пост, чтобы поделиться своим опытом и получить критику или советы от людей с большим опытом.

Мне 22 года, я из Латвии. По образованию я судовой механик, но уже около 4 лет увлекаюсь программированием. Долгое время это оставалось хобби: пробовал сайты, простые игры — но они не приносили настоящего удовольствия. Я считал, что в программировании нужно было разбираться ещё со школы, и долго не верил, что могу найти себя в этой сфере.

Переломный момент наступил, когда я заинтересовался системным программированием. Каждый раз, когда узнаю, как работает низкоуровневая часть ОС, у меня будто открывается новый мир. Особенно зацепила тема процессорного планирования: все говорят «железо, CPU, видеокарта», но на практике даже реализация планировщика процессов может заметно влиять на производительность.

Читать далее

Всё-таки свободное ПО не победило

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели47K

(Перевод моего выступления на  P.I.W.O в июне, слегка подчищенный и приближенный к формату блога).

…звучит как-то не очень. Я сделала все эти слайды в Inkscape с ПК под управлением KDE Linux, плюс я регулярно пользуюсь Firefox. Но это всего лишь я. А что насчёт вас? Вы используете свободное ПО? Поднимите руки! [в аудитории поднимаются руки] Конечно же! Что за чепуха, «Свободное ПО не победило». Кто-то подменил мои слайды… Эй, ведущий конференции!

Ведущий: В другом каталоге.

[Перехожу в каталог с названием другой каталог и открываю файл твои слайды тупица.pdf]

Вот они мои слайды.

Всех приветствую, меня зовут Дорота, и сегодня я буду говорить о том, как …

Читать далее

Zorin OS: мостик в мир Linux для тех, кто не готов расставаться с Windows

Время на прочтение6 мин
Охват и читатели25K

В мире - множество дистрибутивов Linux. Один из них Zorin OS. Это ОС для тех, кто не хочет ломать голову при переходе с Windows или macOS. Система выглядит привычно, работает быстро и не требует возни с терминалом. 15 октября 2025 года вышла новая версия — Zorin OS 18. В ней ещё больше внимания к удобству, внешнему виду и мелочам, из которых складывается комфорт. Сейчас расскажем, что изменилось и почему эта версия может стать идеальной для тех, кто давно подумывает попробовать Linux.

Читать далее

Процессорный модуль Мурена ПМ5. Обзор

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели5.8K

Итак, перед Вами процессорный модуль отечественной разработки, основой которого является четырёхядерный SoC архитектуры RISC V JH7110 производства Поднебесной.

Расположен SoC примерно в центре платы, ближе к ламельному разъёму, использующемуся для установки процессорного модуля (ну или нескольких, если Вам интересна такая конфигурация) на Вашей несущей плате. На фотографии маркировка на JH7110 прикрыта небольшим радиатором. В случае напряжённого теплового режима единым радиатором с возможностью активного охлаждения вместе с SoC накрываются ещё SDRAM, eMMC и многоканальный преобразователь питания. Для крепления такого умощнённого радиатора предназначены четыре отверстия, расположенные прямоугольником.

Два отверстия по краю платы, противоположному ламелям, предназначены для дополнительной фиксации процессорного модуля в разъёме стандарта DDR4 SODIMM P260. В принципе, плата нормально фиксируется штатными лапками разъёма (для чего по коротким сторонам примерно посередине сделаны прямоугольные вырезы), как положено модулю памяти, но для мобильных применений да ещё и с увеличенным радиатором дополнительное крепление необходимо. Разъёмы SODIMM P260 существуют всякие, горизонтальные, вертикальные и наклонные, с разным расстоянием между модулем и материнской платой, есть даже сдвоенные. Я бы не рекомендовал с нашим модулем использовать наклонные, вертикальные - только с дополнительным креплением противоположного ламелям края. Самое лучшее – горизонтальные, зазор между модулем и несущей выбирайте сами, исходя из высоты установленных под ПМ компонентов. Компоненты модуля, расположенные на нижней стороне платы, укладываются в требования по высоте любого из разъёмов: низкопрофильного, обычного и высокого. Не забудьте только про тепловыделение деталей под модулем – условия вентиляции там – хуже не придумаешь.

Читать далее

Ближайшие события

Некрокомпиляция или как собрать OpenWatcom для QNX4 под Debian 12 и прикрутить его к Eclipse

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели6.9K

Меня зовут Ярослав Бомбов и я более 30 лет занимаюсь созданием АСУТП. Как вы понимаете жизненные циклы в АСУТП штука длительная и иногда возникают задачи что-то добавить в систему работающую уже лет 20. И именно такой случай произошел - возникла необходимость изменить код в контроллере под управлением QNX4.

Можно конечно было поговорить на тему "вы в каком морге этого Франкенштейна получали туда и обращайтесь", но при ближайшем рассмотрении оказалось что код мой собственный ;). Самое простое решение открыть mcedit, что-то поправить и собрать в самом QNX4, но для начала надо вспомнить разобраться как все работает, а это удобней делать в современных IDE. Поиск бинарников OpenWatcom (OW) под линукс дал ровно два архива которые в моей системе не заработали. Поэтому решено действовать по принципу - лучше день потерять, потом за пять минут долететь.

Полетели

Свой прокси DNS сервер для обхода санкций зарубежных сайтов(с использованием VPS)

Время на прочтение4 мин
Охват и читатели50K

Безусловно, тема обхода ограничений изнутри страны сейчас актуальна. Но что делать, если нужно открыть сайты, которые заблокировали пул IP-адресов из РФ? Например, было интересно создать аналог DNS‑сервера вроде comss, который открывает доступ к заблокированным AI, игровым серверам и тому подобному, с чем не смогут помочь обходы DPI (Возможно, эксперты напишут замечания в комментариях).

Один из возможных способов, который получилось реализовать у меня, представлен ниже.

Нам понадобится VPS в локации, через которую мы хотим быть видимы для нужных нам сервисов.

Для примера можно вспомнить Twitch, который заблокировал доступ к просмотру стримов в качестве 1080p и 1440p для пользователей из РФ.

Идём на страницу справки по бета‑тестированию качества 2k на Twitch и смотрим регионы, в которых оно доступно.

Читать далее

QuasarLinux: когда хочется свободы и удобства

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели8.1K

OpenRC + AUR + Wine с DXVK/VKD3D + модульный TUI-установщик. Всё это — QuasarLinux, основанный на Artix, но независимый от него.

Читать далее

Linux DFIR: шпаргалка кибердетектива (CentOS/RHEL)

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6K

Эта шпаргалка — быстрый рабочий инструмент для аналитиков DFIR/Blue Team и администраторов, которым нужно провести первичный live response в Linux: зафиксировать состояние, собрать артефакты, выделить аномалии и подготовить базу для дальнейшей форензики (off‑host анализ образов, таймлайнов и журналов).

Принципы работы аналитика: 

минимизируем изменения на целевой системе;
всё, что собираем, хешируем;
фиксируем контекст (версию ОС, локаль/часовой пояс, сетевое окружение);
по возможности работаем из однопользовательской сессии с ограниченными правами, повышая привилегии только точечно.

Читать далее

«Fallout Terminal»: Robotron 1715М или наш ответ Vault-Tec родом из ГДР

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели15K

Эта статья — про компьютер времён «инжалид дежице». В определённом смысле уже по этому, на первый взгляд, бессмысленному набору букв можно определить эпоху, к которой относится компьютер на картинке. В статье мы рассмотрим этимологию этого любопытного сочетания, а также поговорим о компьютере «Robotron 1715M», работающем под управлением операционной системы SCP 3.0 (TOS/M).

Любопытно использовать инструмент 80-х годов для выхода в интернет в следующем столетии. Мы проведём эксперимент по наладке коммуникации с внешним миром при помощи стандарта V.24 и чудом найденного эмулятора терминала, который распахнул интерфейсное окно в мир посредством ОС Linux.

Принято считать, что удел «Роботрона 1715М» — контора, текстовые редакторы и таблицы данных. В нём нет ни графического режима, ни звука, но мы всё же вспомним, какие на нём были игры: половим мышей, погоняем на ралли, раскинем картишки и «порулим» небольшой державой.

Помимо этого, разумеется, заглянем внутрь системного блока. Заглянем?

За мной, читатель (с)

Система персональных шпаргалок прямо в терминале

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели13K

Привет, Хабр! Часто ли Вы сталкиваетесь с необходимостью искать в закладках/заметках "ту самую" важную, но редко необходимую команду? git log, который Вы не использовали полгода или спасительный docker compose с десятком флагов. Нередко подобный поиск превращается в пятиминутный квест.

В статье напишем функцию cheat, которая дополнит терминал личной "базой знаний" с Вашим личным перечнем команд. Вводим cheat docker - получаем проверенный список команд мгновенно, без поиска в браузере и чтения мануалов.

Читать далее

Ubuntu в Windows Subsystem for Linux (WSL)

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели11K

Если в качестве основной (или единственной) операционной системы используется Windows, самым быстрым и удобным способом начать пользоваться Ubuntu является использование встроенного ядра Linux прямо внутри Windows.
Эта функция, доступная в составе Windows, позволяет обойтись без гипервизора виртуальных машин и без настройки мультизагрузки (dual-boot, multi-boot). Ядро Linux запускается в лёгкой служебной виртуальной среде, основанной на компонентах Hyper-V, что обеспечивает минимальные накладные расходы и высокую производительность.
После установки выбранный дистрибутив Linux полностью интегрируется в систему Windows, позволяя разработчику пользоваться преимуществами обеих ОС с минимальными затратами — как аппаратными, так и временными.

Читать далее