Обновить
405.23

Linux *

Пишем под *nix

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

Как подружить KeeneticOS 5 с xHTTP

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

KeeneticOS из коробки закрывает большинство бытовых задач, но как только появляется требование рулить трафиком по-своему, быстро упираешься в нюансы. Я собрал рабочую схему на Keenetic Hopper: Entware + Xray-core (TUN) + policy-based routing через fwmark и отдельную таблицу маршрутизации. Главный фокус на эксплуатации, я покажу минимальный чек-лист диагностики, и как сделать конфигурацию самовосстанавливающейся, чтобы больше никогда не залазить руками. Статья - практическая инструкция: команды, конфиги и понятные критерии.

Читать далее

Новости

Vostok Linux

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

Vostok Linux

Это небольшой рассказ о маленьком проекте и большой мечте — сделать что-то классное. Но без помощи и поддержки, в одиночку, это сделать очень сложно, поэтому надеюсь, что у кого-то отзовется моя история.

Читать далее

Установка Arch Linux на ZFS

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

Привет! Меня зовут Денис, я 3D-художник и Linux-энтузиаст. Более 8 лет Arch Linux является моей основной и единственной операционной системой. Сегодня хочу рассказать об установке Arch Linux на ZFS.

Почему ZFS?
Однажды я решил собрать stripe (RAID0) на ноутбуке с двумя дисками. Хотелось сохранить привычную структуру директорий и не думать о том, на каком диске что лежит.
На тот момент я уже использовал ZFS на файловом сервере, а на ноутбуках - Btrfs + LUKS2. Загрузить Arch Linux с RAID на btrfs у меня не получилось. С ZFS, напротив, не возникло никаких трудностей.

Задача:

Читать далее

Анатомия DPI анализа: что происходит с твоим пакетом за первые 16 КБ

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

Пошаговый разбор того, как ТСПУ анализирует трафик — от первого SYN до поведенческого ML. С конкретными числами, реальными алгоритмами и объяснением почему одни протоколы умирают на первом байте, а другие живут месяцами

Большинство объяснений про DPI звучат так: «система смотрит на пакеты и блокирует плохие». Это примерно как объяснить работу компилятора словами «берёт код и делает программу».

Давай пройдём по тому, что реально происходит с пакетом от момента выхода с твоего устройства до момента когда ТСПУ принимает решение. Пошагово, с числами, без абстракций.

Читать далее

Знакомьтесь, Барри Уорсо (цикл заметок о выдающихся питонистах)

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

Влюбился в Python в 1994-м, придумал PEP как систему управления изменениями в языке, спрятал пасхалку import this в стандартную библиотеку и годами прокладывал Python дорогу в Linux-дистрибутивы. Речь пойдёт о Барри Уорсо (Barry Warsaw) – первом неголландце в ядре Python.

Будет интересно!

Upgrade Enterprise Linux c версии 7 на версию 8 с сохранением данных

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

Давно уже наступил срок End of Life у Enterprise Linux 7, но возможно на ваших серверах он еще есть в работе. Затягивание процесса переноса могло произойти по разным причинам: сложные процессы миграции, необходимость в дополнительных мощностях для маневра, длительность процесса переноса, зависимость от бизнес-процессов заказчиков.

Зачастую upgrade ОС на месте — самый удобный способ. В данной статье я описываю инструменты и трудности, с которыми вы можете столкнуться в процессе.

Читать далее

Почему половина бытовой техники на самом деле — это маленькие Linux-компьютеры

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

Когда я впервые подключился по UART к обычному бытовому устройству, я ожидал увидеть примитивную прошивку на микроконтроллере. Но вместо этого на экране терминала внезапно появились строки загрузки Linux. С тех пор у меня появилась странная привычка: если какое-то устройство попадает ко мне в руки, я почти автоматически ищу на плате UART, JTAG или хотя бы тестовые пины.

И знаете что? Linux внутри оказывается намного чаще, чем можно ожидать.

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

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

Читать далее

Kawai-Focus 2.4: сборка приложения под Arch Linux

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

