Обновить
303.11

Linux *

Пишем под *nix

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

Как писать нативные игры с OpenGL ES для игровой ретро-консоли Anbernic на C#

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

В этой статье я расскажу, как писать игры для консоли Anbernic средствами OpenGL ES на C# .NET8. Для примера напишу примитивный клон Майнкрафта.

Рендерить

Новости

Проблемы с которыми я столкнулся при написании рекурсивного парсера journal в Linux

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

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

Читать далее

Tiny Core Linux 16.2: полноценная система весом 23 МБ. Что это и зачем?

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

Tiny Core Linux — редкий пример проекта, который десятилетиями остается маленьким и при этом регулярно обновляется. Актуальная версия Tiny Core Linux 16.2 по-прежнему весит всего 23 МБ. Как разработчики уложились в такой объем? Где и кому вот это все может пригодиться в 2025 году? Давайте разбираться. И, к слову, если вы сталкивались с дистрибутивом, пусть и не новой версией, расскажите, как он вам, в комментариях.

Читать далее

GD32 Unleashed: тотальная эмуляция в QEMU

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

Зачем эмулировать то, что можно купить за копейки? Тратить месяцы на создание виртуальной модели микроконтроллера, если реальная отладочная плата на базе GD32F303 стоит как пара чашек кофе? Ответ прост: хороший физический стенд — это не просто плата. Это проектирование, сборка, место в стойке, электропитание, обжиг кабелей и поддержка в рабочем состоянии. А самое главное — его часто нельзя раздать каждому разработчику. Но что, если можно запустить ту же прошивку, что и на реальном железе, в эмуляторе?

В этой статье я представляю результат работы нашей команды из отдела разработки встраиваемого ПО в YADRO. Наиболее полную на сегодняшний день модель SoC GD32F30X в QEMU и набор интерфейсов, которые делают взаимодействие с эмулируемой периферией «прозрачным» для хостовой системы.

Читать далее

Локальный диск на 288 ПБ: монтируем S3-бакет Yandex Cloud без боли

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

Решил я тут, что будет удобно иметь S3 бакет как диск в системе для всякого. Так как я плотно работаю с Yandex Cloud, то и использовать буду их бакет.

У них довольно щедрые тарифы и достаточно большие бесплатные лимиты.

Я сижу на Федоре. Для подключения бакета буду использовать GeeseFS - - высокопроизводительная файловая система S3 ( Яндекс , Amazon ), соответствующая стандарту POSIX и написанная на языке Go.

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

Будет работать кстати и на винде.

Естественно нужно иметь аккаунт в яндекс облаке. У меня он есть. Создать новый не представляет сложности. Там ещё и грант 4000 рублей дадут. Поэтому переходим к делу.

В облаке нужно будет создать бакет. А так же статические ключи доступа.

Скачиваю бинарник https://github.com/yandex-cloud/geesefs/releases/latest/download/geesefs-linux-amd64. Кстати должна быть установлена ещё fuse, в федоре она предустановлена.

В профиль aws нужно добавить созданный ранее статический ключ доступа. Если вы не пользовались aws cli, то нужно создать файл ~/.aws/credentials, если пользовались то файл уже есть. В него нужно добавить профиль

Читать далее

Самые частые ошибки при настройке VPS: опыт техподдержки

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

«Сервер не пингуется», «интернета нет», «пароль не подходит», «почему пропало место на диске?» — если вы когда-нибудь арендовали VPS, эти фразы вам знакомы.

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

Читать далее

Состоялся релиз российской ОС с локальным ИИ «МСВСфера» 10.1

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

Главной новинкой, конечно, стал ИИ-ассистент «Василиса», разработанный нашими  коллегами партнёрами из «Сибирских нейросетей» (Новосибирск). Его ключевая особенность — он работает полностью локально, без доступа в Интернет.

Читать далее

Rust в ядре Linux: долгий путь от осторожных попыток к реальному применению

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

Совсем недавно мы вспоминали, как Rust вырос из стартапа до языка, у которого серьезные планы на Linux. И вот свежие новости: на Maintainers Summit 2025 года разработчики ядра решили, что Rust доказал свою пользу и можно расширить сценарии его использования. Это не значит, что он теперь на равных с C, но проект вышел за рамки «просто эксперимент». Давайте разберем, как все происходило, зачем нужно, почему были споры и что это сулит для будущего ядра. Поехали!

Читать далее

8 лучших RDP-клиентов 2025 года

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

Удалёнка уже стала нормой, поэтому надежный RDP‑клиент — обязательный инструмент админа. Под катом рассмотрим популярные RDP‑клиенты за 2025 год, а также расскажем, как выбрать подходящий вариант.

Читать далее

Отказоустойчивый кластер Angie с VRRP и Keepalived

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

Ранее мы рассматривали различные варианты балансировки нагрузки (HTTP, L4) с помощью Angie. Однако мы обходили стороной вопрос отказоустойчивости. Балансировщик становится единой точкой отказа для системы, и эту проблему необходимо решать. Одним из решений является использование протокола VRRP для организации отказоустойчивого кластера — его мы и разберём в этой статье.

Читать далее

Шпаргалка по настройке VPS на Debian/Ubuntu (2025)

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

Наконец-то я её доделал! Шпаргалка по настройке свежего Ubuntu/Debian VPS, которую начинал писать, когда ещё сам был новичком.

