Архив Тэгов: Linux

Системы шифрования

Как работает шифрование /home через eCryptfs и его альтернатива fscrypt

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

Общие вопросы ОС

Как работает PAM: от логина до контроля доступа к сервисам

Современные операционные системы — это сложные экосистемы, обеспечивающие безопасность и стабильность работы множества пользователей и сервисов. Одним из важнейших компонентов, обеспечивающих контроль доступа, является PAM (Pluggable Authentication Modules), или модульная система аутентификации. Этот фреймворк лежит в основе процесса идентификации пользователей в Linux и UNIX-подобных системах, начиная с ввода логина и заканчивая получением доступа к системным сервисам. читать далее »

Сетевые технологии

Как работает systemd-resolved и зачем он нужен

Современные операционные системы постоянно усложняются, а вместе с ними растет и набор инструментов, обеспечивающих их стабильную и безопасную работу. Одной из ключевых задач любой системы является разрешение доменных имен — процесс преобразования символьных адресов (например, example.com) в IP-адреса, понятные сети. В системах на базе Linux этой задачей занимается не только классический resolv.conf, но и специализированный демон systemd-resolved, который стал частью экосистемы systemd. Рассмотрим подробнее, что это за служба, как она устроена и почему в современных системах без нее уже практически не обойтись. читать далее »

Файловые системы

ReiserFS: почему она устарела и что можно из неё вынести

Файловая система ReiserFS когда-то считалась технологическим прорывом, особенно в эпоху активного развития Linux-экосистемы в начале 2000-х годов. Она предлагала решения, которые заметно превосходили традиционные файловые системы своего времени по ряду ключевых параметров. Однако, несмотря на все свои преимущества, ReiserFS сегодня признана устаревшей и практически не используется в современных дистрибутивах Linux. Почему так произошло? И какие уроки можно извлечь из этой истории? читать далее »

Linux

Влияние NUMA на производительность: настройка и диагностика в Linux

Современные серверные и высокопроизводительные вычислительные системы часто используют архитектуру NUMA (Non-Uniform Memory Access), которая кардинально отличается от традиционной модели UMA (Uniform Memory Access). В условиях многопроцессорных систем NUMA обеспечивает масштабируемость и более эффективное распределение ресурсов. Однако вместе с преимуществами NUMA приносит и новые вызовы: неправильная настройка или игнорирование особенностей этой архитектуры может существенно снизить производительность. Особенно это актуально для Linux-систем, где администратору предоставляется широкий набор инструментов для контроля и оптимизации NUMA-структуры. читать далее »

Linux

Как работает udev и что происходит при подключении устройства

Современные операционные системы Linux обладают высокой гибкостью и модульностью. Одним из ключевых компонентов, отвечающих за управление оборудованием в пользовательском пространстве, является udev. Этот демон играет важную роль в динамическом управлении устройствами, подключаемыми к системе. Подключение флешки, веб-камеры, мыши или даже внешнего жёсткого диска — всё это сопровождается работой udev, который автоматически определяет устройство, настраивает его и, при необходимости, инициирует нужные действия. Чтобы понять, как всё это происходит, разберёмся подробнее, что такое udev, как он работает и что именно происходит внутри системы при появлении нового устройства. читать далее »

Linux

Что такое kswapd и как он управляет памятью в Linux?

Современные операционные системы, включая Linux, умеют эффективно управлять ресурсами компьютера, в том числе оперативной памятью. Одним из важных компонентов, отвечающих за корректную работу с памятью, является процесс под названием kswapd. Хотя обычный пользователь, скорее всего, никогда не столкнется с ним напрямую, понимание принципов его работы может быть особенно полезным для системных администраторов, разработчиков и всех, кто интересуется архитектурой операционных систем. читать далее »

Общие вопросы ОС

Профилирование системных вызовов с помощью strace и ltrace

Оптимизация и отладка программного обеспечения на уровне взаимодействия с операционной системой — задача, требующая глубокого понимания внутренних процессов. Одним из наиболее доступных и мощных инструментов для анализа поведения приложений на уровне системных вызовов являются утилиты strace и ltrace. Эти инструменты позволяют разработчикам и системным администраторам видеть, какие именно вызовы выполняет приложение, сколько времени тратится на каждый из них и какова их последовательность. читать далее »

Linux

Использование perf для анализа узких мест в производительности ядра

Анализ производительности ядра Linux — одна из ключевых задач системных администраторов, разработчиков низкоуровневого программного обеспечения и инженеров, работающих с высоконагруженными системами. Для эффективного выявления узких мест в работе ядра существует множество инструментов, однако среди них особенно выделяется perf — мощный профилировщик, предоставляющий детальную информацию о поведении ядра и пользовательских приложений. Эта утилита входит в состав Linux Performance Counters и позволяет получить точную картину происходящего внутри системы. читать далее »

Виртуализация

Запуск GUI-приложений в контейнерах: проблемы и решения

Контейнеризация за последние годы стала одной из самых популярных технологий в области разработки и развертывания программного обеспечения. Docker, Podman и другие инструменты предоставляют изолированную среду для запуска приложений, упрощая управление зависимостями и обеспечивая совместимость между различными системами. Однако, когда речь заходит о графических интерфейсах, контейнеризация сталкивается с рядом трудностей, выходящих за рамки типичного CLI-приложения. Запуск GUI-приложений в контейнерах — это задача, требующая особого подхода, и в этой статье мы подробно разберём, с какими проблемами сталкиваются разработчики и как эти проблемы решаются на практике. читать далее »