/usr/bin
4.37K subscribers
44 photos
717 links
Канал для пользователей и администраторов Linux-систем: управление, инфраструктура, технические детали, новости и прочее. Для связи: @antoniusfirst

@monitorim_it — канал о мониторинге ИТ
Download Telegram
Не пора ли Docker свалить в закат? (заметка на подумать перед началом рабочей недели)

Основная проблема Docker — это наличие демона. Последнее означает единую точку отказа и необходимость запуска от рута. А вот, например, containerd ничего из этого не требуется. Есть ещё podman, которому не требуется демон и права рута для запуска. А еще его команды полностью совместимы с Docker.

На что я бы поменял Docker:

🚀 для локальной разработки можно использовать Podman, Colima или NerdCTL. Они легкие, быстрые и не требуют Docker Desktop.

🚀 для конвейеров CI/CD containerd. Он более эффективен, лучше интегрируется с Kubernetes и не зависит от демона.

🚀 для Kubernetes runtime можно юзать CRI-O или containerd. Оба Kubernetes-native и не требуют дополнительных прокладок.

🚀 для пользователей рабочих станций отличными альтернативами станут Rancher Desktop (если нужен графический интерфейс) или Podman (для управления через CLI).

❗️ Дорогие читатели канала, расскажите в комментариях, что вы думаете о перспективах Docker. Ещё не начинали искать замену?
🔥15👍113🤡32
Несколько интересных утилит Linux, которые могут заменить те, что вы используете каждый день

🚀 Забытые планировщики at и batch, с которыми не нужно редактировать файлы как с cron.
echo "shutdown -h now" | at 11:00 PM

или
echo "updatedb" | batch


🚀 Запуск служб «на лету» с systemd-run. Подходит для тестирования служб или планирования задач по обслуживанию с полной поддержкой systemd. Запуск без создания файла службы:
systemd-run --unit=backup-job tar -czf /backup/home.tar.gz /home


🚀 Автоматическая оптимизация производительности с tuned. Динамически регулирует параметры системы в зависимости от типа рабочей нагрузки (виртуализация, пропускная способность, задержка и т. д.). Предварительно изучите принцип работы утилиты.
dnf install tuned
tuned-adm profile throughput-performance


🚀 Защита от удаления с chattr. Даже root не сможет удалить или изменить файл пока не удалить неизменяемый бит.
chattr +i /etc/passwd
👍171🔥1🤔1
kpatch

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

Репыч на Гитхабе
🔥9👍53🤝1
Сбор событий Linux: есть цель – ищем путь

В этой статье рассматриваются подходы к тонкой настройке журналирования в Linux, а также события и их назначение, которые записываются в определенные системные журналы. Особенно полезно, если вы занимаетесь инфобезом.
🔥3👍2🤣2
О ненависти к российским дистрибутивам Linux

Автор статьи рассуждает на тему ненависти к российским дистрам Linux. Предлагает посмотреть на иностранные Rocky Linux, RHEV и прочие форки. Типа а почему это не хейтят их забугорных собратьев? Мое мнение таково: весь хейт связан с тем, что во многих организациях использование российских ОС является принудительным в госструктурах. Коли б не этот факт, рынок бы сам порешал.

А вы считаете отечественные ОС достойной заменой того же коммерческого RedHat или даже заменой иностранных ОС при условии бесплатного использования?
🤡28👍9🖕5🤨31
Как работает DNS в Linux. Часть 2: все уровни DNS-кэширования

В первой части было разобрано, как в Linux работает процесс разрешения имен — от вызова getaddrinfo() до получения IP-адреса. Однако если бы каждый вызов требовал нового DNS-запроса, это было бы неэффективно и сильно нагружало как систему, так и сеть. Поэтому используется кэширование.

Кэширование DNS может быть везде — в glibc, в systemd-resolved, в браузерах и даже в приложениях на Go. Кэш помогает увеличить скорость работы, но создает дополнительные сложности при отладке. Например: вы меняете DNS-запись, но сервер продолжает ходить по старому IP-адресу. Или, Dig показывает правильный адрес, а curl всё равно подключается к устаревшему.