Всем доброго дня! В предыдущей статье Kawai-Focus 2.3: логика приложения на TypeScript:

1. Переписана логика с JS на TS;

2. Разобрана проблема запуска на Arch по issue Сергея (отключена сборка AppImage).

Сегодня я покажу, какие есть адекватные способы собрать приложение под Arch Linux без боли и лишних проблем. Для удобства тестирования и сборки я установил операционную систему Cachy OS, которая базируется на Arch Linux.

Читать далее

Пишем свои метрики для Zabbix по-быстрому

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

Коллеги, привет. Если вы когда-нибудь оказывались в ситуации, когда нужно срочно начать мониторить появление слова "CRITICAL" в логах приложения, а возиться с написанием экспортера для Prometheus совсем не хочется — этот пост для вас.

Читать далее

Квест на выживание: Настраиваем плагин Госуслуг и КриптоПро на Ubuntu 24.04 (Noble Numbat)

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

Настройка электронной подписи (ЭП) в Linux — это всегда приключение. Но попытка завести плагин Госуслуг на свежей Ubuntu 24.04 LTS превращается в настоящий хардкорный квест. Официальные инструкции безнадежно устарели, инсталляторы выдают ошибки, а техническая поддержка обычно разводит руками.

В этой статье я пошагово разберу, как заставить всё это работать, когда «всё против вас»: от конфликтов OpenSSL 3.0 до капризов Wayland и Native Messaging.

Читать далее

Мой плохой код — это ваша вина

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

Ну, не ваша, хабравчане, а ваша, создатели языков, библиотек, фреймворков итд. Но давайте не забегать вперёд.

Я как-то привык что если что-то ломается или плохо работает, то это я виноват. Это называется «брать ответственность за свои поступки» или, в случае программиста, за свой код, и это считается хорошим делом.

Разумеется, по эго это бьёт иногда больно, и некоторые моменты вспоминать не очень приятно. Самое страшное, что я когда-либо делал — коммитил приватный ключ в публичной репо. Вот написал и мне опять стыдно. Но я осознаю, что это всё я.

Но внезапно я открыл для себя тот факт, что не во всех ошибках моя вина. То есть да, это моя голова думает код, это мои руки печатают этот код, но ошибка идёт не от меня. Ошибка заложена ещё раньше, вообще задолго до меня, а иногда даже задолго до моего рождения.

Сейчас я вам это покажу. Будет интересно, но впереди много боли. Я предупредил.

Хочу страдать

Что происходит, когда у сервера заканчиваются файловые дескрипторы

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

Сервер внезапно перестал отвечать, а в логах ошибка Too many open files? Дело не в нехватке памяти или перегруженном процессоре — просто ваш процесс исчерпал свои файловые дескрипторы. Под катом расскажу, что это такое, почему они заканчиваются, как быстро обнаружить проблему и как её пофиксить.

Читать

Cray: оживление легенды

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

В ИТ-индустрии существуют вещи, само существование которых давно стало красивым мифом, о котором принято вспоминать лишь шепотом и закатывая глаза от благоговения.

Читать далее

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

Regex песочница

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

В данной статье описывается процесс реализации песочницы для регулярных выражений с помощью платформы для контейнеризации Docker и утилит Linux. Цель - получить ограниченную среду, куда пользователь может подключиться по SSH и где у него будет минимум возможностей, чтобы он ничего не сломал, но мог свободно использовать регулярные выражения как со встроенными в среду txt заготовками, так и со своим произвольным пользовательским вводом.

Читать далее

Запускаем Tetris на домашнем роутерe

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

Интернет пестрит информацией о том, как запускают DOOM на различных устройствах. Захотелось и мне запустить Doom на своём стареньком TP-Link WR-841N. Как видно из заголовка статьи, у меня этого не получилось, но результатом стало понимание основ написания прошивок роутеров и работающий тетрис.

Читать далее

Гайд по быстрому мониторингу Linux-хостов в Grafana без Zabbix

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

