Обновить
256K+

Linux *

Пишем под *nix

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

14 лучших практик разработки приложений на OpenShift

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

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

Читать дальше: 14 лучших практик OpenShift

Установка Linux на калькулятор. Часть II

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


Как вы помните, в прошлой статье мне удалось стартануть linux на калькуляторе. Однако, работать на нём было невозможно, и я считаю это незачётом. Тогда я понял, что кроличья нора достаточно глубока и придётся полностью пересобирать всю систему, разбираясь с кодом. В итоге, я кратко прошёлся по всем этапам, которые описывал автор проекта. И результат полностью того стоит. Итак, поехали!

Опубликована ранняя версия неофициального эмулятора архитектуры Эльбрус 2000

Время на прочтение1 мин
Охват и читатели6.2K
Так и не дождавшись публикации и обсуждения на Хабре очень важной новости из мира OpenSource, решил опубликовать её самостоятельно.

Спустя нескольких месяцев разработки стала доступна первая версия набора патчей к QEMU, добавляющих поддержку отечественной архитектуры процессоров Эльбрус 2000.

На данный момент эмулятор поддерживает только 64-битные программы, скомпилированные под Linux. Реализованы почти 80% набора инструкций Эльбрус-8С.


Читать дальше →

Отлаживаем ядро из командной строки с bpftrace

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

Это очередная статья из цикла «BPF для самых маленьких» (0, 1, 2) и первая из серии практических статей про трассировку Linux современными средствами.


Из нее вы узнаете о программе и языке bpftrace — самом простом способе погрузиться в мир BPF с практической точки зрения, даже если вы не знаете про BPF ровным счетом ничего. Утилита bpftrace позволяет при помощи простого языка прямо из командной строки создавать программы-обработчики и подсоединять их к огромному количеству событий ядра и пространства пользователя. Посмотрите на КПДВ ниже… поздравляю, вы уже умеете трейсить системные вызовы при помощи bpftrace!


В отличие от предыдущих статей серии, эта относительно короткая и ее основная часть написана в формате туториала, так что уже после пяти минут чтения вы сможете создавать обработчики и собирать статистику о любом событии в ядре Linux прямо из командной строки. В конце статьи рассказывается об альтернативах — ply и BCC. Минуты во фразе «после пяти минут чтения» подразумеваются меркурианские. Появление уникальных навыков после пяти минут чтения не гарантируется.


Читать дальше →

Установка Linux на калькулятор. Часть I

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


Достаточно давно я мечтаю об устройстве, которое на своём борту будет иметь экран с тачскрином, аппаратные кнопки, и на котором без особых проблем будет работать linux. Ну и конечно же у неё будет достаточное количество интерфейсов. В своё время, надежды подавал проект Vogue, но сегодня я нашел его — идеальное устройство для карманного ношения, с мощным процессором и linux на борту. Итак, это калькулятор HP Prime G2. Там стоит шикарный процессор i.mx6ull, с которым у меня достаточно богатый опыт работы, поэтому портирование linux не казалось слишком сложной задачей. Однако, как обычно, дьявол кроется в мелочах.

Хочу поведать вам о своём тернистом пути установки Linux на калькулятор, что из этого получилось, а что нет, судить вам!
Читать дальше →

Как получить субтитрированный поток в RTMP из SDI

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

Возникла задача получить из SDI сигнала трансляцию с субтитрами и отдать её на CDN в формате RTMP потока. Пару недель мучения и мытарств изложу в кратком содержании всех серий для коллекции. Возможно, кому пригодится.

Читать далее

Что лучше: дистрибутив Linux в яблочном стиле или нормальный хакинтош?

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

Дистрибутив Trenta OS для публичного тестирования обещают выпустить в начале 2021 года

На вкус и цвет товарищей нет, но некоторым нравится интерфейс macOS. При этом они не хотят погружаться в закрытую экосистему, где Apple может запретить любую программу на компьютере, отслеживая запуск каждого бинарника: хэши отправляются в Apple в реальном времени. Разумеется, для нашей безопасности.

Конечно, большинство пользователей Apple благодарны за такую заботу, но некоторые считают её неуместной.

Выход есть: свободная и универсальная система Linux поддерживает любой GUI, в том числе «яблочный». Есть особые дистрибутивы с интерфейсом в стиле macOS или iOS — специально для пользователей с повышенными эстетическими запросами. И для тех, кто стремится вырваться из «огороженного сада» Apple, не теряя при этом чувство прекрасного.

Линус Торвальдс выпустил Linux 5.11

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

Линус Торвальдс сообщил о выходе стабильной версии 5.11 ядра Linux в еженедельной рассылке.

Этот выпуск включает поддержку технологии Intel Software Guard Extensions (SGX), которая позволяет разработчикам использовать анклавы памяти. Включена поддержка технологии Intel Platform Monitoring.

Читать далее

Локализация своих скриптов на BASH, часть 2

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

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

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

Читать далее

Цветочные новости: разработчики ОС Fuchsia добавят поддержку запуска немодифицированных Linux-программ

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