Вы только что купили сервер, а что дальше? Каждый раз я гуглил и пошагово делал одно и то же, тратил на это много времени, пока не собрал всё в одном месте. Теперь за 15–20 минут вы можете превратить «голый» VPS в безопасную и удобную машину.

Этот базовый минимум с чёткими командами и объяснениями. Никакого Ansible и сложностей — чистая ручная настройка. Подойдёт всем, кто только осваивает Linux, и каждый раз не знает, с чего начать.

Читать далее

Станет ли FreeBSD 15.0 новым шагом в развитии свободной ОС

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

2 декабря 2025 года, спустя два года после выхода ветки 14.0, сообщество FreeBSD представило долгожданный релиз 15.0. Нам обещают ряд технических улучшений и серьезные изменения в подходе к разработке и сопровождению системы. Кажется, все желающие уже выпустили новости по этому случаю с перечислением основных апдейтов. Что ж, попробуем посмотреть внимательнее, что же нам предлагают.

Читать далее

6 Docker-фич для продвинутого использования. Часть 2

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

Привет Хабр! Снова.

Docker уже давно стал стандартом, и базовые команды вроде docker rundocker build или docker compose up знакомы любому разработчику. Но экосистема и инструментарий контейнеризации гораздо глубже.

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

Читать далее

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

Особенности работы с физической памятью в ОС Linux, часть 1

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

Когда в последний раз Вы задумывались, как выделяется память на самом низком уровне? Соединим ниточкой вызов malloc с системными вызовами, структурами ядра, а также особенности выделения физической памяти.

Читать далее

Два режима SPEC: разгоняемся на Peak, притормаживаем на Base

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

Привет, Хабр!

Все мы любим быстрые программы и высокие показатели в бенчмарках. Когда гоняешь тесты производительности, так и тянет включить все оптимизации компилятора, чтобы выжать максимум. Но если вы имели дело с пакетами тестов SPEC (например, SPEC CPU), то, вероятно, замечали, результаты там делятся на две категории Base и Peak.

В тестах SPEC CPU есть концепция базового прогона (base run) и пикового (peak run). Это строго определенные режимы с разными правилами оптимизации. Base про честность и сопоставимость, Peak про максимальную производительность любой ценой (ну, почти любой).

Смотреть детали

Поиск работы в Telegram: как автоматизировать рутину с помощью JobStalker

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

Поиск работы часто превращается в бесконечный скроллинг по Telegram-каналам: десятки уведомлений, тонны сообщений, чтение длинных описаний вакансий, попытки понять, подходит ли это тебе. А ведь Telegram — один из самых популярных источников свежих предложений о работе, особенно в IT, маркетинге и фрилансе. Но вручную фильтровать всё это — сплошная потеря времени. Здесь на помощь приходят современные технологии: машинное обучение, которое может анализировать текст лучше, чем человек, и автоматизировать процесс.

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

Ссылка на репозиторий

Читать далее

Android-смартфон как веб-камера под Linux

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

Врываюсь я тут как‑то на онлайн‑собес в приличную контору с намерением выглядеть серьёзно и трезво. Но вебка моего ноута решила навалить хоррора и выдала такую шакальную картинку, будто я подключился к созвону не из дома, а из колодца Самары Морган. Ощущение, будто каждый кадр несёт астматичный голубь‑стажёр пока видео пытается догнать хотя бы цифру 3 в слове «30 FPS».

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

Что? Твоя вебка на ноуте тоже скулит «Верните мне мой 2007»? Или ты статный Linux‑PC‑боярин, у которого камер столько же сколько друзей в реальной жизни? Не беда — если у тебя под рукой есть более‑менее приличный Android‑смартфон, значит ты зашёл в правильную дверь.

Читать далее

Как я подружил WSL, VirtualBox и Ansible, чтобы быстро создавать VM Alpine на Windows

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

Хочешь быстро поднять несколько лёгких Linux-виртуалок из Windows, да так, чтобы процесс можно было легко повторить? Я, как любитель и самоучка, недавно решил с этим разобраться и всё получилось.

Я сделал это так, на Windows через WSL установил Alpine сборки minirootfs, затем при помощи Ansible развернул в Oracle VM VirtualBox 3 виртуальные машины на базе Alpine сборки standard. Никаких облаков, только локальный контроль и минимум зависимостей. Для чего всё это? Сейчас всё чаще говорят о минималистичных системах, об оптимизации железа под конкретные задачи, о работе на граничных устройствах, вот и захотелось попробовать всё своими руками.

Читать далее

Элегантный OSDev: Пишем ядро ОС на modern C++ без макросов. Часть 3: Аппаратный HAL и Прерывания

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


Это третья статья из цикла по разработке ОС на С++. В данной статье я познакомлю читателя, с прерываниями x86 реализуем ее поддержку. Добавим работу с клавиатурой. Познакомимся с такими устройствами как PIC и напишем код для работы и инициализации. Я так же буду делать упор, на абстракцию и высокоуровневый код.

Заходите будет интересно.

Читать далее

Я установил k3s на Arch, чтобы вам не пришлось

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

Статья для тех, кто пытался поставить k3s на Arch Linux и столкнулся с зависающим установщиком, проблемами DNS и отсутствующими systemd юнитами. Полное руководство по ручной установке с реальными командами и решениями.

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