Обновить
344.13

Linux *

Пишем под *nix

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

Внутреннее устройство веб-сервера. Часть 1: От syscalls до WSGI

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

В этой статье мы разберём, какие механизмы предоставляет Linux для работы с сетью и как на их основе строятся фреймворки и библиотеки, которыми мы пользуемся каждый день. К концу статьи мы напишем минималистичный WSGI-веб-сервер, с помощью которого можно запускать произвольные WSGI-приложения.

Читать далее

Новости

Быстрый запуск виртуального WEB сервера для новичка. Для создания своего простого прокси за 3 копейки

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

Трудно определить аудиторию для кого эта статья. Профессионалы работы в Linux системах наверное просто засмеют, а кто вообще ничего не слышал про Linux возможно вообще ничего не поймет.
Я ее пишу для тех кто немного слышал про Linux и уже знает что такое виртуальный сервер но знаний пока не хватает. А еще возможно как памятку для себя.
На написание статьи меня натолкнула одна проблема, я запустил на своем сервере скрипт который должен был мне собрать данные с одного ресурса. И возникла проблема что IP адрес моего сервера был заблокирован, надеюсь что провайдер сменит мне выделенный IP.
И что бы не сталкиваться с проблемой блокировки выделенного IP адреса и походами к провайдеру с просьбой сменить IP, я решил создать личный прокси для запросов и главное что бы это было недорого.

Есть конечно решение проблемы, а именно использование VPN на сервере. Но тут есть проблема, на сервере работают несколько служб на разных портах и все висят на доменном имени привязанному к IP, а при запуске VPN все службы будут недоступны, а это недопустимо. Лучшем решением стала аренда виртуального сервера (VDS), но проблемой стало то, что многие хостеры в нагрузку добавляют панель управления сервером и конечно не бесплатно.

Ну и ближе к теме, мы не будем платить за панели администрирования, покупаем самый дешевый VDS с выделенным IP, у меня на это ушло примерно 240 рублей за месяц использования в зоне RU и чуть дороже в USA. Характеристики железа VDS слабенькие, но для запуска одного единственного PHP скрипта для анонимизации своих запросов вполне достаточно.

Читать далее

PicoClaw — ваш персональный помощник

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

Совсем недавно сложно было представить что простым людям так быстро станут доступны инструменты ИИ агентов. Но технологии не стоят на месте. И вот в конце января 2026 года набирает популярность бесплатный и автономный агент, разработанный Питером Штайнбергером - OpenClaw (ранее Clawdbot и Moltbot). Инструмент очень быстро набирает популярность и буквально за считанные дни репозиторий в github становится самым быстрорастущим за всю историю площадки, обогнав Kubernetes. Такая популярность не могла не привлечь и широкое внимание конкурентов. Так появляется PicoClaw легковесный агент от китайских разработчиков, написанный на языке Go. Вот список некоторых особенностей PicoClaw:

Сверхлёгкое потребление ресурсов: работает на менее чем 10 МБ ОЗУ, что примерно на 99 % меньше, чем у OpenClaw (>1 ГБ) и значительно меньше NanoBot (>100 МБ). Это позволяет запускать ИИ-ассистента на очень дешёвом оборудовании.

Минимальные аппаратные требования: запускается даже на устройствах стоимостью около $10 (например, RISC-V платы вроде LicheeRV Nano), в то время как многие альтернативы требуют мощности серверного класса или ПК.

Молниеносный запуск: стартует за <1 секунду, даже на медленных процессорах с частотой ~0.6 ГГц, обеспечивая гораздо более быстрый отклик, чем у конкурентов, где загрузка может занимать десятки или сотни секунд.

Высокая переносимость: представляет собой один бинарный файл на Go, без тяжёлых зависимостей, и поддерживает разные архитектуры — RISC-V, ARM64 и x86, что упрощает использование на разнообразных устройствах.

Читать далее

Создатели Gentoo уходят с GitHub из-за ИИ. Разбираем причины и нюансы

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

Gentoo — один из самых старых дистрибутивов Linux. Он появился в 2002 году и до сих пор работает по тем же принципам: сборка пакетов из исходных текстов, тщательная настройка под любое железо и полное отсутствие компромиссов. В феврале 2026-го появилась новость о начале переноса зеркал репозиториев с GitHub на Codeberg. И это не просто технический маневр, а принципиальный выбор сообщества. 

В чем основные причины ухода, что повлияло на выбор площадки и какие дальнейшие планы у Gentoo — разберемся под катом.

Читать далее

Linux Landlock — песочница для приложений без root

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

