Обновить
256K+

Linux *

Пишем под *nix

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

Вышел FreeBSD 13.0

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


9 апреля 2021 года стала доступна новая версия FreeBSD 13.0. Первый выпуск стабильной ветки 13.х уже можно скачать для всех основных архитектур (amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 и riscv64), также доступны сборки для виртуальных машин и платформ облачного хостинга (Amazon EC2, Google Compute Engine и Hashicorp/Atlas Vagrant).
Читать дальше →

Сравнение криптографической производительности популярных ARM-процессоров для DIY и Edge-устройств, плюс Xeon E-2224

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

В одном из наших проектов используется Edge-модуль, работающий на широком наборе оборудования c процессором ARM, типа Raspberry Pi. Данное устройство используется для того, чтобы пересылать медиа-данные посредством зашифрованного канала на сервер.

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

Читать далее

Новый sd-bus API от systemd

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

В новом выпуске systemd v221 мы представляем API sd-bus, поставляемый со стабильной версией systemd. sd-bus - это наша минимальная библиотека D-Bus IPC на языке программирования Си, поддерживающая в качестве бэкэндов как классическую D-Bus на основе сокетов, так и kdbus. Библиотека была частью systemd в течение некоторого времени, но использовалась только внутри проекта, поскольку мы хотели свободно вносить изменения в API, не затрагивая внешних пользователей. Однако теперь, начиная с v221, мы уверены, что сделали стабильный API.

В этом посте я предоставляю обзор библиотеки sd-bus, краткое повторение основ D-Bus и его концепций, а также несколько простых примеров того, как писать клиенты и сервисы D-Bus с её помощью.

Читать далее

Nix: Что это и с чем это употреблять?

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


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


Мы в Typeable хотели опубликовать небольшой цикл статей о том, как Nix нам помогает (и немного мешает) в разработке. Но, проведя немножко времени в поисках похожего материала здесь, с удивлением обнаружили, что на Хабре нет толкового введения в Nix, на которое можно было бы сослаться.


Статья от @snizovtsev подойдёт как хорошее введение при разработке на C++, но это не совсем то введение, которое мне хотелось бы видеть. Поэтому я решил написать его сам :)


Файлы к этой статье можно найти здесь.

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

DNS-over-HTTPS заработает в Google Chrome для Linux

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

Разработчики Google Chrome объявили о планах развернуть поддержку DNS-over-HTTPS (DoH) в браузере Chrome для Linux. DoH уже поддерживается на Windows, Mac, ChromeOS и Android.

Читать далее

Вышел стабильный релиз Almalinux, альтернатива CentOS 8 от Red Hat

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

Компания Cloudlinux выпустила первую стабильную версию дистрибутива Almalinux. Это форк коммерческого дистрибутива от Red Hat, который называется Red Hat Enterprise Linux (RHEL). Новый дистрибутив — альтернатива популярнейшему CentOS, поддержка которого была прекращена в начале года.

Несмотря на то что компания Red Hat выпустила альтернативу и сделала ее бесплатной для некоторых пользователей и компаний, множество пользователей CentOS не стали переходить на RHEL. Эта нехорошая ситуация спровоцировала активное развитие форков — альтернатив CentOS 8. Одна из них уже готова к использованию.
Читать дальше →

Создание Python Telegram бота и его deploy на виртуальную машину

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

В 2021 г. ожидается рост числа запросов на чат-боты на 15-20% от ор­га­низа­ций из госсектора, об­ра­зова­ния, медицины, ло­гис­ти­ки, ре­тей­ла и e-commerce, промышленных и добывающих компаний.

Всвязи с этим остро встает вопрос: как запустить своего первого телеграм-бота и заставить работать его 24/7 на удаленной виртуальной машине.

Читать далее

В релиз вышел графический тулкит GTK 4.2

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

После трех месяцев разработки сообществу был представлен тулкит GTK 4.2.0. Это многоплатформенная разработка для создания графического интерфейса пользователя. GTK 4, в отличие от GTK 3, развивается в рамках нового процесса разработки, цель которого — предоставить разработчикам приложений стабильный и поддерживаемый в течение нескольких лет API.

Нужно это для того, чтобы использовать GTK 4 не опасаясь, что каждые полгода придется переделывать приложения из-за изменения в API с выпуском очередной ветки GTK в релиз.

