Обновить
256K+

Linux *

Пишем под *nix

391,96
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности
Формат публикации

Как разбирать логи в Linux: journalctl, grep, awk и sed

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

Каждый админ хотя бы раз сталкивался с ситуацией, когда сервер внезапно начинает тупить: подвисают процессы, появляются странные задержки, что-то перестаёт работать. И первая остановка в таком случае — это журналы событий. В Linux системные логи хранятся в systemd-journald, а его главный инструмент для работы — journalctl. Но просто читать логи — это скучно. Разберем, как фильтровать, искать ошибки, анализировать данные и автоматизировать разбор логов с помощью grep, awk, sed и других утилит.

Читать далее

Linux Foundation дала рекомендации по международным санкциям Минфина США и разработке ПО с открытым исходным кодом

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

Организация Linux Foundation представила рекомендации по соблюдению международных санкций против стран (включая Китай, Россию, Кубу, Иран, Северную Корею, Сирию) из списка Минфина США в рамках участия компаний и отдельных лиц из подсанкционных стран в рабочих проектах, связанных с созданием ПО, а также по поводу поддержки мейнтейнеров решений с открытым исходным кодом из подсанкционных стран и предоставления разрешения им работать внутри экосистемы текущих открытых проектов.

Читать далее

Представлен проект LinuxPDF — Linux в PDF в браузере

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

Разработчик под ником ading2210 представил проект LinuxPDF — Linux в PDF в браузере. Проект открывается только в браузерах на базе Chromium, использующих движок PDFium. Код написан на C и опубликован на GitHub по лицензией GNU General Public License v3.0.

Читать далее

Релиз образовательного пакета для детей GCompris 25.0

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

30 января 2025 года состоялся релиз открытого образовательного пакета для детей от 2 до 10 лет GCompris 25.0. Выпуск GCompris 3.0 состоялся в январе 2023 года. Версия GCompris 3.0 представлена в феврале 2024 года. В проекте изменена нумерация выпусков, первое число в номере версии теперь соответствует году, в котором сформирован выпуск. В дальнейшем разработчики решения намерены формировать один значительный релиз в год.

Читать далее

Стандартная библиотека С не потокобезопасна: проблему не решает даже Rust

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

Мы работаем над базой данных EdgeDB и в настоящее время портируем с Python на Rust существенную часть кода, отвечающего за сетевой ввод/вывод. В процессе работы мы узнали много всего интересного.

Читать далее

Как «обмануть» драйвер Linux в QEMU: создаем виртуального двойника Intel NTB Gen3

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

Наша команда системного программирования YADRO продолжает работать с open source-эмулятором QEMU.  В этой статье я расскажу, как и зачем мы создали виртуального двойника Intel NTB Gen3.

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

Читать далее

Perforator: новая система непрерывного профилирования теперь в опенсорсе

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

Привет! Сегодня мы выложили в опенсорс Perforator — систему непрерывного профилирования (continuous profiling), которую используем внутри Яндекса для анализа производительности большинства сервисов.

В Github-репозитории доступен исходный код системы и инфраструктура для развёртывания своей инсталляции Perforator на кластере Kubernetes. Кроме того, Perforator можно использовать на своём компьютере как более простую замену perf record: профили получаются точнее, а оверхед меньше. Исходный код доступен под лицензией MIT (и GPL для eBPF-программ) и запускается под x86-64 Linux.

При помощи Perforator и прошлых подходов к задаче профилирования мы регулярно оптимизируем самые крупные сервисы в Яндексе, например Баннерную крутилку или Поиск, на десятки процентов. Кроме того, Perforator реализует недостающий в опенсорсе компонент профилирования для простой автоматической оптимизации программ с использованием profile-guided optimization. Наши тесты показывают, что использование PGO даёт ускорение около 10% в разных сценариях.

Под катом поговорим про профилирование под Linux, опишем вызовы и сложности, возникающие при профилировании, изучим, как устроен Perforator внутри, и обсудим, как можно использовать полученную систему.

Читать далее

Релиз открытого мультиплатформенного растрового графического редактора Krita 5.2.9

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

29 января 2025 года состоялся релиз открытого мультиплатформенного растрового графического редактора Krita 5.2.9, предназначенного для художников и иллюстраторов. Редактор поддерживает многослойную обработку изображений, предоставляет средства для работы с различными цветовыми моделями и обладает большим набором средств для цифровой живописи, создания скетчей и формирования текстур.

Читать далее

Разбираемся с библиотекой libnl для управления трафиком в Linux

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

В статье рассмотрим как реализовать команды утилиты traffic control  с помощью библиотеки libnl на с/c++. У libnl есть неплохая документация так же есть небольшое количество тестов. Которые помогают разобраться как работать с библиотекой.

Читать далее

Эмулятор NES в каждый проект! [0x01]

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

Итак, мне удалось дойти до этого момента, и эмулятор начинает писать в неправильную область PPU, что конечно же портит всё выполнение.

Читать далее

Релиз Mozilla Thunderbird 134.0

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