Landlock — редкий для Linux случай, когда «песочницу» можно включить руками самого приложения: без root, без километров политик и с понятной логикой «по умолчанию запрещено всё». В этой статье разбираем, что это за LSM, какие три системных вызова нужны, как выбрать минимальный набор прав и почему открытые до ограничений файловые дескрипторы способны тихо обнулить всю задумку.

Открыть разбор

Неодолимая магия компьютера

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

Решил написать небольшую заметку по настройке командной оболочки FreeBSD. В первую очередь для себя, как шпаргалку. Заметка получалась не очень большой и не такой уж интересной. Тогда попробовал объяснить, почему именно FreeBSD и вообще *BSD. Написал небольшое пояснение. И оно оказалось не про BSD. Написал ещё абзац. И снова ни слова про BSD.

«Да ёлы-палы!» — решил я и написал, как знакомился с компьютерами. Но и тут про BSD оказалось немного. Значит, судьба, решил я. Про BSD будет в другой раз. Наверное. А в этот раз опишу путь к компьютеру подростка с конца 80-х по начало 2000-х.

Для более полного погружения в атмосферу тех лет я добавил фотографии и скриншоты, которые кому-то могут показаться лишними при беглом рассмотрении.

Читать далее

Отказоустойчивый кластер виртуализации KVM на Astra Linux

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

Импортозамещение, уход вендоров, требования регуляторов, безопасность — причин переезжать с продуктов Microsoft и VMware сегодня хватает.
Но важно, чтобы это было осознанное инженерное решение, а не реакция по принципу «лишь бы уйти». Тем более что далеко не всегда есть смысл переплачивать за продукт, который для вашей инфраструктуры избыточен.

В статье разбираю, как собрать отказоустойчивую виртуализацию на базе Astra Linux:
DRBD + GFS2 + Pacemaker против Ceph.

Отказоустойчивый кластер KVM на Астре

Торвальдс рассказал, как превратил Linux из проекта одного человека в коллективную работу с помощью друзей и коллег

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

Линус Торвальдс и его друзья рассказали журналисту The Register Стивену Дж. Вогану-Николсу, как сольный проект на Linux превратился в «глобальный джем-сейшен».

Читать далее

Intel 440BX: из Linux 7.0 исчезает последний след старого чипсета

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

Платы на базе Intel 440BX появились в конце девяностых и быстро стали популярными. Чип официально поддерживал шину 100 МГц, но многие платы работали и на 133, что особенно ценили любители разгона. AGP 2x, до 1 ГБ SDRAM и южный мост PIIX4E делали его вполне универсальной платформой для своего времени. Такие системы до сих пор можно запустить, если повезет с комплектующими и состоянием платы. Они остались на руках энтузиастов, а также на промышленных предприятиях, где часто не нужны рекордные мощности. Работает, и ладно.

Но статья не о материнках, а о самом процессоре, вернее, его исходе из Linux. Дело в том, что этот этап истории закончился. В текущей ветке ядра Linux, из которой будет собрана версия 7.0, удален драйвер EDAC для 440BX. Это был последний специализированный модуль, связанный с этим чипсетом. Он давно не работал корректно и годами не обновлялся, но формально оставался в дереве исходников. В Linux 7.0 этой поддержки уже не будет. Давайте вспомним, что за чипсет, а также посмотрим, почему его удаляют из ядра. Поехали!

Читать далее

Шпаргалка по поиску узких мест в Linux: топ утилит на все случаи жизни

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

Многие уже видели старенькую схему Брендана Грегга, где каждой подсистеме сопоставлены CLI-утилиты. Она правда полезная, но когда «горит», мы бежим в интернет, а не выискиваем систему и команду. В статье я собрал тулзы с картинки, а также добавил опенсорсных утилит, которые пригодятся для мониторинга. 

Читать

Я пишу свой терминал с нуля, чтобы понять как работает компьютер

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

Что происходит, когда вы вводите ls в терминале? Как 2 буквы превращаются в список файлов на экране? Я решил разобраться и написал свой терминал с нуля на C++.

В этой статье я объясняю через метафору ресторана, как работают три магических системных вызова — fork(), exec() и wait() — которые лежат в основе любого терминала. Вы узнаете, почему cd нельзя сделать обычной программой, как работает перенаправление >, и какой коварный баг я поймал из-за непонимания процессов. Без сложной теории — только практика и понятные объяснения.

Читать далее

Небезопасный Linux и как с ним бороться

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

Когда говорят о безопасности операционных систем, Linux почти всегда фигурирует в качестве выбора по умолчанию. Это представление основано на реальных свойствах платформы: открытый исходный код, развитая модель прав доступа, сильные инструменты изоляции процессов и развитая культура обновлений. Но реальность — сложнее теории. Безопасность Linux — это не встроенное свойство системы, а результат правильной настройки, регулярного обслуживания и глубокого понимания того, как система устроена изнутри.

