Обновить
128K+

Linux *

Пишем под *nix

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

Хотел нормальный fractional scaling, а собрал KDE 6.7 для РЕД ОС

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

Некоторое время назад я решил обновить KDE на своем ноутбуке.

Причина была довольно банальной. В ноутбуке установлен 14-дюймовый Full HD экран, для которого масштаб 100% слишком мелкий, а 200% — слишком крупный. В KDE Plasma 5 под X11 дробное масштабирование в целом работало, но хотелось нормально перейти на Wayland, где в старой версии KDE с fractional scaling всё было несколько менее радужно.

Кроме того, KDE 5.27, несмотря на LTS-статус и вполне приличную стабильность, к 2026 году уже начал ощущаться немного устаревшим. KDE 6 существует далеко не первый год, Wayland постепенно превратился из экспериментальной опции в основной сценарий работы, а я всё ещё сидел на Plasma 5.

На ноутбуке при этом была установлена РЕД ОС 8.

Самое очевидное решение проблемы — поставить Fedora, Альт Линукс или какой-нибудь другой более ориентированный на десктоп дистрибутив, где современный KDE уже есть в штатных репозиториях.

Но это было бы слишком просто.

Поэтому я решил собрать KDE 6 самостоятельно.

В результате небольшая задача «обновить графическую оболочку на ноутбуке» постепенно превратилась почти в 500 исходных пакетов, собственный RPM-репозиторий, несколько тестовых виртуальных машин, довольно много потраченных токенов LLM и некоторое понимание того, почему работа мейнтейнера Linux-дистрибутива сложнее, чем кажется со стороны.

Об этом процессе я и хочу рассказать.

Читать далее

Новости

Hello World для STM32

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

Когда пишут программу HelloWorld на C, обычно выводят текст “Hello, World!”. Но когда программа пишется для микроконтроллера, часто ограничиваются миганием светодиода, особенно для микроконтроллеров семейства STM32.

В статье я разберу, как можно вывести “Hello World” в программе для микроконтроллеров этого семейства.

Читать далее

Я собрал себе курс по Linux (но сначала получился курс по .sh)

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

Первая версия получилась курсом по shell-скриптингу. А я не этого хотел: мне нужно было разобраться с Linux на практике, а не в теории по книге — права, службы, журналы, монтирование, сеть. На выходе же лежала полсотня заданий вида «напиши .sh, который…». Хотя каждое по отдельности выглядело нормально.

Заметил я это, когда стал считать, что человек физически делает в каждой серии. Почти везде одно и то же: открывает редактор и пишет скрипт.

Причина скучная и техническая. Скрипт легко проверить: запустил, посмотрел вывод, сравнил. Всё остальное проверять неудобно, поэтому всё остальное вымывается само, без чьего-либо умысла. Модель, которой я всё это надиктовывал, пошла по пути наименьшего сопротивления, опираясь на курс по языку C, который я дал ей как образец.

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

Стоп, я начал с середины

Linux отмечает 35 лет (дополнение)

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

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

Начнём с того что Линус Торвальдс создавал свою систему похожей на MINIX, которую
Эндрю Таненабаум начал разрабатывать как учебное пособие к книге «Операционные
системы: Разработка и реализация», в далёком 1987 году. Разработка самого GNU\Linux началась с 1991 года.

Интересно что и MINIX, и GNU\Linux являются «unix‑подобными», то есть в своей основе
исходят из архитектуры BSD Unix, разработанной ещё в 1978 году.

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

Читать далее

Write‑up “Аудит” CTF Кубок Федерации 2026

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

Участвовала в CTF Кубок Федерации 2026. Здесь хотелось бы написать свое решение задания «Аудит» из категории Reverse. Разработчики уже выложили решение всех заданий, но мое решение отличается от решения создателей, так что хочу поделится свои решением, рассказать о методах, ошибках, способах и внести обучающую часть для тех, кто только входит в реверс‑инженеринг в CTF.

Читать далее

Семь привычек Linux-инженера, которые спасают прод

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

Всем привет! Меня зовут Анна Васильева, я технический менеджер в K2 Cloud и люблю запускать утилиты с максимально возможным уровнем verbose.

Есть фраза, после которой расследование сбоя обычно становится интереснее: «Я ничего не менял». Через несколько часов выясняется, что изменения всё-таки были. Инженер распаковал архив, добавил сетевой интерфейс, обновил библиотеку или перенёс виртуальную машину на другой хост. Действие казалось безобидным, а его последствия проявились в неожиданном месте.

На митапе «Инженеры перебрали / кейсы по Linux» мы взяли семь реальных случаев и разобрали их вместе с экспертами:

Читать далее

Производительность сетевых бэкендов в Linux

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

Сколько на самом деле стоит путь пакета через ядро Linux, и сколько из этой стоимости снимают io_uring, AF_XDP и DPDK? Собрал библиотеку, в которой один и тот же цикл отправки и приёма работает поверх семи разных путей, и прогнал её на двух очень разных стендах: на домашнем десктопе с двумя 10-гигабитными портами сетевой карты Intel 82599, соединёнными AOC-кабелем, и на паре инстансов AWS c6in.4xlarge.

Читать далее

Мониторинг SSL сертификатов в Zabbix

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

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

Читать далее

Docker для параноика: организация SSH‑доступа для rootless‑контейнера без передачи приватного ключа

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

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

В статье разберём архитектуру на базе ssh-agent и rootless Docker, в которой процесс может полноценно пользоваться выданным SSH-доступом, но не получает сам приватный ключ. Это ограничение обеспечивается самой схемой доступа и сохраняется даже при компрометации ПО внутри контейнера.