Читать далее

Глубокое погружение в Linux namespaces, часть 4

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

Часть 1
Часть 2
Часть 3
Часть 4


В завершающем посте этой серии мы рассмотрим Network namespaces. Как мы упоминали в вводном посте, network namespace изолирует ресурсы, связанные с сетью: процесс, работающий в отдельном network namespace, имеет собственные сетевые устройства, таблицы маршрутизации, правила фаервола и т.д. Мы можем непосредственно увидеть это на практике, рассмотрев наше текущее сетевое окружение.

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

Глубокое погружение в Linux namespaces, часть 3

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

Часть 1
Часть 2
Часть 3
Часть 4


Mount namespaces изолируют ресурсы файловых систем. Это по большей части включает всё, что имеет отношение к файлам в системе. Среди охватываемых ресурсов есть файл, содержащий список точек монтирования, которые видны процессу, и, как мы намекали во вступительном посте, изолирование может обеспечить такое поведение, что изменение списка (или любого другого файла) в пределах некоторого mount namespace инстанса M не будет влиять на этот список в другом инстансе (так что только процессы в M увидят изменения)

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

Cosmo Communicator — возможно еще один Linux телефон

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

Возможно еще один Linux телефон, но это не точно... не точно - что получится, хотя даже то что есть очень любопытно.

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

Читать далее

Линус Торвальдс рассказал о том, где Rust впишется в Linux

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

Линус Торвальдс и Грег Кроа-Хартман поделились своими мнениями о том, как они видят работу на Rust в Linux. Ядро Linux написано на C, но Rust постепенно получает поддержку для использования в качестве системного языка.

Читать далее

А вы знали, что в основе ОС 85% смартфонов лежит Linux?

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


По факту на рынке смартфонов доминирующее положение занимают именно устройства на базе Linux. Некоторые от такого заявления призадумаются, другие же преисполнятся гордостью за Linux в стиле The Sound of Music – The Hills are Alive. Далее я приведу интересные факты, подтверждающие, что в основе 85% смартфонов действительно лежит ядро Linux, а также представлю ряд многообещающих новинок этого рынка.
Читать дальше →

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

Приёмы неблокирующего программирования: полные барьеры памяти

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

В первых двух статьях цикла мы рассмотрели четыре способа упорядочить доступ к памяти: load-acquire и store-release операции в первой части, барьеры чтения и записи в память — во второй. Теперь пришла очередь познакомиться с полными барьерами памяти, их влиянием на производительность, и примерами использования полных барьеров в ядре Linux.


Рассмотренные ранее примитивы ограничивают возможный порядок исполнения операций с памятью четырьмя различными способами:


  • Load-acquire операции выполняются перед последующими чтениями и записями.
  • Store-release операции выполняются после предыдущих чтений и записей.
  • Барьеры чтения разделяют предыдущие и последующие чтения из памяти.
  • Барьеры записи разделяют предыдущие и последующие записи в память.

Внимательный читатель заметил, что одна из возможных комбинаций в этом списке отсутствует:

Чтение выполняется... Запись выполняется...
… после чтения smp_load_acquire(), smp_rmb() smp_load_acquire(), smp_store_release()
… после записи ??? smp_store_release(), smp_wmb()
Оказывается, обеспечить глобальный порядок записей и последующих чтений из памяти гораздо сложнее. Процессоры вынуждены прилагать отдельные усилия для этого. Сохранение такого порядка стоит недёшево и требует явных инструкций. Чтобы понять причину этих особенностей, нам придётся спуститься на уровнь ниже и присмотреться к тому, как процессоры работают с памятью.
Читать дальше →

Шпаргалка по Linux grep, домашний термостат на Raspberry Pi, эл. книга «Ansible for DevOps» и PostgreSQL на Linux

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

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

Читать дальше: Шпаргалка по Linux grep...

Фонд свободного программного обеспечения объявил победителей премии Free Software Awards 2020

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

Памятный приз, врученный лауреату премии Free Software Awards 2019 — Джиму Мейрингу.