Несмотря на то, что новостей про ОС Fuchsia немного, проект продолжает развиваться, и очень активно. Доказательство — сообщение от разработчиков о своих планах реализовать механизм для запуска немодифицированных программ, которые собраны для Linux.

Основывается этот механизм на специальной «прослойке», которая получила название starnix. Именно она обеспечивает совместимость с ABI Linux.
Читать дальше →

AMD начала активно нанимать разработчиков для Linux

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

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

Читать далее

Go, локдаун и новый MPD-клиент — встречайте Ymuse

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

Уже лет десять моим основным медиаплеером на компьютере является MPD, Music Player Daemon — фоновый сервис, воспроизводящий музыку.


Чтобы с этим сервисом как-то взаимодействовать, нужна программа-клиент. Таких программ существует не один десяток, но до недавнего времени я никак не мог найти ту, которая меня бы полностью устраивала — поэтому в один прекрасный день я решил написать свою (тут и локдаун кстати подвернулся).


Предлагаю вашему вниманию краткий обзор (сравнительно) нового MPD-клиента для Linux/GTK под названием Ymuse, версию 0.16 которого я недавно выпустил.

Читать дальше →

Разработка универсального счетчика импульсов

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

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

Читать далее

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

Почему линукс использует swap-файл, часть 2

Время на прочтение7 мин
Охват и читатели27K
Первая часть маленького «срывания покрова» о работе подсистемы виртуальной памяти, связи механизмов mmap, разделяемых библиотек и кэшей вызвало такое бурное обсуждение, что я не смог удержаться от того, чтобы не продолжить исследование на практике

Поэтому, сегодня мы сделаем… Крошечную лабораторную работу. В виде крошечной же программы на C, которую мы напишем, скомпилируем и проверим в деле — со свапом и без свапа.

Читать дальше →

Пишем панельный менеджер для сертификатов на linux shell

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

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

Возможно я бы собрался силой воли, помучился бы недельку, сделал бы все стандартными однострочниками+notepad+excel, но тут внезапно у меня случился больничный отпуск, а когда температура меня попустила, а на работу еще можно было не выходить. И я случайно вспомнил, что считаю себя спецом по bash.

И пусть я не хватаю лавры автора PIUPIU, но тем не менее встречайте:

35+ кбайт двух-панельного keystore manager на Linux shell

Читать далее

Локализация своих скриптов на BASH

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

Создание меню на BASH — задача сама по себе не сложная: "case тебе в руки и echo в спину". Решая её в очередной раз, мне захотелось добавить возможность отображать текст на других языках. Осталось решить, как сделать сам процесс локализации меню более удобным. Если оно большое, то решение "в лоб" превратит его в громоздкую копипасту. Здесь я хотел бы поделиться тем, как решил эту проблему для себя. Надеюсь, для кого то это будет небезынтересным.



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


Примечание:

Я вполне понимаю и принимаю, что существуют и другие языки программирования. Как когда-то кто-то сказал здесь на Хабре — если при написании скрипта на BASH возникает необходимость хоть в одной функции, то лучше взять нормальный язык. Я с этим согласен, но иногда, как говорится, хочется, потому что хочется.


Мне не хотелось бы разбивать скрипт на несколько частей и хранить локализацию в отдельных файлах. Скрипт тем и удобен, что его проще использовать одним файлом. Поэтому тексты будем хранить в массивах.


Реализация будет состоять из:


  • буквенного кода языка
  • массива слов
  • преобразователя косвенных ссылок для обращения к массиву
  • обращения к элементам массива
  • создания меню

Теперь рассмотрим подробнее

Читать дальше →

Выявляем опечатки в проекте GTK 4 с помощью PVS-Studio

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

0793_GTK_4_continue_ru/image1.png


Возможно, вы уже читали недавнюю статью о процессе первого запуска PVS-Studio на примере проекта GTK 4 и о первичной фильтрации предупреждений. Теперь пришло время поработать с полученным отчётом более подробно. И как уже догадались наши постоянные читатели, предлагаю вашему вниманию статью с описанием найденных в коде ошибок.

Читать дальше →

Линус Торвальдс назвал процессоры Intel Itanium «потерянными» для ядра Linux

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

Ядро Linux больше не будет поддерживать процессоры Intel Itanium после решения Линуса Торвальдса выпустить патч, помечающий их архитектуру как «потерянную».

Читать далее

Мейнтейнер ядра Linux объяснил сокращение срока поддержки LTS до двух лет — это стандартная процедура получения денег

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


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

Мейнтейнер ядра Linux Грег Кроа-Хартман ответил ему, что поддержка «не является автоматической, а требует коммерческой помощи».
Читать дальше →

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

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


Эксперты компании Qualys обнаружили критическую уязвимость в утилите sudo. Злоумышленник может получить доступ с правами root, используя уязвимость CVE-2021-3156 под любым пользователем и без наличия записи в файле /etc/sudoers. Уязвимость можно применять для повышения привилегий в системе в непривилегированном процессе.
Читать дальше →