В этой статье разобраны различные уровни кэшей самой системы, приложений и языков программирования, контейнеров, прокси. А также их мониторинг и сброс.
👍9🔥3🤮1
Получаем root через iptables

Iptables — это утилита пользовательского пространства в Linux, используемая для настройки правил фильтрации пакетов в брандмауэре ядра Linux, называемом netfilter. По сути, это инструмент командной строки, позволяющий администраторам управлять обработкой сетевого трафика системой.

У iptables есть параметр ‑modprobe, предназначенный для загрузки всех необходимых модулей при добавлении правил в цепочку. А вот дальше уже дело техники.
👍7🔥6🤡41
Bash vs Python: битва, где нет проигравших

В мире автоматизации часто возникает вопрос: писать скрипт на Bash или на Python? Оба инструмента подходят отлично, но принципиально разные. Bash — больше про "скоропись", для системных задач, где важна скорость и краткость. Python же — универсальный язык, который намного лучше справляется со сложной логикой и структурами данных. Но когда лучше выбрать один, а когда - другой?

Некоторые задачи в Bash решаются одной строкой, когда же на Python потребуется десяток строк кода. При усложнении сценария - Bash превращается в головоломку из awk, sed и прочих, что значительно усложняет поддержку. В этой статье сравниваются подходы и определяется, когда и какой язык лучше использовать.
👍6🔥5🥴2
Как один глупый Bash-скрипт сэкономил 100 часов ручной работы

Есть некоторая ирония в том, как простые инструменты решают сложные задачи. Пока технические форумы гудят от обсуждений Kubernetes, пайплайнов машинного обучения и микросервисных архитектур, автор этой статьи хочет на минуту отвлечься и поговорить о чем-то до безобразия простом: Bash-скрипте. Не особенно изящном. Без функций. Без параметров. Без проверок корректности. Просто линейный, безжалостно прагматичный shell-скрипт, который за год сэкономил ему несколько недель работы.

Это история не о красоте кода, а об его полезности. Не о совершенстве, а о решении реальных проблем в условиях нехватки времени, терпения и мотивации команды. Если вы разработчик, системный администратор, специалист по данным или просто устали от рутинных задач — этот пост для вас.
👍102🔥1
Как установить GUI на сервер Ubuntu 24.04

Изначально Ubuntu Server создавался как легкая и производительная операционная система для работы с задачами на серверах. Именно поэтому на них по умолчанию не устанавливается графический интерфейс (GUI) — это позволяет экономить ресурсы, ускорять работу системы и повышать ее безопасность.

Однако бывают ситуации, когда графический интерфейс на сервере все же необходим. Например, если вам нужно запускать привычные десктопные программы прямо на сервере, тестировать приложения с графическим управлением и решать другие задачи. В статье пошагово рассказывают, как установить GUI на примере сервера Ubuntu 24.04 с минимальной конфигурацией.
💊12👍2🔥1
pg_dphyp: учим PostgreSQL соединять таблицы по-другому

Эта статья не о DPhyp как таковом, а о том, с чем автору статьи пришлось столкнуться в процессе написания соответствующего расширения для PostgreSQL.

Статья на Хабре

Репыч на Гитхабе
👍2🔥1
Цикл из 2 статей

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

Поиск способов закрепления в Linux (Часть 1)

Поиск способов закрепления в Linux (Часть 2). Манипуляция учётными записями
👍2🔥1
How we built fast UPDATEs for the ClickHouse column store – Part 1: Purpose-built engines

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

Пользователи ClickHouse часто его используют для хранения быстро меняющихся данных: данные Интернета вещей (показания датчиков) , электронной коммерции (заказы и инвентарь) , финансов (статус платежей) , игр (статистика игроков) и CRM/HR (профили пользователей или сотрудников) — данные, которые необходимо корректировать, обновлять или удалять. Вместо того, чтобы принудительно выполнять медленные операции обновления (UPDATE) в системе, рассчитанной на большие объемы данных, в Clickhouse пошли другим путем: они рассматривают обновления как вставки.