20 марта 2021 года Фонд свободного программного обеспечения (FSF) объявил победителей премии Free Software Awards, которая ежегодно вручается за развитие свободного программного обеспечения (СПО). В этом году лауреатами почетной награды стали — разработчик Алиcса Розенцвейг (Alyssa Rosenzweig), разработчик и основатель правозащитной организации Software Freedom Conservancy Бредли Кун (Bradley M. Kuhn) и проект открытой платформы для управления общественными и некоммерческими организациями CiviCRM, инфраструктура которого позволяет более 11 тыс. организаций по всему миру выполнять свои задачи во всех сферах жизни.
Читать дальше →

GitOps: Определение дрейфа вашей инфраструктуры Terraform / Terragrunt

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

Всем привет.

Допустим Вы работаете с Terraform / Terragrunt (второе здесь непринципиально, но лучше изучайте, если ещё не используете) и автоматизируете инфраструктуру, например, в AWS (но совершенно необязательно AWS). Инфраструктура в коде репозитория, разворачивается из него же, казалось бы вот оно GitOps счастье :)

Всё идёт хорошо, пока какой-то пользователь не поменял что-то руками через консоль / UI и конечно забыл об этом кому-либо сказать. А то и сделал что-то нехорошее намеренно. И вот он ваш дрейф: код и инфраструктура больше не совпадают!

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

Читать далее

DevOps: автоматизация инфраструктуры на примере Terraform, docker, bash, prometheus exporters, Gitlab и WireGuard

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

Всем привет.

Есть такие люди, которые работают с облачной инфраструктурой и не используют автоматизацию, потому что это долго, нужно вникать, а им надо фичи пилить. Накликали что-то там в UI, подключились по ssh, поставили всякого с помощью apt и т.д. и конфигурационные файлы ещё вручную поменяли. Документации конечно же написать времени не хватило или в ней много разных хитрых шагов и повторить настройку этой инфраструктуры в точности уже нельзя или очень сложно, а сервисы крутятся в проде. А потом человек забыл что и как делал в точности или вообще уволился.

Хочу показать на небольшом примере, что автоматизировать инфраструктуру, например в AWS, может быть достаточно просто и приятно, а получившийся результат достаточно прозрачен и сам по себе является документацией, т.к. это инфраструктура как код. Если конечно есть знания Terraform или желание его немного изучить.

Читать далее

Подключаем дисплей SPI LCD  ILI9341 к одноплатному компьютеру Banana Pi BPI-M64 или любому другому на ОС Armbian

Время на прочтение12 мин
Охват и читатели63K
LCD SPI ILI9341 Banana Pi BPI-M64

Пост содержит инструкцию как подключить TFT-LCD дисплей на популярном контроллере ILI9341 к одноплатному компьютеру на ОС Armbian с помощью дерева устройств (Device Tree overlays) без танцев с бубном. В сети Интернет много материала как подключать различные LCD экраны к Raspberry Pi. Но что если у вас нет Raspberry Pi, а хочется подключить недорогой LCD экран на SPI интерфейсе? Все что вам необходимо, это любая плата с поддержкой ОС Armbian. В каталог поддерживаемых плат ОС Armbian входят платы: Asus, Pine64, Hardkernel, Orange Pi, Banana Pi, и т.д. На данный момент в каталоге более 114 моделей плат, объявлена поддержка различного оборудования из коробки. Доступны для подключения: 4G/LTE модемы, USB Wi-Fi, USB Bluetooth, USB Ethernet, сканеры DVB-тюнеры и т.д. К всем этим платам можно легко подключить  SPI LCD дисплей ILI9341, как это реализовать прошу под кат.

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

Время на прочтение3 мин
Охват и читатели14K
Из примера по разбору кода с пятнадцатилетним багом, который позволяет использовать уязвимость. Переполнения, переполнения везде.

12 марта 2021 года специалист по кибербезопасности из компании GRIMM Адам Николс (Adam Nichols) рассказал об обнаруженной недавно критической уязвимости CVE-2021-27365 (переполнение буфера кучи, повышение локальных привилегий) в подсистеме iSCSI ядра Linux. Баг в коде был с 2006 года. В настоящее время затронутыми оказались все дистрибутивы Linux, но, к счастью, уязвимый модуль ядра scsi_transport_iscsi не загружается по умолчанию.

Также в коде подсистемы iSCSI ядра Linux были обнаружены еще две менее серьезные уязвимости — CVE-2021-27363 (утечка указателя ядра) и CVE-2021-27364 (чтение за пределами допустимого диапазона).
Читать дальше →