Monthly Archives: February, 2022

Linux + GNU в настольных системах

Создание второго варианта статьи в 2022-м году связано с безвозвратным переходом платформы WordPress на вёрстку текста в формате «блоков». Прежняя версия статьи стала нередактируемой. По завершении подготовки материала версия текста, опубликованного ранее, будет удалена.

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

Дальше – больше. Обнаружили себя инициативы крупных ИТ-корпораций по созданию собственных аппаратных компонентов вычислительных систем и сетей, в первую очередь – центральных процессоров. Не будет выглядеть невероятным появление в ближайшие годы аппаратно-программных решений, жёстко привязанных только коммерческим инициативам одной конкретной или группы связанных компаний, что приведёт, де-факто, к ограничению свободы выбора пользователей: пользователю будет позволено только то, что лежит в плоскости интересов компании, и ничего иного; иное – только за деньги и под полным контролем действий потребителя.

У наиболее прозорливых и наблюдательных людей к настоящему моменту времени сложилось однозначное понимание того факта, что ИТ двигаются пусть и в объективно сложившемся, но скверном направлении. В контексте обсуждения переломить ситуацию возможно только за счёт использования открытого ПО и децентрализованных или федеративных сервисов. Настоящий материал не преследует, но и не исключает, некие философские и антропологические оценки сложившейся в ИТ ситуации, а скорее стремится осветить приземлённые задачи: рассмотреть реальную возможность использования свободного ПО в операционной системе Fedora Linux; дать конкретные рекомендации „просто пользователю“ для „просто пользования“.

Вводные замечания

§ 1 — Прошлое и настоящее

«Linux для „десктопа“ не готов» – задумчиво проговаривали опытные пользователи Linux в нулевые годы XXI-го века, и объективно они были правы. Масса задач, которые должны были выполняться рядовым пользователем ПК в операционной системе на базе ядра Linux (далее для простоты – ОС Linux), заменялись установкой вменяемых шрифтов, нетривиальной настройкой драйверов устройств, восстановлением системы после обновлений ядра, поиском работоспособного на данной платформе ПО, попытками заставить имеющееся ПО работать как нужно, перманентной борьбой с неожиданными проблемами. Недоуменные вопросы аксакалам ОС Linux – „проблемы на ровном месте, как так?!“, „почему элементарные действия приводят к специфическим трудностям?“, „почему тот или иной момент столь не продуман?“ – натыкались на насмешки, наиболее мягко выражаемые словами: „это open source, мой дорогой друг“, „тебе никто ничего не должен“ или „читай ман, учись и делай сам“. На вопросы наподобие „где найти GUI-версию приложения для рекомпрессии видео?“ давался – довольно часто даётся и теперь! – ответ: „Нам GUI не нужон! Настоящий линуксоид смотрит только в чёрную консоль Unix“ и т.п. В результате где-то высокомерное, где-то пренебрежительное, но, несомненно, близорукое отношение сообщества Linux к новоявленным пользователям, вполне искренне желающим обосноваться в мире свободного ПО, привело к тому, что в настоящее время усреднённая по планете доля Linux на настольных системах составляет, на май 2024 года, порядка четырёх процентов.

§ 2 — Почему Linux, или Нужно ли читать дальше?

Ниже в сжатом виде указаны базовые признаки ОС Linux, вне зависимости от дистрибутива, отличающие её от проприетарной Windows – как положительные, так и отрицательные, – чтобы была возможность понять, стоит ли вообще задумываться о свободных альтернативах в мире операционных систем.

Преимущества ОС на основе ядра Linux:

  1. Прозрачное шифрование жёсткого диска на уровне ядра Linux. Столь удобного, надёжного, нересурсоёмкого варианта обеспечения безопасности данных, хранимых на жёстком диске ПК, в коммерческих ОС не существует. Шифрование диска задаётся уже на этапе установки ОС Linux.
  2. Централизованное перманентное поддержание системного и прикладного ПО в актуальном состоянии без участия пользователя. Пользователю не требуется отслеживать появление свежих версий рабочих приложений, система это делает самостоятельно.
  3. Наилучший среди всех существующих ОС, наиболее надёжный, быстрый механизм восстановления/переноса всех настроек ранее установленной системы после сбоя, переноса жёсткого диска на другую машину или в случае создания клона рабочей системы на новой машине, включая полное сохранение/перенос настроек пользовательских приложений, путём копирования рабочей директории /home/USER.
  4. Не всегда, но довольно часто, в связи с открытостью разработки, инновационные технологии сразу реализуются в Linux, и только затем, с отставанием, проникают в коммерческие ОС. Здесь следует упомянуть новаторские файловые системы, средства разработки ПО, наборы инструментов для разработки графических интерфейсов, новые языки и парадигмы программирования, новации в построении окружений рабочего стола и т. д.
  5. Отсутствие вирусов, эксплоитов, руткитов, зловредных программ, „загрязнителей“, программ-шпионов, рекламных и мошеннических приложений.
  6. Средства программирования, интегрированные в систему. Компиляторы, заголовочные файлы, наборы инструментов разработки уже имеются в Linux или устанавливаются одной командой в терминале.
  7. Мощные механизмы работы в вычислительных сетях и отличная интеграция с локальной и глобальной сетевой инфраструктурой. Linux сравнительно просто позволяет развернуть домашний медиасервер, наладить взаимодействие с телевизором (DLNA), запустить собственный сайт, работать с удалёнными серверами, прозрачно монтировать облачные хранилища и т.д.
  8. С учётом п.п. 2, 5 и вследствие внутренней организации файловой системы, особенностей взаимодействия системы с пользователем, специфической оптимизации приложений и отсутствием системного реестра – Linux не деградирует со временем. Linux через 10 лет будет работать так же, как сегодня. В целом: Linux быстрее.

