Продолжаю рассматривать отечественные дистрибутивы Linux на роль домашней и рабочей системы. На этот раз посмотрим на RED ОС.
НЕМНОГО ОБ RED ОС
Разработчиков RED ОС является компания РЕД СОФТ. На текущий момент выпущено три версии RED ОС:
7.1,
7.2,
7.3.
Мне не удалось найти убедительных источников но похоже RED ОС ведет свою родословную от ГосЛинукс, дистрибутива Linux ,специально созданного, для использования в гос. учреждениях РФ, изначально для ФСИН. В свою очередь ГосЛинукс разработан на базе CentOS 6.
Дистрибутивы RED ОС
Операционная система доступна в 2-х вариантах:
Рабочая станция,
Сервер.
Для версии 7.3 оба варианта доступны для архитектур x86-64, aarch64 (Байкал-M, Raspberry Pi), e2k v4 (Эльбрус).
Каждый из вариантов доступен в 2-х редакциях: стандартная или сертифицированная. Имеется свой репозиторий Docker-образов. Стандартные версии дистрибутивов доступны для скачивания с сайта. Физическим лицам для некоммерческого использования продукт предоставляется бесплатно, юридическим лицам необходимо приобретать лицензию.
Документация
Для RED ОС доступны руководство пользователя и администратора полностью на русском языке. Кроме этого на сайте доступна обширная база знаний в которой содержится просто огромное кол-во довольно подробных инструкций от настроек ОС и различного ПО (такого как Squid, Samba, Zabbix) до инструкций по сборке RPM пакетов. Объем базы знаний вызывает восторг, лет 10 - 15 назад когда я только начинал изучать Linux о таком можно было только мечтать. Opennet и другие ресурсы никто не отменял, но ТАКОЕ кол-во информации в одном месте да еще и на русском лично у меня даже сейчас вызывает удивление. В Базе знаний RED ОС содержится огромное кол-во материалов о настройке как рабочей станции так и сервера, и в дополнении к этому инструкции по установке различных CAD-систем, мессенджеров и даже Steam, Port Wine и многое другое. В дополнении к базе знаний есть канал на YouTube на котором тоже довольно много информации и канал в Telegram. Также на сайте доступен список совместимого ПО с возможностью поиска и список доступных в репозитории пакетов.
Установка пакетов
Для меня оказалось неожиданностью, но в RED ОС в качестве графического инструмента установки пакетов применяется dnfdragora.
Я ожидал увидеть gnome-software-center, интересно почему решили от него отказаться? В плане кол-ва доступных пакетов RED ОС оказывается довольно аскетичной, возможно сказывается родство с CentOS. Проявляется это в том что в репозиториях много различного свободного ПО, скажем так, для работы а вот современных мессенджеров, эмуляторов и игр вы там не найдете. Я смог найти всего два пакета пригодных для игр - один из них это Steam а второй DosBox. В процессе поиска и установки различных приложений на RED ОС я с удивлением обнаружил, что большое кол-во ПО предоставляет для установки на Linux пакеты deb-формата, и намного реже rpm-формата. Причем это касается не только закрытого и\или коммерческого ПО но и свободного тоже так, например, ScummVM не предоставляет rpm. И даже наличие пакетов для CentOS-based дистрибутивов не всегда спасает, но об этом чуть позже. Так что при использовании RED ОС часто придется пользоваться либо Flatpak пакетами либо архивами с бинарной сборкой, что подтверждает “База знаний” RED ОС, в которой VS Code рекомендуется устанавливать используя flatpak, Telegram и Discord из tar.gz архива, а AnyDesk предлагается ставить из rpm пакета для RHEL 8.
Пакет |
Способ установки |
---|---|
viber |
Flatpak |
Yandex Disk |
rpm |
Skype |
rpm |
Telegram |
архив |
Discord |
архив |
VS Code |
rpm |
Впрочем наличие rpm-пакета не всегда решает проблему установки, например, установка Viber из rpm проходит успешно но запускаться программа отказывается “вываливая” список ошибок:
[manul@localhost ~]$ /opt/viber/Viber
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/Viber)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/viber/Viber)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libicui18n.so.66)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libicuuc.so.66)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Widgets.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/viber/lib/libQt6Widgets.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.28' not found (required by /opt/viber/lib/libQt6Widgets.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Multimedia.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6WebEngineCore.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/viber/lib/libQt6WebEngineCore.so.6)
/opt/viber/Viber: /lib64/libc.so.6: version `GLIBC_2.30' not found (required by /opt/viber/lib/libQt6WebEngineCore.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Quick.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/viber/lib/libQt6Quick.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.28' not found (required by /opt/viber/lib/libQt6Quick.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Gui.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/viber/lib/libQt6Gui.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.28' not found (required by /opt/viber/lib/libQt6Gui.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Qml.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Core.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /opt/viber/lib/libQt6Core.so.6)
/opt/viber/Viber: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.28' not found (required by /opt/viber/lib/libQt6Core.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6Positioning.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libpng16.so.16)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libwebp.so.6)
/opt/viber/Viber: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /opt/viber/lib/libQt6OpenGL.so.6)
Честно скажу что поленился разбираться и искать решение проблемы, плюс меня интересует сценарий использования Отечественных дистрибутивов обычным пользователем без знания подробностей функционирования Linux дистрибутивов. Таким образом Viber пришлось ставить из Flatpak.
Приключения с установкой ПО на этом не заканчиваются, по какой-то причине файловый менеджер в RED ОС отказывается запускать исполняемые файлы с ошибкой вида:
При этом если запускать из терминала то запуск проходит успешно.
Игры
Если бы для RED ОС существовал маскот по образу и подобию OS-tan то это была бы строгая учительница или педантичная коллега в офисном дресс-коде. Душа ее суха как страницы книг воздух в офисах. В репозиториях RED ОС мне не удалось найти никаких пакетов с играми за исключением установщика Steam. Ни the Battle for Wesnoth, ни свободных движков Doom, ни эмуляторов по типу SVUMMVM - ничего! Справедливости ради стоит сказать что я проверил сайты нескольких проектов (the Battle for Wesnoth, fheroes, SCUMMVM, Xonotic, RetroArch) и обнаружил что почти все ПО нынче распространяется либо в формате tar.gz с скомпилированными бинарными файлами, либо через flatpak. Для многих проектов есть пакеты для Debian\Ubuntu и крайне редко для есть пакеты для CentOS\Fedora.
Steam
Установка Steam на RED ОС выполняется из репозитория и не вызывает проблем. Установка и запуск нативных для Linux игр работает без нареканий, а вот в случае использования Proton все уже не так просто и зависит от оборудования и от игры. Некоторые запускаются без проблем, некоторые требуют дополнительной настройки, а некоторые вовсе не удается запустить.
ION Storm запущенная нативно:
Ex Machine запущенная через Proton:
Wine
Из репозиториев RED ОС можно выполнить установку WINE версии 8.2, что на мой взгляд достаточно свежея версия и позволит использовать некоторое количество Windows приложений.
DevOps
Здесь наблюдается та же проблема как и с любыми не “mainline” (Debian\Ubuntu\CentOS\Fedora) дистрибутивами. Многие ansible-роли не будут работать т.к. не пройдут проверку ansible_distribution. Но в отличие от ALT Linux правки будут намного проще т.к. RED ОС родственник CentOS, так например для роли geerlingguy.nginx мне пришлось внести лишь пару правок вида “or (ansible_distribution == “REDOS”)”. В документации RED ОС есть статья по установке Kubernetes версии 1.24, если нужна версия поновее то придется разбираться самому или искать помощи на просторах Интернета. В репозитории есть пакеты docker версии 20.10.24 и VirtualBox версии 6.1.42, также в наличии и podman. minikube работает без проблем как с docker так и c VirtualBox драйверами:
Софт в репозиториях RED ОС не “bleeding edge” но и не такой старый как у CentOS 7 (хм… интересная строка выводы версии для gcc):
- docker-ce-20.10.24
- Python 3.8.2
- gcc версия 8.3.1 20191121 (Red Hat 8.3.1-6) (GCC)
- go version go1.19.5
- VirtualBox Версия 6.1.42_REDSOFT
- openjdk version "1.8.0_275"
- java-17-openjdk-1:17.0.1.0.12
- Linux 5.15.87
- wine-8.2 (Staging)
- openssl-1.1.1q-7.el7.3.x86_64
- openssh-server-8.9p1-7.el7.x86_64
- glibc-2.28-8.el7.x86_64
- ansible-2.9.27-3.el7.noarch
- kernel 5.15.87-1
- wine-8.2-2.el7.x86_64
Также в репозиторих есть Zabbix 6-ой версии, множество различных экспортеров для Prometheus, а вот самого Prometheus нету:
[manul@localhost ~]$ dnf search prometheus
Последняя проверка окончания срока действия метаданных: 0:01:16 назад, Вс 05 ноя 2023 10:58:16.
======================================================================= Имя и Краткое описание совпадение: prometheus ========================================================================
ceph-prometheus-alerts.noarch : Prometheus alerts for a Ceph deplyoment
collectd-write_prometheus.i686 : Prometheus output plugin for collectd
collectd-write_prometheus.x86_64 : Prometheus output plugin for collectd
golang-github-grpc-ecosystem-prometheus-devel.noarch : Prometheus monitoring for your gRPC Go servers and clients
golang-github-m3db-prometheus-client-devel.noarch : Prometheus instrumentation library for Go applications
golang-github-m3db-prometheus-client-model-devel.noarch : Data model artifacts for Prometheus
golang-github-prometheus.i686 : Prometheus monitoring system and time series database
golang-github-prometheus.x86_64 : Prometheus monitoring system and time series database
golang-github-prometheus-alertmanager.i686 : Prometheus Alertmanager
golang-github-prometheus-alertmanager.x86_64 : Prometheus Alertmanager
golang-github-prometheus-alertmanager-devel.noarch : Prometheus Alertmanager
golang-github-prometheus-client-devel.noarch : Prometheus instrumentation library for Go applications
golang-github-prometheus-client-model-devel.noarch : Data model artifacts for prometheus
golang-github-prometheus-common-devel.noarch : Go libraries shared across prometheus components and libraries
golang-github-prometheus-common-promlog-devel.noarch : Go libraries shared across prometheus components and libraries
golang-github-prometheus-devel.noarch : Prometheus monitoring system and time series database
golang-github-prometheus-log-devel.noarch : Prometheus Logging Library
nginx-prometheus-exporter.i686 : NGINX Prometheus Exporter for NGINX and NGINX Plus
nginx-prometheus-exporter.x86_64 : NGINX Prometheus Exporter for NGINX and NGINX Plus
prometheus-jmx-exporter.noarch : Prometheus JMX Exporter
prometheus-jmx-exporter-openjdk11.noarch : OpenJDK 11 binding for prometheus-jmx-exporter
prometheus-jmx-exporter-openjdk17.noarch : OpenJDK 17 binding for prometheus-jmx-exporter
prometheus-jmx-exporter-openjdk8.noarch : OpenJDK 1.8.0 binding for prometheus-jmx-exporter
prometheus-postgres_exporter.i686 : A PostgreSQL metric exporter for Prometheus
prometheus-postgres_exporter.x86_64 : A PostgreSQL metric exporter for Prometheus
python3-celery-prometheus-exporter.i686 : Exporter for Celery related metrics in order to get picked up by Prometheus
python3-celery-prometheus-exporter.x86_64 : Exporter for Celery related metrics in order to get picked up by Prometheus
python3-django-prometheus.noarch : Django middlewares to monitor your application with Prometheus
python3-prometheus-client.noarch : Python client for the Prometheus monitoring system
rubygem-prometheus-client-doc.noarch : Documentation for rubygem-prometheus-client
================================================================================= Имя совпадение: prometheus =================================================================================
golang-github-prometheus-exporter-toolkit-devel.noarch : Utility package to build exporters
golang-github-prometheus-procfs-devel.noarch : Retrieve system, kernel and process metrics from proc
prometheus-node_exporter.i686 : Exporter for machine metrics
prometheus-node_exporter.x86_64 : Exporter for machine metrics
rubygem-prometheus-client.noarch : A suite of instrumentation metric primitivesthat can be exposed through a web services interface
========================================================================== Краткое описание совпадение: prometheus ===========================================================================
clickhouse-exporter.i686 : Clickhouse Exporter for Prometheus
clickhouse-exporter.x86_64 : Clickhouse Exporter for Prometheus
golang-github-clickhouse-exporter-devel.noarch : Clickhouse Exporter for Prometheus
golang-github-danielqsj-kafka-exporter-devel.noarch : Kafka exporter for Prometheus
golang-github-msiedlarek-nifi-exporter-devel.noarch : Apache NiFi metrics exporter for Prometheus
golang-github-mwitkow-conntrack-devel.noarch : Go middleware for net.conn tracking (prometheus/trace)
kafka-exporter.i686 : Kafka exporter for Prometheus
kafka-exporter.x86_64 : Kafka exporter for Prometheus
nifi-exporter.i686 : Apache NiFi metrics exporter for Prometheus
nifi-exporter.x86_64 : Apache NiFi metrics exporter for Prometheus
python3-starlette-exporter.i686 : Prometheus exporter for Starlette and FastAPI
python3-starlette-exporter.x86_64 : Prometheus exporter for Starlette and FastAPI
systemtap-exporter.i686 : Systemtap-prometheus interoperation mechanism
systemtap-exporter.x86_64 : Systemtap-prometheus interoperation mechanism
tomcat_exporter.i686 : A Prometheus exporter for Apache Tomcat
tomcat_exporter.x86_64 : A Prometheus exporter for Apache Tomcat
Итог
RED ОС подобен CentOS но только это RED ОС. На мой взгляд для домашнего использования лучше взглянуть на тот же ALT Linux или другие более распространенные дистрибутивы, например, Linux Mint. В случае использования на серверах RED ОС не плохой выбор - получаем в меру консервативную и стабильную ОС, особенно если есть потребность использовать ПО из реестра Отечественного ПО. Обширная русскоязычная документация и база знаний будет весьма полезна как начинающим так и опытным пользователям и администраторам. Я в своей практике это уже оценил - вместо тысячи строк в Telegram и кучи созвонов можно отправить ссылку на базу знаний и снабдить комментариями для конкретного случая.
Комментарии (8)
murkin-kot
09.11.2023 09:55+1В репозиториях RED ОС мне не удалось найти никаких пакетов с играми
Все "отечественные" ОС заточены под отечественное государство, то есть под работу в офисе, чаще всего государственном, со всеми соответствующими свистелками вроде отечественной криптографии. Поэтому игры там - дело случайного увлечения кого-то из разработчиков дистрибутива.
Пока идёт волна импортозамещения нет коммерческого смысла выводить "отечественные" ОС на массовый потребительский рынок. Хотя на будущее заделы вроде пытаются делать, но на фоне денег от импортозамещения это именно уровень чьего-то личного творчества.
Writer
09.11.2023 09:55+3РЕД ОС - это старый Centos 7 (el7) с частично обновленной пакетной базой. Типичный серверный дистрибутив, который никогда и не предназначался для десктопа. Странно, что вы этого не знали.
amra-dk Автор
09.11.2023 09:55Я предполагал, но точно не знал. Я попытался найти в сети информацию производной какого дистрибутива является РЕД ОС но ничего точного и явного найти не смог.
FotoHunter
09.11.2023 09:55+1Я пол года ковырялся в ЭТОМ "Красном волосатом мухе" - "баща знаний" содержит кучу ошибок, если всё ставить строго по инструкции, то может не получиться. На самом деле версии не 2, а одна она же и сервер и рабочая станция - попробуйте удалить либруофис из серверной версии и вас ждёт "сюрприз" ???? На ваш вопрос откуда растут ноги - 7.3 это перезодная версия между CentOS 7 и 8, в половине пакетов мелькает rhel7, но некоторые программы по умолчанию из 8ки, например dnf вместо yum. Докер там есть, НО в ядре отключен cgroup v1, а он ещё для многих контейнеров нужен.
Я много сделал в качестве "недовольного клиента", что бы они допиливали систему, но продукт всё равно сырой. На нём "заставили" работать несколько гос. корпораций и только поэтому они на рынке.
dimitrii_z
09.11.2023 09:55Да, по обзору сырой продукт, почему-то не осилили накатить на нормальное ядро свои иксы и софт. Особенно кринжово смотрится зоопарк пакетов (deb, rpm). Астра выглядит постабильнее, хотя там тоже интерфейс как минимум на любителя.
А вообще Debian наше всё, он стабильнее, пакеты нужные новее, а база знаний и всяких форумов поболее, хоть и не на русском, но то такое, если ты идёшь в айти то читать на английском должен по-умолчанию. К тому же ныне ИИ переведёт всё весьма неплохо ????
Tujh
Побуду снобом, но, пожалуйста, давайте писать или RED OS или РЕД ОС. Смешанное написание создаёт кучу проблем при чтении.