Всем привет! Меня зовут Анатолий Зотов, я системный архитектор SOC в RED Security. Как центр мониторинга и реагирования на кибератаки, мы должны быстро и внятно видеть, что происходит с железом и ОС на хостах: не кончается ли место на диске, не улетела ли память и не уперся ли CPU в потолок. Как это реализовать, да еще и безопасно?

Когда мы только приступали к задаче, первой мыслью, конечно, был Zabbix, как и у половины планеты. Но у нас никто не горел желанием поднимать еще одну систему, раскатывать агенты, подбирать шаблоны и разбираться с нюансами. Времени, как обычно, не завезли. А вот Grafana у нас уже была, поэтому я подумал — а что, если просто использовать то, что уже есть? Так я и наткнулся на связку «node_exporter → Prometheus → Grafana».

Эта статья для тех, кто хочет быстро начать мониторить хосты и не готов тратить вечность на внедрение тяжелой системы, особенно если Grafana уже живет в вашей инфраструктуре. Если Grafana и Prometheus у вас еще нет, то дополнительно расскажу быстрый старт через Docker Compose.

Читать далее

Между tail и ELK: пытаюсь собрать логи с нескольких серверов одной командой

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

Я студент, который только начинает заходить в devops‑тематику. Сам я не админ и не держу в проде десяток серверов, поэтому решил не выдумывать «боли» из головы, а посмотреть, на что реально жалуются люди в интернете.

Одна жалоба повторялась достаточно часто: «Когда что‑то падает, приходится обходить несколько серверов, смотреть логи по отдельности и пытаться сложить картину вручную. ELK/syslog решают, но ради пары сервисов это перебор.»

После этого я решил собрать небольшой прототип LogRanger — CLI‑утилиты, которая по SSH забирает логи с нескольких серверов и открывает их в lnav одной командой. Ниже коротко расскажу, какую проблему хочу закрыть и что именно делаю.

Читать далее

Mini-Shell: Часть 2 — Pipes, фоновые процессы и управление задачами

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

Это продолжение серии. Если вы не читали первую часть, рекомендую начать с неё: https://habr.com/ru/articles/1000766/

Читать далее

Как я искал замену MinIO S3 и написал свой S4 на Rust

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

В начале 2025 года компания MinIO в лице сооснователя Harshavardhana начала поэтапно сворачивать свою версию Community Edition. В феврале из open-source версии был вырезан веб-интерфейс администрирования - управление политиками, мониторинг, репликация, IAM - всё это переехало в коммерческий продукт AIStor с ценником от $96 000 в год. Пользователям оставили лишь базовый object browser и CLI-утилиту mc. В мае последовало удаление поддержки OIDC-аутентификации. В октябре MinIO прекратил публикацию Docker-образов и готовых бинарников - причём аккурат в момент раскрытия критической CVE-уязвимости. А в декабре 2025-го проект официально перешёл в режим maintenance mode: никаких новых фич, pull request'ы не принимаются, только точечные security-фиксы по усмотрению компании.

Читать далее

Почти тонкий клиент на базе Linux с авторизацией через штрихкод и автоматическим запуском 1С в RDP сессии Windows

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

Почти тонкий клиент на базе Linux, с авторизацией через штрихкод и автоматическим запуском 1С в RDP сессии Windows.

После некоторых событий, на производстве появилась необходимость упрощения, удешевления и автоматизации входа постов (тонких клиентов) в 1С.

Какие основные моменты нужно было решить:

1. Убрать хранение пароля в ветке реестра Winlogon на ОС Windows
2. Убрать хранение пароля пользователя 1С в скрипте .bat
3. Попробовать дать вторую жизнь устаревшим компьютерам с 1-2 гб ОЗУ и процессорами Intel Atom D425, или старее
4. Автоматизировать вход до 1С сканированием единственного штрихкода/QR-кода на рабочем месте
5. Минимизировать время замены рабочей станции в случае аварии/выхода из строя
6. Сделать универсальный образ как для Legacy так и для UEFI совместимых компьютеров

Начну с того, что нигде полностью готового решения или хотя бы статьи‑инструкции «сделай сам» я не нашёл.

Читать далее
1
23 ...