Особенно актуален такой подход для систем с ИИ-агентами и дополнительными API-слоями вроде MCP-серверов.

Читать далее

Как я перестал долбить сканерами и начал думать: мой путь в Bug Bounty

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

Я не начинал свой путь в Bug Bounty с мысли «хочу стать security researcher».

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

А потом был Bug Bounty.

Читать далее

Как я автоматизировал работу врачей на Rust

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

Написал локальный софт на Rust, который переносит реквизиты из ODT, помогает оформить выписку и собирает документы в один PDF.

Читать далее

Ограничение скорости скачивания пользователей в Xray-core

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

Кто тут любит коммерческие прокси-сервисы? Я не вижу ваши руки? Да, я тоже не особый фанат. Но приходится признавать, что как только домашний Xray с вручную вписанными в JSON ключами выходит за пределы узкого круга непосредственных родственников, приходится разбираться в том же спектре проблем: гео-блоки со стороны сервисов, маршрутизация, слив и слишком обширное использование подписки, из-за чего пользователи начинают мешать друг-другу, а машины блокируются по превышению квоты. Знакомая ситуация? Жду вас под катом.

Читать далее

Как мы запускали NVME over RDMA под Alt Virtualization p11 с Huawei Dorado 5000V6. Уроки импортозамещения

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

Вообще-то, эта статья планировалась последней в цикле технических статей, в которой по шагам планировалось изложить технические заметки о внедрении нами NVMEoF через ROCEv2.

Но потом подумалось, а ведь сам процесс, как это всё организовалось, происходило, и все пережитые эмоции, интереснее, чем чисто техническое изложение.

Читать далее

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

Скрипт для Linux, переназначающий клавиши Shift, Backspace, стрелки и мышку на клавиши домашнего ряда

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

При печати руки сдвигаются или отгибается кисть к клавишам Shift, Backspace, стрелкам. Это неизбежные перемещения, даже если вы печатаете вслепую. В свое время я задался вопросом, а насколько эти движения неизбежные. С помощью autohotkey написал скрипт, который переназначил Shift прямо под мизинцы, то есть на клавиши «A» и «;».

Теперь мне не надо было изгибать кисть к шифтам, чтобы печатать заглавные буквы и спецсимволы. Затем я переназначил Backspace, затем Enter, как самые часто используемые клавиши, требующие изгибания кисти вправо. И так за пару месяцев я полностью перенес все функциональные клавиши на слои.

Читать далее

Как найти лишние процессы, открытые порты и подозрительные соединения на VDS

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

Эта статья для вас, если в top вы обнаружили десятки незнакомых процессов, которые нагружают ЦП и память. И точно для вас, если среди них слишком много kworker, запущенных из нестандартных директорий, ведь майнеры, прокси для ботнетов и реверс-шеллы зачастую маскируются под системные процессы. Под катом расскажу, как понять, не используют ли ваш сервер для атак и спама. 

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

Читать

Трансляция видео в Angie

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

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

Читать далее

Я написал верификатор eBPF для микроконтроллера. А потом ядро Linux объяснило мне, где я неправ

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

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

Нормальный человек собирает из этого термостат за вечер. Я собрал термостат, посмотрел на него и подумал: а неприятно же будет каждый раз лезть с кабелем, если я захочу поменять порог с 22 на 23 градуса.

Дальше мысль поехала не туда, и в итоге на плате оказался интерпретатор eBPF со своим верификатором байткода. Логика управления теперь заливается по Wi-Fi обычной программой на C, скомпилированной clang -target bpf. А потом я взял десять маленьких программ и прогнал каждую через свой верификатор и через верификатор ядра Linux, чтобы посмотреть, кто из нас двоих что думает.

Сошлись шесть из десяти. Про оставшиеся четыре и написана статья — они оказались интереснее, чем сам проект.

Читать далее

Разработка Platinum OS на базе Samsung M52

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

Начал портировать свою операционную систему Platinum OS на Samsung Galaxy M52. В основе — Ubuntu 26.04 LTS, собственная графическая оболочка, службы и пакеты приложений. Разблокируемый загрузчик телефона позволяет запускать модифицированные загрузочные образы и экспериментировать с Linux на настоящем устройстве.

Читать далее

Bank — сложная машина от aclabs.pro со взломом пин-кода, пивотингом и побегом из контейнера

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

Сложный таск с 6 флагами и 2 машинами. В первой зоне видимости у нас Windows машина с вебом, через который получаем доступ по winrm с первым флагом. Затем на этой машине повышаем привилегии через acl. Далее находим второй сетевой интерфейс, где обнаруживаем другой хост уже с linux на борту. Встречаем еще один веб, в котором нужно подобрать пин-код (третий флаг).

После открытия хранилища нас ждет новый порт, при первом скане, он был недоступен. Проэксплуатировав уязвимость, получаем доступ к контейнеру, в корне лежит 4 флаг. Далее находим кастомный бинарник, его придется разреверсить, чтобы понять, что именно он делает, а также прочитать файл etc/shadow. Из него получаем хэш рута и становимся владельцем контейнера (5 флаг).

В завершение проверим файл /var/run/docker.sock, который будет доступен на запись и сможем примонтировать хостовую файловую систему и прочитать финальный флаг рута на хосте.

Читать далее

Avalonia UI и Linux Embedded: делаем Grafana-дашборд на старом Raspberry Pi и древнем 32-битном OrangePi

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

В этой статье расскажем, как сделали информационную панель для офиса. Мы написали приложение на Avalonia UI, которое забирает данные из Grafana через REST API и рисует их напрямую, а затем запустили его на старых одноплатных компьютерах — без браузера, рабочего стола и оконного менеджера.

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