В каком случае не стоит смотреть в сторону ОС Linux?

— если требуется использование специализированного ПО, существующего только для Windows.

Что ждёт пользователя, если он решится перейти на открытые свободные ОС на основе ядра Linux?

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

— неспособность остановиться и подумать; парадигма «далее, далее, далее – OK» может дать неожиданный результат или вовсе не дать результата;

— неприятие эпизодической работы в терминале; поскольку в Linux каждая программа – это ещё и команда, ряд довольно нетривиальных задач весьма просто и наглядно решается именно в терминале заданием определённой последовательности текстовых команд; такого рода действия потребуются не часто, но, несомненно, потребуются;

— нежелание понять и принять организацию файловой системы, неспособность забыть о наличии дисков C:\, D:\ и E:\; нужно твёрдо усвоить: в ОС Linux имеется домашняя директория /home – и в ней вся жизнь.

§ 3 — Почему Fedora?

Потому что за операционной системой Fedora Linux стоит мощный состоятельный самостоятельный разработчик – корпорация Red Hat, являющаяся подразделением корпорации IBM – крупнейшего в мире производителя и поставщика аппаратных вычислительных комплексов и программного обеспечения.

Малая вовлечённость крупных компаний в разработку системного и прикладного ПО для Linux привела к недостаточному количеству жизненно необходимых программ, кое-где ­– к невысокому их качеству, неоптимальности архитектурных решений, нерегулярности обновлений исходных кодов, зависимости от предпочтений конкретных разработчиков, не всегда отличающихся научностью подхода к проектированию и разработке приложений. Это предопределило судьбу ключевой свободной ОС: Linux прижился лишь у системных администраторов, программистов и увлечённых пользователей. Отдельная история, вплоть до революции 22 ноября 2016-го года, когда OC Fedora Workstation 25 перешла по умолчанию на организацию графической системы по протоколу Wayland, – это низкое качество отрисовки динамичных сцен в играх и мультимедиа. Качество картинки на экране монитора – важная сторона операционных систем для „просто пользователя“, и оно не оправдывало ожиданий. Как указано выше, с ноября месяца 2016-го года всё изменилось: Linux стал десктопом.

Не большая, но необходимая историческая отсылка.

Пожалуй, ни одна технология в мире свободного ПО не приводила к большему количеству жёсткого негодования, шаблонных насмешек, позёрского раздражения, чаще – яростного неприятия, нежели разработка протокола Wayland и перевод на его основу графических подсистем Linux. Сравниться с Wayland по степени отрицания может лишь подсистема инициализации служб Linux под названием «systemd».

Характерным является то, что в начале своего пути – 2008-2012 годы – Wayland просто отторгался за „ненадобностью“ – «всё же и так работает!» Затем – 2013-2015 годы – появился насмешливый интерес: „на наш век хватит и X Window system, а кому нужно – пусть продолжают заниматься ерундой, к 2030 году закончат“. Третий из четырёх исторических этапов в продвижении Wayland обозначился в приснопамятном 2016-м году, когда стало понятно, что неважная, ломаная на динамичных сценах картинка на экране ПК под управлением Linux побеждается не установкой проприетарных драйверов для видеокарты и не ручной „работой напильником“ над настройками подсистемы отрисовки видео, а переходом на отвечающую современным требованиям концепцию – сообщество Linux в значительной мере осознало: всё-таки, это прогресс. Четвёртый, и последний, этап начнётся с момента полного исключения „хорошо работающей“ X Window system образца 1984/1987 года из дистрибутивов Linux и BSD в пользу Wayland.

Статистика: на июнь 2020-го года доля систем Linux на основе протокола Wayland — 5%; на июль 2021-го года — 11%; в феврале 2022 года — 16%; май 2022 года — 23%.

На примере внедрения Wayland хорошо обозначилось ретроградство какой-то части Linux-сообщества, которое, по логике вещей, наоборот должно находиться на острие современных технологий как в программном коде, так и в ПО на его основе. Данный феномен, по всей видимости, можно объяснить технологической местечковостью, ограниченностью кругозора и куцостью мышления отдельных членов сообщества, равно как и вполне разумной профессиональной привычкой „работает – не трогай“.

Fedora Linux в форме дистрибутива Fedora Workstation стал в мире свободных операционных систем наиболее передовым и инновационным. Значительная кадровая и финансовая подпитка проекта успешной американской корпорацией Red Hat, сделала своё дело: Fedora вплотную приблизилась к тому, что можно назвать хорошей операционной системой для настольных архитектур.

Окружение рабочего стола GNOME в Fedora Linux

Впоследствии за Fedora подтянулись ряд других дистрибутивов: OpenSUSE, Debian, Ubuntu, Slackware и Manjaro – те системы, что также с разной степенью справедливости можно назвать хорошими. Рабочее окружение во всех перечисленных дистрибутивах – GNOME. Официальный переход на Wayland окружения KDE впервые реализован в дистрибутиве Fedora 34, который вышел в свет 20 апреля 2021 года. Использование KDE+Wayland предоставляет совершенно другой опыт взаимодействия с системой – революция свершилась и в мире KDE.

Частное мнение

Несмотря на огромное количество дистрибутивов, начинающим пользователям Linux имеет смысл рассматривать лишь три: Fedora, Ubuntu и Manjaro. Указанные дистрибутивы в известной степени можно сравнить, соответственно, с MacOS, Windows и Linux. Fedora – это своего рода „линуксовый“ MacOS, поскольку последние версии окружения GNOME внешне весьма похожи на указанную проприетарную ОС. Ubuntu – „линуксовый“ Windows, поскольку это наиболее популярная и простая в освоении ОС на основе ядра Linux. Manjaro – самый „линуксовый“ Linux как являющийся весьма передовым и гибко настраиваемым. Однако все три перечисленные ОС – это всё тот же Linux, со своими отличиями и подходами к взаимодействию с пользователем.

§ 4 — Настольная система на основе Linux и GNU

Хорошая настольная система на основе ядра Linux и комплекса программных решений GNU обеспечивает:

  1. стабильность работы – здесь же и работоспособность – целевого аппаратно-программного средства любой допустимой архитектуры, комбинации аппаратных подсистем, набора программных решений;
  2. наличие программных решений под конкретные задачи, регулярная их обновляемость;
  3. скорость и удобство работы в заданном окружении рабочего стола;
  4. приятный внешний вид.

Выше в порядке убывания важности перечислены ключевые критерии качества настольных систем. Базовым  критерием применимости операционных систем на основе Linux „просто пользователями“ является оправданная сложность их установки и работоспособность системы сразу после таковой. Здесь у подавляющего большинства дистрибутивов Linux всё в порядке, хотя отдельные позорные исключения имеются, когда, например, после установки нет штатных решений по настройке переключения раскладки клавиатуры.

Учитывая засилие 73-процентной системы (Windows) на машинах пользователей – потенциальных потребителей ОС на основе Linux, – сравнение, там где это уместно, будет осуществляться именно с ней. Некоторые наиболее интересные результаты будут приводиться на примере конкретных рабочих ПК, на которых установлена Fedora и условно названных «Машина-1», «Машина-2», «Машина-3». Общая характеристика Машины-1: стационарный ПК; материнская плата Gigabyte; Intel i5, 4 ядра, 3200 МГц; DDR-4 16 ГБ, 2400 МГц (19 200 Гбит/с); очень старая видеокарта nVidia 2 ГБ; жёсткий диск Samsung SSD NAND 1 ТБ. Характеристики Машины-2: ноутбук 2021 года выпуска; процессор AMD Ryzen 3, 4 ядра, 8 потоков, 3400 МГц; ОЗУ 8 ГБ DDR-4, 2400 МГц (19 200 Гбит/c); интегрированный видеочип ATI, жёсткий диск Samsung SSD 512 ГБ. Характеристики Машины-3: стационарный ПК-медиасервер в безмониторном варианте; материнская плата Gigabyte GA-EP45-DS3L; Intel Core2Duo E7400, 2 ядра, 2800 МГц; DDR-2, 4 ГБ, 1333 МГц (10 600 Гбит/с); жёсткий диск Toshiba, 2 ТБ, 7200 об/мин.

