Forwarded from Типичный Сисадмин
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13🔥7😁7🤯1
Дискуссия об использовании языка C++ для разработки ядра Linux
В списке рассылки разработчиков ядра Linux возобновилось обсуждение перспектив использования современного кода на C++ в ядре Linux, помимо нынешнего применения языка Си с ассемблерными вставками и продвижения языка Rust.
С инициативой продолжения обсуждения выступил Ганс Питер Анвин, один из ключевых разработчиков ядра в компании Intel и создатель проектов как syslinux, klibc и LANANA, разработавший для ядра Linux систему автомонтирования, реализацию RAID 6, драйвер CPUID и x32 ABI. По мнению Анвина, с 1999 года языки C и C++ значительно продвинулись вперёд в своём развитии и язык C++ стал лучше, чем С, подходить для разработки ядра операционных систем.
Возможности, для которых ещё недавно приходилось привлекать специфичные GCC-расширения, теперь легко реализовать на стандартном C++, и во многих случаях использование C++ позволит улучшить инфраструктуру без глобального изменения кода.
Анвин считает, что C++ более предпочтителен, чем Rust, так как последний существенно отличается от языка С по синтаксису, непривычен для текущих разработчиков ядра и не позволяет постепенно переписывать код. В поддержку использования С++ в ядре также выступили Иржи Слаби из компании SUSE и Дэвид Хауэллс из Red Hat.
Linux / Линукс🥸
В списке рассылки разработчиков ядра Linux возобновилось обсуждение перспектив использования современного кода на C++ в ядре Linux, помимо нынешнего применения языка Си с ассемблерными вставками и продвижения языка Rust.
С инициативой продолжения обсуждения выступил Ганс Питер Анвин, один из ключевых разработчиков ядра в компании Intel и создатель проектов как syslinux, klibc и LANANA, разработавший для ядра Linux систему автомонтирования, реализацию RAID 6, драйвер CPUID и x32 ABI. По мнению Анвина, с 1999 года языки C и C++ значительно продвинулись вперёд в своём развитии и язык C++ стал лучше, чем С, подходить для разработки ядра операционных систем.
Возможности, для которых ещё недавно приходилось привлекать специфичные GCC-расширения, теперь легко реализовать на стандартном C++, и во многих случаях использование C++ позволит улучшить инфраструктуру без глобального изменения кода.
Анвин считает, что C++ более предпочтителен, чем Rust, так как последний существенно отличается от языка С по синтаксису, непривычен для текущих разработчиков ядра и не позволяет постепенно переписывать код. В поддержку использования С++ в ядре также выступили Иржи Слаби из компании SUSE и Дэвид Хауэллс из Red Hat.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25😁4 4
Please open Telegram to view this post
VIEW IN TELEGRAM
😁66❤7🔥7 5💅3
Разработку ядра остановили из-за непогоды
В Портленд, где живёт Линус Торвальдс, пришла снежная буря, из-за чего десятки тысяч горожан остались без электричества и связи. В том числе и Торвальдс.
— написал он в рассылке и отложил открытие окна слияний на неопределённый срок.
Ранее это событие уже откладывалось, так как изначально окно слияний выпало на зимние праздники.
Linux / Линукс🥸
В Портленд, где живёт Линус Торвальдс, пришла снежная буря, из-за чего десятки тысяч горожан остались без электричества и связи. В том числе и Торвальдс.
Надеюсь, я ошибаюсь, но несколько лет назад на восстановление энергоснабжения, нарушенного из-за упавших деревьев, потребовалось более недели. Может, в этот раз будет не так
— написал он в рассылке и отложил открытие окна слияний на неопределённый срок.
Ранее это событие уже откладывалось, так как изначально окно слияний выпало на зимние праздники.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30 15🤯8😁3🫡3
Кстати, у нас пропала реакция пингвина 🥸
Она вроде неплохо вписалась, поэтому если желаете её оставить,а может и добавить новую , то ссылка 👇
https://t.iss.one/linux_gram?boost
upd:🥸 в строю
Она вроде неплохо вписалась, поэтому если желаете её оставить,
https://t.iss.one/linux_gram?boost
upd:
Please open Telegram to view this post
VIEW IN TELEGRAM
Уязвимость в патчах Red Hat к загрузчику GRUB2, позволяющая обойти проверку пароля
Уязвимость (CVE-2023-4001) позволяет на многих системах с UEFI обойти проверку пароля, выставленного в GRUB2 для ограничения доступа к загрузочному меню или командной строке загрузчика.
Проблема вызвана изменением, добавленным Red Hat в пакет с GRUB2, поставляемый в RHEL и Fedora Linux. Уязвимость не проявляется в основном проекте GRUB2 и затрагивает только дистрибутивы, применившие дополнительные патчи Red Hat.
Для обхода аутентификации пользователь, имеющий физический доступ к компьютеру, может подключить внешний накопитель, такой как USB Flash, выставив для него UUID, повторяющий идентификатор загрузочного раздела /boot атакуемой системы.
Linux / Линукс🥸
Уязвимость (CVE-2023-4001) позволяет на многих системах с UEFI обойти проверку пароля, выставленного в GRUB2 для ограничения доступа к загрузочному меню или командной строке загрузчика.
Проблема вызвана изменением, добавленным Red Hat в пакет с GRUB2, поставляемый в RHEL и Fedora Linux. Уязвимость не проявляется в основном проекте GRUB2 и затрагивает только дистрибутивы, применившие дополнительные патчи Red Hat.
Для обхода аутентификации пользователь, имеющий физический доступ к компьютеру, может подключить внешний накопитель, такой как USB Flash, выставив для него UUID, повторяющий идентификатор загрузочного раздела /boot атакуемой системы.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18👍6 6
Please open Telegram to view this post
VIEW IN TELEGRAM
😁80 37👍5🗿4🤯2
openSUSE Leap 16 будет построен на платформе ALP, использующей контейнеры
Платформа ALP (Adaptable Linux Platform) позиционируется как продолжение развития дистрибутива SUSE Linux Enterprise и отличается разделением базовой основы дистрибутива на части.
Основой дистрибутива станет урезанное окружение "host OS", включающее только компоненты, минимально необходимые для работы поверх оборудования и управления. Все приложения и компоненты пространства пользователя будут запускаться не в смешанном окружении, а в отдельных контейнерах или в виртуальных машинах, выполняемых поверх "host OS" и изолированных друг от друга.
В качестве основы для "host OS" задействован продукт SLE Micro. Для централизованного управления предлагаются системы управления конфигурацией Salt (предустановлена) и Ansible (опция). Для запуска изолированных контейнеров доступны инструментарии Podman и K3s (Kubernetes). Среди системных компонентов, вынесенных в контейнеры, присутствуют yast2, podman, k3s, cockpit, GDM (GNOME Display Manager) и KVM.
Linux / Линукс🥸
Платформа ALP (Adaptable Linux Platform) позиционируется как продолжение развития дистрибутива SUSE Linux Enterprise и отличается разделением базовой основы дистрибутива на части.
Основой дистрибутива станет урезанное окружение "host OS", включающее только компоненты, минимально необходимые для работы поверх оборудования и управления. Все приложения и компоненты пространства пользователя будут запускаться не в смешанном окружении, а в отдельных контейнерах или в виртуальных машинах, выполняемых поверх "host OS" и изолированных друг от друга.
В качестве основы для "host OS" задействован продукт SLE Micro. Для централизованного управления предлагаются системы управления конфигурацией Salt (предустановлена) и Ansible (опция). Для запуска изолированных контейнеров доступны инструментарии Podman и K3s (Kubernetes). Среди системных компонентов, вынесенных в контейнеры, присутствуют yast2, podman, k3s, cockpit, GDM (GNOME Display Manager) и KVM.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
🗿8👍5
Когда-то настольный Linux выглядел и ощущался примерно так
Конкретно на скрине использовано современное ПО: Ubuntu 20.04, Trinity Desktop 14.0.9, Тема: Plastik с цветовой схемой Mandriva Ia Ora, иконки: Crystal SVG, шрифты: Luxi Sans, Виджеты: SuperKaramba с Edmon, ChromeClock и KNotes, Музыкальный проигрыватель: Audacious, Браузер: SeaMonkey.
Linux / Линукс🥸
Конкретно на скрине использовано современное ПО: Ubuntu 20.04, Trinity Desktop 14.0.9, Тема: Plastik с цветовой схемой Mandriva Ia Ora, иконки: Crystal SVG, шрифты: Luxi Sans, Виджеты: SuperKaramba с Edmon, ChromeClock и KNotes, Музыкальный проигрыватель: Audacious, Браузер: SeaMonkey.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
❤42 26👍9
Из репозитория проекта Chromium удалены компоненты, необходимые для сборки браузера Chrome для операционной системы Fuchsia. Отмечается, что поддержка Fuchsia в Chrome была экспериментом, который теперь прекращён. Отдельно указано, что причиной прекращения поддержки является сворачивание программы по развитию Fuchsia для рабочих станций.
Поддержка браузерных компонентов WebEngine и WebRunner для Fuchsia будет продолжена, но отдельный полноценный браузер Chrome поставляться не будет. Вероятно дальнейшее развитие Fuchsia будет сосредоточено только на потребительских устройствах, таких как системы домашней автоматизации, умные фоторамки и колонки.
Linux / Линукс🥸
Поддержка браузерных компонентов WebEngine и WebRunner для Fuchsia будет продолжена, но отдельный полноценный браузер Chrome поставляться не будет. Вероятно дальнейшее развитие Fuchsia будет сосредоточено только на потребительских устройствах, таких как системы домашней автоматизации, умные фоторамки и колонки.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4😁2
Please open Telegram to view this post
VIEW IN TELEGRAM
❤44🗿15😁6🤝6
Мейнтейнер блочной подсистемы ядра Linux потратил 5 минут на код и увеличил число операций ввода/вывода в секунду на 6%
Йенс Аксбо сообщил, что смог увеличить число операций ввода/вывода в секунду (IOPS) на 6% (или даже больше для полновесных конфигураций ядер Linux).
Его идея состояла в том, чтобы кэшировать запрос текущего времени в блочной подсистеме, совершаемый при каждой операции ввода/вывода, поскольку в блочной системе нет ничего, что нуждалось бы в наносекундной точности времени.
Аксбо пояснил, что эта задумка пришла к нему в голову 5 лет назад, но он тогда отложил реализацию из-за других задач. Недавно он вернулся к своей идее. Разработчик потратил всего 5 минут на внесение правок и тестирование своего предположения.
Linux / Линукс🥸
Йенс Аксбо сообщил, что смог увеличить число операций ввода/вывода в секунду (IOPS) на 6% (или даже больше для полновесных конфигураций ядер Linux).
Его идея состояла в том, чтобы кэшировать запрос текущего времени в блочной подсистеме, совершаемый при каждой операции ввода/вывода, поскольку в блочной системе нет ничего, что нуждалось бы в наносекундной точности времени.
Аксбо пояснил, что эта задумка пришла к нему в голову 5 лет назад, но он тогда отложил реализацию из-за других задач. Недавно он вернулся к своей идее. Разработчик потратил всего 5 минут на внесение правок и тестирование своего предположения.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍70🔥10😁5
Разработка пользовательской оболочки COSMIC приближается к альфа-выпуску
Оболочка находится в разработке уже более двух лет. Предполагается, что альфа-версию удастся опубликовать в конце марта. Находящиеся в разработке возможности:
• Создана утилита COSMIC Randr для вывода параметров и настройки экранов в окружении на базе Wayland, которую планируется задействовать в конфигураторе COSMIC Settings для настройки параметров вывода.
• Апплет для создания скриншотов.
• Эмулятор терминала COSMIC Terminal, написанный с использованием фреймворка alacritty_terminal и поддерживающий такие возможности, как отрисовка с использованием GPU, темы оформления и расширенные методы ввода.
И другие возможности.
Linux / Линукс🥸
Оболочка находится в разработке уже более двух лет. Предполагается, что альфа-версию удастся опубликовать в конце марта. Находящиеся в разработке возможности:
• Создана утилита COSMIC Randr для вывода параметров и настройки экранов в окружении на базе Wayland, которую планируется задействовать в конфигураторе COSMIC Settings для настройки параметров вывода.
• Апплет для создания скриншотов.
• Эмулятор терминала COSMIC Terminal, написанный с использованием фреймворка alacritty_terminal и поддерживающий такие возможности, как отрисовка с использованием GPU, темы оформления и расширенные методы ввода.
И другие возможности.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27
Стабильный релиз Wine 9.0
После года разработки и 26 экспериментальных версий представлен стабильный релиз открытой реализации Win32 API - Wine 9.0, который вобрал в себя более 7000 изменений. Из ключевых достижений в новой версии выделяется реализация архитектуры WoW64 для запуска 32-разрядных программ в 64-разрядном окружении, интеграция драйвера для поддержки Wayland, поддержка архитектуры ARM64, реализация API DirectMusic и поддержка смарткарт.
Linux / Линукс🥸
После года разработки и 26 экспериментальных версий представлен стабильный релиз открытой реализации Win32 API - Wine 9.0, который вобрал в себя более 7000 изменений. Из ключевых достижений в новой версии выделяется реализация архитектуры WoW64 для запуска 32-разрядных программ в 64-разрядном окружении, интеграция драйвера для поддержки Wayland, поддержка архитектуры ARM64, реализация API DirectMusic и поддержка смарткарт.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
💯58😁18 13
Доступна СУБД MySQL 8.3.0
• Устранено 25 уязвимостей, из которых одна (CVE-2023-5363, затрагивает OpenSSL) может быть эксплуатирована удалённо.
• На платформе Linux добавлена поддержка компоновщика mold.
• Требования к поддерживаемому компилятором стандарту C++ подняты с C++17 до C++20.
• В MySQL Enterprise Edition добавлена поддержка сбора телеметрии с метриками о работе сервера в формате OpenTelemetry и передачи данных на поддерживающий данный формат сетевой обработчик.
И другие изменения.
Linux / Линукс🥸
• Устранено 25 уязвимостей, из которых одна (CVE-2023-5363, затрагивает OpenSSL) может быть эксплуатирована удалённо.
• На платформе Linux добавлена поддержка компоновщика mold.
• Требования к поддерживаемому компилятором стандарту C++ подняты с C++17 до C++20.
• В MySQL Enterprise Edition добавлена поддержка сбора телеметрии с метриками о работе сервера в формате OpenTelemetry и передачи данных на поддерживающий данный формат сетевой обработчик.
И другие изменения.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
Необычные и малоизвестные трюки с перенаправлениями в bash, которые могут значительно упростить работу.
▪️ /dev/tcp
bash особым образом обрабатывает перенаправление в файл /dev/tcp/host/port, и если host - это допустимое имя хоста или ip адрес, а port - целое число порта или имя службы, пытается открыть соответствующий TCP-сокет.
Например, перенаправим вывод TCP сервера времени на cat и выведем на экран:
$cat < /dev/tcp/time.nist.gov/13
Более сложный пример - HTTP запрос. Давайте создадим новый файловый дескриптор, перенаправим на него строку HTTP-запроса, затем прочитаем ответ.
▪️ Placeholder -
Некоторые команды, например tar, воспринимают символ - как перевод на стандартный вывод, что позволит воспользоваться результатом работы команды без создания промежуточных файлов, например создадим бэкап директории /www/data и скопируем по ssh:
▪️ Группировка команд
Передача стандартного вывода одной команды в стандартный ввод другой команды - мощный инструмент. Но что, если вам нужно передать стандартный вывод нескольких команд? Для того чтобы объединить вывод нескольких команд можно использовать группировку команд, для этого используется синтаксис:{ command1; command2; }, например объединим вывод команд ls, чтобы подсчитать количество файлов в двух директориях:
▪️ Подмена процессов
Подстановка(подмена) процессов позволяет обрабатывать выходные данные команды как файл, упрощая объединение и манипулирование данными из нескольких команд. Для реализации использует следующий синтаксис:
<(команда) — этот синтаксис создает именованный канал (также известный как FIFO) и соединяет с ним выходные данные команды внутри скобок. Именованный канал ведет себя как файл, что позволяет использовать его в качестве входных данных для другой команды.
>(команда) – этот синтаксис также создает именованный канал, но подключает его к вводу команды внутри скобок. Это позволяет перенаправить вывод одной команды на ввод другой команды.
Таким образом, можно сравнить вывод двух команд с помощью diff, как если бы мы сохранили его в файлы:
Или перенаправим вывод ls на вход grep и wc:
#Bash
Linux / Линукс🥸
▪️ /dev/tcp
bash особым образом обрабатывает перенаправление в файл /dev/tcp/host/port, и если host - это допустимое имя хоста или ip адрес, а port - целое число порта или имя службы, пытается открыть соответствующий TCP-сокет.
Например, перенаправим вывод TCP сервера времени на cat и выведем на экран:
$cat < /dev/tcp/time.nist.gov/13
60311 24-01-02 10:43:53 00 0 0 798.9 UTC(NIST) *
Более сложный пример - HTTP запрос. Давайте создадим новый файловый дескриптор, перенаправим на него строку HTTP-запроса, затем прочитаем ответ.
$exec 5<>/dev/tcp/google.de/80
$echo -e "GET / HTTP/1.1\nhost: google.de\n\n" >&5
$cat <&5 | head
HTTP/1.1 301 Moved Permanently
Location: https://www.google.de/
Content-Type: text/html; charset=UTF-8
Date: Thu, 18 Nov 2021 08:27:18 GMT
Expires: Sat, 18 Dec 2021 08:27:18 GMT
Cache-Control: public, max-age=2592000
Server: gws
Content-Length: 218
X-XSS-Protection: 0
X-Frame-Options: SAMEORIGIN
▪️ Placeholder -
Некоторые команды, например tar, воспринимают символ - как перевод на стандартный вывод, что позволит воспользоваться результатом работы команды без создания промежуточных файлов, например создадим бэкап директории /www/data и скопируем по ssh:
tar zcvf - /www/data | ssh user@remoter "cat > /backup/wwwdata.tar.gz"
▪️ Группировка команд
Передача стандартного вывода одной команды в стандартный ввод другой команды - мощный инструмент. Но что, если вам нужно передать стандартный вывод нескольких команд? Для того чтобы объединить вывод нескольких команд можно использовать группировку команд, для этого используется синтаксис:{ command1; command2; }, например объединим вывод команд ls, чтобы подсчитать количество файлов в двух директориях:
$mkdir dir{1,2}
$touch dir1/test1.txt
$touch dir2/test2.txt
${ ls dir1; ls dir2; } | wc -l
2
▪️ Подмена процессов
Подстановка(подмена) процессов позволяет обрабатывать выходные данные команды как файл, упрощая объединение и манипулирование данными из нескольких команд. Для реализации использует следующий синтаксис:
<(команда) — этот синтаксис создает именованный канал (также известный как FIFO) и соединяет с ним выходные данные команды внутри скобок. Именованный канал ведет себя как файл, что позволяет использовать его в качестве входных данных для другой команды.
>(команда) – этот синтаксис также создает именованный канал, но подключает его к вводу команды внутри скобок. Это позволяет перенаправить вывод одной команды на ввод другой команды.
Таким образом, можно сравнить вывод двух команд с помощью diff, как если бы мы сохранили его в файлы:
$diff <(ls dir1) <(ls dir2)
< test1.txt
---
> test2.txt
Или перенаправим вывод ls на вход grep и wc:
ls | tee >(grep 'txt$') >(wc -l) > /dev/null
#Bash
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
Обновление X.Org Server 21.1.11 с устранением 6 уязвимостей
Опубликованы корректирующие выпуски X.Org Server 21.1.11 и DDX-компонента xwayland 23.2.4. В новых версиях устранено 6 уязвимостей (CVE-2023-6816, CVE-2024-0229, CVE-2024-21885, CVE-2024-21886, CVE-2024-0409, CVE-2024-0408). Некоторые из которых могут быть эксплуатированы для повышения привилегий в системах, в которых X-сервер выполняется с правами root, а также для удалённого выполнения кода в конфигурациях, в которых для доступа используется перенаправление сеанса X11 при помощи SSH.
Linux / Линукс🥸
Опубликованы корректирующие выпуски X.Org Server 21.1.11 и DDX-компонента xwayland 23.2.4. В новых версиях устранено 6 уязвимостей (CVE-2023-6816, CVE-2024-0229, CVE-2024-21885, CVE-2024-21886, CVE-2024-0409, CVE-2024-0408). Некоторые из которых могут быть эксплуатированы для повышения привилегий в системах, в которых X-сервер выполняется с правами root, а также для удалённого выполнения кода в конфигурациях, в которых для доступа используется перенаправление сеанса X11 при помощи SSH.
Linux / Линукс
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM