Обновить
420.13

Linux *

Пишем под *nix

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

Эмуляция сетевых проблем в Linux через tc netem

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

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

Читать далее

Храним секреты в облаках

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

Как и у любого пользователя Андроид у меня есть аккаунт в Гугле.
А значит, кроме всего прочего, есть аж целых 15 гигабайт облачного хранилища, где можно что‑то хранить, на случай всяких внезапных проблем с локальным оборудованием.

Традиционно, для этого используется либо приложение Google Drive, либо веб‑интерфейс. Но ни то, ни другое не очень‑то удобно на компьютере, особенно когда привык просто работать с произвольными файлами, которые куда‑нибудь копируются. И тем более — плохо подходит для автоматизации.

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

Вот эти две проблемки попробуем решить.

Читать далее

Часть 2. Rsync — подробное руководство для админов

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

Привет, Хабр! В первой части я разобрал основы rsync: синтаксис, ключевые опции и работу по SSH. Эти аспекты позволяют эффективно пользоваться утилитой на базовом уровне. В этой статье заглянем «под капот» и научимся тонко контролировать весь процесс синхронизации и диагностировать проблемы с производительностью...

Что в статье:

— Фильтрация;
— Экономичные бэкапы;
— Диагностика и решение проблем.

Читать далее

Процессорный модуль Corgi SoM v1 на базе Xilinx Zynq-7000

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

Коллеги, приветствую, обзорная статья работы с Corgi SoM v1 на базе AMD (Xilinx) Zynq-7000. Статья охватывает работу модуля с Vivado IDE, Vitis IDE, подготовку базового образа, работу с Embedded Linux (u-boot, device tree, linux kernel, rootfs). Подготовку образа для SPI NOR памяти, SPI NAND памяти и сопутствующие моменты необходимые для старта работы с данным модулем. Дополнительно статья будет полезно для linux embedded разработчиков, которые делать будут bring-up плат на базе AMD(Xilinx) zynq платформ.

Читать далее

Как написать свой TCP-порт-сканер на Python: опыт, код и примеры использования

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

В этой статье мы разберём, как написать свой многопоточный TCP-порт-сканер на Python. Несмотря на то, что существуют готовые инструменты вроде nmap или masscan, иногда требуется минималистичное решение: встроить проверку в CI/CD, автоматизировать аудит небольшой сети или использовать сканер как обучающий пример. Мы рассмотрим два подхода — на ThreadPoolExecutor и на asyncio, добавим баннер-граббинг, HTTP-проверку и TLS-детекцию. В результате получится компактный инструмент с поддержкой JSON/CSV-вывода, возможностью тонко настраивать параллелизм и таймауты, а также учитывать нагрузку на сеть. Такой сканер удобен для внутренних задач админа и для изучения сетевого программирования.

Читать далее

Часть 1. Rsync: подробное руководство для админов

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

Привет, Хабр! В арсенале системного администратора и разработчика есть множество инструментов для переноса данных. Мы копируем файлы десятки раз в день: cp для локальных копий, scp для удалённых серверов. Но что если задача сложнее? Нужно не просто скопировать, а синхронизировать два дерева файлов, дёргая по сети лишь изменившиеся данные? Или поддерживать в актуальном состоянии зеркало веб‑контента?

О чём эта статья?
— Фундамент: как правильно путями в rsync и почему слеш в конце решает всё;
— Два основных режима работы: локально, с сервером;
— Разбор флага -a: что скрывается под капотом; — Главные опции: как сделать вывод подробным, а работу — безопасной; — Синхронизация поверх SSH: работа с нестандартными портами; — Самые опасные «грабли» и как их избежать.

Читать далее

Linux Open Port: пошаговое руководство по управлению портами фаервола

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

Открытый порт — это не «дырка в фаерволе», а процесс, который слушает сокет. В материале разбираемся, где заканчивается приложение и начинается сетевой фильтр: как корректно отличать listening от доступности снаружи, чем проверять (ss, lsof, nmap), и как на практике управлять правилами в nftables, firewalld и UFW. Поговорим о well-known портах и CAP_NET_BIND_SERVICE, типовых политиках (allow/deny), логировании и безопасной последовательности действий, чтобы не уронить прод. Текст для системных администраторов и DevOps/SRE, которым нужна понятная и проверяемая методика без мифов и магии.

Читать далее

Подключаем SSL от Let's Encrypt

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

В недавней статье об SSL‑сертификатах, точнее, в комментариях к ней, затронули вопрос, который похоже создает для многих головную боль: как обновлять сертификаты от Let's Encrypt? Ведь сертификаты выдаются на 3 месяца, а потом их надо обновлять.

Конечно, есть Certbot, есть софт, который умеет сам получать и обновлять сертификаты — но вопрос возник именно по тому софту, который сам не умеет (а подключить Certbot почему‑то не получается)

Когда‑то у меня тоже возник такой вопрос, и почему‑то не устроил Certbot — не помню уже точную причину. Решил проблему иначе.

Читать далее

Как улучшить мониторинг и не потерять логи: Zabbix + ELK

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

Привет, Хабр! Меня зовут Сергей, я DevOps-инженер в компании Webest. В работе ежедневно сталкиваюсь с задачами мониторинга и анализа логов, и знаю, как иногда трудно разобраться в причине, почему лег прод в 5:21 утра.

Здесь на помощь приходит Zabbix. Он как верный пес: всегда громко «лает», когда что-то идет не так, и даже может «принести» алерт прямо к тебе с тапочками. Но на этом история не заканчивается. Если нужно понять, что именно сломалось и по какой причине, приходится копать глубже — в мир логов, где живет ELK Stack.

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

Читать далее

Pop!_OS: Мой опыт перехода с Windows на Linux

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

Я пользуюсь компьютерами с эпохи Windows 95 и всегда искал баланс между удобством, свободой и стабильностью. Мой выбор — лицензионное или бесплатное программное обеспечение. За годы я перепробовал множество операционных систем: от Windows до различных дистрибутивов Linux. В этой статье я расскажу, почему после долгих экспериментов я остановился на Pop!_OS от System76, какие у него плюсы и минусы, и как я адаптировал его под себя.

Читать далее

BPF CPU Scheduler: не нравится стандартный планировщик в Linux? Напиши свой

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

Всем привет! В статье расскажу про относительно новую возможность написания собственных CPU планировщиков для Linux с помощью BPF. Разберёмся, для чего это нужно, как работает, а также посмотрим на примеры уже написанных планировщиков.

Читать далее

Новости кибербезопасности за неделю с 8 по 14 сентября 2025

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

Всё самое интересное из мира кибербезопасности /** с моими комментариями.

На этой неделе новости про крупнейшую атаку на npm, бывший руководитель безопасности WhatsApp рассказал как ему не давали работать, про утечку данных всех жителей Вьетнама и другие только самые важные и интересные новости из мира информационной безопасности.

Читать далее

Механизм запуска процесса в Linux

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

В этой статье я расскажу о том, что происходит внутри ядра Linux, когда процесс вызывает execve(), как ядро подготавливает стек и как затем передаёт управление пользовательскому процессу для выполнения.

Изучил я этот механизм, когда разрабатывал Zapper — инструмент Linux, удаляющий все параметры командной строки из любого процесса без прав root.

Читать далее

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

Модернизация древнего драйвера Linux с помощью Claude Code

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

В качестве одного из своих увлечений я помогаю людям восстанавливать данные со старых ленточных кассет, например QIC-80, которые в 90-е годы часто применялись для резервного копирования. Ими пользовались отдельные люди, компании, операторы досок объявлений и не только. К ленточным кассетам я испытываю очень тёплые чувства. Есть нечто особое в том тактильном ощущении, которое возникает, когда держишь эту кассету в руках. Нечто такое, что делает сам процесс её использования приятным несмотря на все огрехи дизайна, которыми славилась технология QIC. Причём, если вникнуть в процесс и воссоздать все необходимые условия, то данные на этих лентах, даже спустя столько времени, вполне можно восстановить.

Читать далее

Напердолил целую игру

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

Уууу, давно хотелось чего-то простого, смешного и без лишних заморочек. Чтобы мемов побольше и можно было с пацанами погонять. В итоге получились "TANKOLINI NAPIERDOLKI".

Старый добрый монохромный экран, тетрис, мультиплеер и редактор карт для каждого. С другой стороны — всё на канвасе, с вручную отрисованными пикселями, без всяких ассетов и движков. Python на бэке, PostgreSQL для карт и Redis для игровых комнат. Обо всём этом — в статье.

Читать далее

Linux умер. Да здравствует Linux

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

На днях почил мой десктопный Linux, который я использовал для работы. Да‑да, вы не ослышались — десктопный Линукс. Мой любимый, между прочим.

Читать далее

Репликация базы Postgrespro на двух нодах

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

В данной статье описывается пошаговая настройка отказоустойчивой репликации PostgresPro-12 на двух серверах в изолированной среде без внешнего доступа и возможности развертывания третьего узла. Решение ориентировано на AstraLinux, но легко адаптируется под другие дистрибутивы. В условиях, где стандартные решения вроде Patroni с etcd или ZooKeeper неприменимы из-за требования минимум трёх нод, предлагается альтернативный подход на базе keepalived и кастомных bash-скриптов.
Ключевой особенностью является использование keepalived не только для управления виртуальным IP-адресом (VIP), но и для автоматического переключения роли PostgreSQL между мастером и репликой при отказе основного сервера.

Читать далее

Решил поучаствовать в бета-тестировании одной из российских ОС: что из этого вышло

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

Привет, Хабр! Сегодня хочу поделиться интересным опытом — я решил стать бета-тестером одной из российских ОС, а точнее — МСВСфера 10. В этой статье я расскажу об этом опыте, а также поделюсь своими мыслями о развитии российских ОС. Если вам тоже интересна эта тема, заходите под кат, давайте поговорим о реальных возможностях отечественных разработчиков версий Linux.

Читать далее

По мотивам поста «камера за 1000р»

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

Всем привет.

Публикация по мотивам поста https://habr.com/ru/articles/924182/, где уважаемый @almirus показал неплохое железо.

Читать далее

Они взломали самолет?

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

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

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

Читать далее