Настоящий материал не ода Fedora. Несмотря на грозные интеллектуальные баталии «какой Linux лучше», все системы на базе ядра Linux – rpm- или deb-based, с GNOME или KDE, с systemd или init, с меньшим количеством ПО в репозиториях или большим, с zypper или apt, с ext4 или btrfs  – работают одинаково. Всё определяется лишь навыками пользователя рабочей станции или администратора сервера. Здесь утверждается, что при всех неизбежно наличествующих недостатках Fedora Workstation – наиболее близка к тому, что можно назвать хорошим Linux’ом – инновационным и с лицом, повёрнутым к среднестатистическому пользователю, условной домохозяйке.

1. СТАБИЛЬНОСТЬ

Касательно Fedora Workstation отмечается следующее.

  1. Устанавливая Fedora Linux, можно ожидать хорошую и очень хорошую поддержку аппаратных средств без необходимости дополнительных манипуляций с драйверами.
    Характерный пример: на Машине-2 в Fedora Linux, в отличие от Windows, работает регулировка яркости экрана и громкости звука клавишами.

2. НАЛИЧИЕ ПРОГРАММНЫХ РЕШЕНИЙ

Для корректности введём шкалу оценок – пятибалльную равномерно распределённую. Два балла не означают „неудовлетворительно“, это „плохо по ряду показателей, но пользоваться можно“.

Система оценок степени удобства использования ПО и предоставляемых им возможностей следующая:
1 балл — крайне неудачная программа, пользоваться практически невозможно;
2 балла — плохая по ряду важных показателей программа, но пользоваться можно;
3 балла — средняя по качеству программа с рядом заметных недостатков;
4 балла — хорошая программа, пользоваться достаточно удобно; имеется несколько незначительных недостатков;
5 баллов — отличная продуманная программа с массой предоставляемых возможностей.

СЕТЬ и ИНТЕРНЕТ

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

<Таблицы в начальной версии, пробные. Подлежат существенной переработке и дополнениям>

ОФИСНЫЕ ПРИЛОЖЕНИЯ

3. СКОРОСТЬ и УДОБСТВО

Касательно Fedora Workstation отмечается следующее.

1) Неизменная отзывчивость приложений в случаях нехватки оперативной памяти, активного использования системой раздела подкачки и при загрузке жёсткого диска.
В целом, Windows активно и постоянно эксплуатирует жёсткий диск – особенно в простое, – что приводит к невозможности быстрого запуска даже „лёгких“ приложений и затруднённости работы уже запущенных приложений. Попробуйте в Windows запустить копирование файла объёмом 50 ГБ с диска на диск и открыть в этот момент Word – вы не получите ни быстрого копирования файла, ни быстрого запуска приложения. В случае завершения оперативной памяти Windows в целом превращается в неработоспособную систему, даже после сохранения части данных в файл подкачки.
В Fedora наблюдения показывают совершенно противоположную картину, причём в обоих сложных случаях. Конкретный пример. Приложение для индексации текста и тегов локальных файлов Recoll на ноутбуке с 8 ГБ оперативной памяти и встроенным графическим процессором умудрилось проглотить 6 из них, после чего ОС начала активно сохранять какие-то данные в swap-раздел. Тем не менее, браузер загружался как обычно, страницы прокручивались плавно, Libre Office сохранил отзывчивость, документы открывались и сохранялись, длинный список мессенджеров работал в штатном режиме – всё как обычно, вне зависимости от того, хватает оперативной памяти или нет. Очевидно, что планировщик задач в Fedora весьма удачно оптимизирован по ряду противоречивых критериев.
2) Диалоговые окна среды GNOME не позволяют вставить путь к файлу в форме текстовой строки, предварительно скопированной в буфер обмена, что во многих случаях было бы весьма удобно. Это несколько усложняет и замедляет указание файлов, например, при их открытии через стандартные диалоговые окна – особенно, если файл находится глубоко в иерархии файловой системы через нажатие сочетания Ctrl+L позволяют вставить полный путь к файлу в форме текста.

4. ПРИЯТНЫЙ ВНЕШНИЙ ВИД

При желании термин «приятный внешний вид» можно облечь в конкретные измеряемые показатели, но это не является предметом данной статьи. Поэтому всё, что будет сказано ниже в настоящем разделе, не следует рассматривать как абсолютно однозначное и не подлежащее критике.

Внешний вид рабочего окружения GNOME на Fedora не требует никакой доработки сразу после установки системы за исключением некоторых мелочей. Шрифты ровные и красивые, контраст хороший, интерфейс не отягощён элементами управления, взаимодействие в рамках выполняемой задачи достаточно продумано, всё интуитивно понятно. Этим GNOME существенно отличается от других красивых окружений, наподобие KDE, Mate или даже Deepin desktop environment, требующих некоторых настроек под глаз среднестатистического пользователя. После установки Fedora Desktop с окружением GNOME очевидны два субъективных недостатка, требующих исправления:
1) в заголовке окон необходимо включить кнопки сворачивания и разворачивания;
2) отобразить панель со списком запущенных приложений.