Это не обходной путь, а осознанное решение. Такие движки, как ReplacingMergeTree , CoalescingMergeTree и CollapsingMergeTree , позволяют ClickHouse обрабатывать обновления и удаления, записывая новые строки вместо изменения существующих. Они используют высокую производительность ClickHouse при вставке и фоновый процесс слияния, избегая снижения производительности, характерного для обновлений на месте.

Читать дальше в блоге Clickhouse
👍41🔥1🤡1
How we built fast UPDATEs for the ClickHouse column store – Part 2: SQL-style UPDATEs

Это вторая часть цикла статей о принципах выполнения обновления данных в Clickhouse. Здесь разбираются примеры SQL-запросов.

Читать дальше в блоге Clickhouse

P.S. Будет еще 3 часть.
👍2🔥1🤡1
Структура файловой иерархии Linux

Структура файловой иерархии Linux, также известная как Filesystem Hierarchy Standard (FHS), определяет организацию каталогов и их содержимое в операционных системах, подобных Unix. За поддержание стандарта отвечает организация Linux Foundation. Читать дальше на Хабре.
6👍2🤡2🔥1
Intel прикрыла Clear Linux: конец эпохи «самого быстрого» дистрибутива

Intel внезапно поставила точку в истории Clear Linux — дистрибутива, который больше десяти лет считался одним из самых шустрых в мире Linux. Разработка остановлена, поддержка прекращена, а пользователям настоятельно советуют паковать чемоданы и мигрировать на другие системы. Что привело к такому решению, какие уникальные фичи Clear Linux уже не увидят свет? А главное — что это значит для Linux-сообщества? Подробности.
🔥21👍1
В этом цикле статей автор максимально понятно и подробно рассказывает о том, что такое Embedded Linux в целом и Buildroot в частности.

Embedded Linux для начинающих (Часть первая)


Embedded Linux для начинающих (Часть вторая)
🔥2👍1
Поиск способов закрепления в Linux (Часть 3). Systemd, таймеры и Cron

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

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

🚀Создание или модификация системного процесса: сервис Systemd

🚀Планировщик задач/джоб: таймеры Systemd

🚀Планировщик задач/джоб: Cron


Предыдущие две статьи цикла
👍5🔥1
Microsoft удивляет поклонников MS-DOS ремейком старого текстового редактора, который работает в Linux

Microsoft удивляет поклонников MS-DOS ремейком старого текстового редактора, который работает в Linux

В прошлом месяце Microsoft выпустила современную версию своего классического редактора MS-DOS Editor, вернув часть истории компьютерной индустрии, которая впервые появилась в MS-DOS 5.0 еще в 1991 году. Новый инструмент с открытым исходным кодом, созданный на Rust и просто названный «Edit», работает на Windows, macOS и — что казалось бы невозможным три десятилетия назад — Linux. Читать дальше.
🤡9👍3👏32
Резервные копии PostgreSQL: сравнение скорости pg_dump в разных форматах и с разными уровнями сжатия

Автор этой статьи сделал резервную копию через pg_dump и восстановился из неё 21 раза. Резервные копии он делал в 4 разных форматах с использованием от 1 до 7 уровней сжатия под каждый формат. Записал результаты и сделал сравнение разных видов, чтобы понимать, какие способы более эффективны для его сценария использования. Детали и замеры — в статье.
👍10🔥61
Чеклист по приложениям реального времени в Linux

Может ли ядро Linux при всей своей гибкости обеспечивать гарантированное время отклика при работе с приложениями?

Ядро Linux является универсальным и приспособлено к работе как с крошечными встраиваемыми устройствами, так и с титаническими серверами… а также со всем спектром машин между этими крайностями! Но может ли такое поразительно адаптивное ядро обеспечить гарантированную скорость отклика для приложения, работающего на всех этих платформах? Если в вашем приложении допустимая задержка при отклике укладывается в 200 микросекунд — то уверенно отвечаем на этот вопрос «да»! (Кстати, для Linux такая планка совсем не высока, но, чтобы её держать, потребуется тщательно подбирать аппаратное обеспечение и, возможно, обратиться за консультацией к специалисту по системам Linux, работающим в режиме реального времени). Читать дальше на Хабре.
🔥2👍1