27 января 2025 года состоялся релиз бесплатного кроссплатформенного приложения для управления электронной почтой и новостными лентами Mozilla Thunderbird 134.0 с системой уведомлений для оповещений рабочего стола в реальном времени. Сборки проекта доступны доя Windows, macOS и Linux разделе Thunderbird Release в канале Release Channel. Это не ESR‑выпуск, если вам нужно решение с длительным сроком поддержки, то на сайте проекта доступен Thunderbird 128.0 ESR.

Читать далее

Вышел Oracle Linux 10 Developer Preview

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

Компания Oracle представила предварительный выпуск дистрибутива Oracle Linux 10 Developer Preview (проект Oracle Linux на GitHub). Это решение создано на основе пакетной базы Red Hat Enterprise Linux 10 и полностью бинарно совместимо с ней.

Читать далее

Исходный код ядра Linux превышает 40 миллионов строк — код проекта удвоился в размере за десятилетие

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

В конце января 2025 года исходный код ядра Linux превысил 40 миллионов строк. По этому параметру он удвоился в размере за десятилетие. Ядро Linux в 2015 году имело в два раза меньше строк кода.

Читать далее

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

Исследование: небольшое изменение в коде ядра Linux, используемом в ЦОД, может сократить потребление энергии до 30%

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

Учёные из Университета Ватерлоо в Канаде выяснили что изменение в тридцати строках кода ядра Linux, используемом в большинстве крупных центров обработки данных, включая площадки Amazon и Google, может сократить потребление электроэнергии серверами и улучшить производительность сетевых устройств.

Читать далее

Эмулятор NES в каждый проект! [0x00]

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

Добро пожаловать дорогой читатель. Сегодня я расскажу о проекте, который я разрабатываю некоторое время. Это эмулятор NES. Создаю его в виде библиотеки, чтобы можно было добавить его в свою сборку эмулятора, игры или залить в микроконтроллёр. В целом, меня тянет именно в электронику, которую я мечтаю постичь уже не один год. Сама разработка игр для NES меня не очень интересует, да и в игры я не особо люблю поиграть, а вот создавать какие-то сложные вещи мне хочется всё больше и больше, чем возиться с простыми задачами. До этого я начал разрабаывать эмулятор i386 intel процессора, но понял, что не хватает сил продолжать проект и нужно выбрать что-то более простое, и это простое как мне казалось, была разработка эмулятора NES. И так я начал его разработку.

Первым делом я нашел документацию и принялся расписывать в switch case ... опкоды. В отличии от i386 здесь каждый опкод имел один байт, что упрощало разработку. Начал этот проект в октябре 2024 года, а потом забросил. Когда вновь занялся им, то я почувствовал, что у меня пропало такое ощущение, когда тебе неинтересен проект, потому что он скучный в разработке. Это ощущение пропало и я просто начал писать и писать код. В первый день я написал все case в switch, а потом понял, что это будет медленно работать. Тогда я думал так, в switch выборка идет по бинарному поиску, но я не был уверен в том, будет ли такой же вестись поиск, если числа будут перемешаны в case.

На следующий день я решил переписать это творчество так, чтобы любой опкод выполнялся всего лишь вот так.

Читать далее

Релиз PDFsam (PDF Split And Merge) 5.3.0

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

Состоялся релиз открытого кроссплатформенного проекта для работы с файлами в формате PDF (разделение, слияния, извлечения страниц, смешивание и поворот) под названием PDFsam (PDF Split And Merge) 5.3.0. Исходный код решения написан на Java и опубликован на GitHub под лицензией GNU Affero General Public License v3.0. Версия проекта PDFsam 5.2.0 вышла в ноябре 2023 года.

Сборки PDFsam (basic) 5.3.0 доступны для Windows (установщик и портативныя версия), macOS и Linux.

Читать далее

Невидимый вывод grep при поиске, включающим конец строки в файлах с разделителем строк CRLF

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

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

Уже сталкивался с этим, но давно и причину вспомнил не сразу. Пофрустрировав, всё-таки припомнил, разобрался детальнее и решил написать небольшую заметку.

TL;DR: Причина – встреча символа возврата каретки CR (\r) с управляющей последовательностью \x1B[K : CR возвращает курсор в начало строки, а \x1B[K удаляет всё от курсора до конца строки. ОС - Ubuntu 24.04, терминал Terminator 2.1.3, шелл Bash.

Подробности

Релиз открытого проекта Ventoy 1.1.00 для создания мультизагрузочной флешки

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

22 января 2025 года состоялся релиз открытого проекта Ventoy 1.1.00, который позволяет создавать загрузочные USB‑носители с несколькими операционными системами. Код проекта написан на языке программирования C и опубликован на GitHub под лицензией GNU General Public License v3.0. Предыдущая стабильная версия проекта вышла в июне 2024 года.

Читать далее

Представлен открытый проект astroterm — карта звёздного неба в терминале

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

Разработчик Далтон Люс представил открытый проект astroterm. Это карта звёздного неба в терминале. Исходный код решения написан на C и Python и опубликован на GitHub под лицензией MIT.

Читать далее

Вышла система виртуализации VirtualBox 7.1.6

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

21 января 2025 года состоялся релиз системы виртуализации Oracle VirtualBox 7.1.6. Выпуск стабильной версии VirtualBox 7.1 состоялся в сентябре 2024 года.

Читать далее