А вот тут есть нюансы

Контроль целостности с помощью inotify, недостатки инструмента

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

Привет, Хабр! Если интересно проанализировать недостатки инструмента inotify с позиции решения ИБ-задачи контроля целостности (именно самого инструмента в его первозданном виде), то добро пожаловать под кат!

Введение

Давайте поговорим о такой задаче информационной безопасности, как контроль целостности объектов файловой системы.

Какие инструменты контроля целостности в Linux приходят сразу на ум?

AIDE (Advanced Intrusion Detection Environment)
AFICK (Another File Integrity Checker)
tripwire
wazuh
OSSEC

Из перечисленных инструментов aide, afick и tripwire работают по принципу «редкого» мониторинга, а wazuh, ossec — постоянного (более подробно эти понятия раскроются дальше).

В этой статье лишь немного затронем тему принципа работы «редкого» мониторинга, в большей степени поговорив о проблемах, возникающих при работе с inotify, который положен в основу постоянного мониторинга wazuh/ossec.

Мы не будем досконально рассматривать сам механизм ядра Linux, хорошего материала на эту тему достаточно, в том числе и на Хабре. Также не станем проводить глубокий анализ работы прекрасных утилит inotify-tools или incron. Речь пойдет именно про сам inotify в его первозданном виде без каких-либо обвязок и библиотек. Нам важно понять, с какими проблемами можно столкнуться в случае проектирования ПО, использующего сам inotify. Что касается inotify-tools, то здесь мы посмотрим на то, закрывают ли утилиты данного пакета описанные проблемы.

Читать далее

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

Тетрис в ядре Linux

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

Вероятно, вы знаете, что если запустить ядро Linux без корневой файловой системы или файла initramfs, то оно упадет с сообщением о панике ядра.

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

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

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

Пользовательским приложением может быть, например, игра Тетрис. Она из-за своей простоты в реализации и зрелищности добавляет наглядности в изучении темы и дает чувство завершенности. А мысль о том, что тетрис, работает в ядре, усиливает эффект.

Читать далее

Как работают руткиты и можно ли им противодействовать на примере Singularity

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

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

Читать далее

Как обновлять антивирусные базы и базы СОВ в Secret Net Studio 8.10 и 8.13

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

В Secret Net Studio 8.10 и 8.13 обновление антивирусных баз и баз СОВ через локальный источник часто вызывает сложности: при малейшей ошибке в структуре каталогов базы просто не применяются.

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

Материал основан на практическом опыте эксплуатации СЗИ и будет полезен администраторам, работающим в изолированных и защищенных контурах.

Читать далее

Настраиваем безопасный DNS: приватность, DNSSEC и DoT на практике

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

DNS — один из самых недооценённых компонентов инфраструктуры. Он есть везде, но по умолчанию почти всегда небезопасен: запросы ходят в открытом виде, легко подменяются, логируются провайдерами и могут использоваться для атак.

В этой статье покажу, как настроить безопасный и приватный DNS-резолвер на базе Unbound:

Читать далее

Как я сделал рабочий pgAdmin4 Desktop для Arch Linux и почему это оказалось сложнее, чем кажется

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

pgAdmin4 - де-факто стандартный GUI для PostgreSQL.
И при этом на Arch Linux его Desktop-версия годами находится в полурабочем состоянии.

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

Если вам тоже надоело чинить pgAdmin после каждого обновления Python или Electron - это для вас.

Читать далее

Физик проанализировала более 100 000 «исправленных» багов ядра Linux

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

В вашем ядре сейчас есть баги, которые не найдут в течение многих лет. Я знаю это, потому что проанализировала 125 183 из них, каждый в 20-летней git-истории ядра Linux помечен прослеживаемым тегом Fixes:.

Средний баг ядра существует 2,1 года. А некоторые подсистемы намного хуже: драйверы CAN‑шины [шины сети контроллеров] — в среднем 4,2 года, работа с сетью SCTP4,0 года. Самый долгоживущий баг в моём наборе данных — переполнение буфера в ethtool — сохранялся в ядре 20,7 лет. Подробно остановлюсь на утечке памяти из‑за подсчёта ссылок в netfilter, существовавшей 19 лет.

Я создала инструмент, который выявляет 92% исторических багов в отложенном тестовом наборе данных о времени коммита. Вот что я узнала.

Читать далее

Почему системные вызовы обходятся дорого: углубляемся в дебри Linux

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

Здесь рассказано, как именно Linux обрабатывает системные вызовы в архитектуре x86-64, и почему при профилировании они выглядят как дорогостоящие операции.

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