Калькулейт линукс не обновляется

Обновлено: 04.07.2024

Рассматривая российские Linux-дистрибутивы, нельзя обойти вниманием Calculate Linux . Это не просто еще один дистрибутив, а разработка, изначально нацеленная на сегмент малого и среднего бизнеса, которая включает в себя не только настольную ОС, но и Calculate Directory Server - открытую службу каталогов с достаточно широкими возможностями. Кроме того, Calculate Linux внесен в Единый реестр российских программ и при этом бесплатен. Казалось бы - бери и внедряй, но на практике далеко не так все гладко, об этом мы сегодня и поговорим.

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

Для ознакомления мы выбрали Cinnamon Edition версию дистрибутива, на текущий момент это выпуск 20.6 , хотя говорить о выпусках будет не совсем верно, система имеет модель обновлений rolling release, т.е. будет обновляться на всем протяжении жизненного цикла.

Дистрибутив выполнен в виде LiveCD и позволяет проверить совместимость с железом и познакомиться с системой без установки. На первый взгляд еще один обычный Linux. Но это не так. В качестве основы своего продукта разработчики взяли Gentoo Linux. Решение, мягко говоря, спорное, как минимум тем, что администратору придется изучать новую для него систему, при этом полученные знания мало где пригодятся потом, все-таки Gentoo - достаточно специфичный дистрибутив.

Установщик тоже способен преподнести некоторые сюрпризы. Обратите пристальное внимание на процедуру разметки дисков, по умолчанию предлагается достаточно причудливая конфигурация. Да и расположение директорий тоже нетиповое.

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

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

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

Рабочий стол тоже прост, оформление выбрано в приглушенной цветовой гамме и настраивает на рабочий лад, а так перед нами типичный Cinnamon, без каких-либо фирменных доработок. В качестве альтернативы также можно использовать KDE, XFCE, Mate или LXQt.

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

Работает система достаточно хорошо, стабильно, быстро. С типичным офисным оборудованием проблем не возникло: принтеры, включая сетевые, сканеры, флешки и внешние жесткие диски, в том числе отформатированные в NTFS и exFAT определялись и работали без проблем. Сетевые настройки предусматривают большое количество готовых шаблонов для разных видов подключений.

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

А также есть небольшие организации на три-пять ПК с приходящим администратором, ну не вызывать же его каждый раз, если нужно поставить условный Viber? А установить его можно только вот так, других вариантов нет:

Для обновления присутствует графическая утилита, но погоды она не делает. А сам процесс обновления весьма долгое и ресурсоемкое действо, быстренько обновить систему с утра или после работы не получится. А нашу виртуалку, эмулирующую обычный офисный ПК - "два ядра, два гига" - это действие буквально положило на лопатки.

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

Но пока были только сложности, настоящие проблемы ждут нас впереди. Трудно представить современный офис без учетных систем, самой популярной из которых является 1С и разного рода систем криптографии. Как минимум будет существовать ЭЦП директора для сдачи отчетности и взаимодействия с различными госслужбами (Госуслуги, Личный кабинет ФНС и т.д. и т.п.).

Это требует установки определенного коммерческого софта, которого, по понятным причинам, нет в репозиториях, а их производители и слышать ничего про Gentoo не хотят. В большинстве случаев вам предложат на выбор DEB или RPM. Современные реалии мира Linux таковы, что именно эти две системы управления пакетами задают основной тон, все остальное проходит по части экзотики.

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

Но даже если администратор чувствует себя в среде Gentoo, а следовательно и Calculate, как рыба в воде, появляется иная опасность, вся инфраструктура по факту оказывается завязана на одного человека и в случае его увольнения найти замену будет на так просто, большинство Linux-специалистов знают обычно Debian или RHEL системы и не горят желанием искать себе приключений в виде Gentoo.

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

Выводы

Если смотреть на систему "в общем и целом", то и задумка, и воплощение достаточно неплохи. Но есть один момент, который практически ставит на всем жирный крест и имя этому моменту - Gentoo. Данный дистрибутив никогда не входил в мейнстрим и достаточно заслуженно считался уделом "красноглазиков". Делать на него ставку при создании офисной системы - решение достаточно неожиданное и вряд ли удачное. Коммерческого софта для него вы не найдете, да и то, что сейчас создается в рамках импортозамещения выпускается исключительно в виде DEB и RPM.

Собственно, это мы и видели, шаг вправо, шаг влево от репозитория заканчивается печально. Нет, эти сложности преодолимы, но вот нужно ли их преодолевать? И зачем? Каких-то радикальных преимуществ у Calculate нет.

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

Действительно, реальных перспектив у Calculate Linux нет и тут не поможет ни включение в реестр, ни что-либо еще. Проблема одна, но существенная - пакетная база Gentoo, что делает систему сферической ОС в вакууме, вроде бы и все хорошо, только вот что с ней делать - решительно непонятно.

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

А небольшому бизнесу такая система тем более неинтересна, ведь есть гораздо более дружелюбные Ubuntu или Mint, либо ROSA или ALT, если нужно непременно отечественное ПО.

P.S. в калькулейт и генту тем более новичок. Буду благодарен если кто поможет



А что не на профильный форум?


Походил там по смежным темам и создалось ощущение его какой то полумёртвости. Может не там ходил


emerge -C eselect-opengl

и снова запусти cl-update


Не помогло, все то же

В телеграм зайди

привет, утро вечера мудреннее, давай попытаюсь объяснить(использую gentoo), по первой ссылке:

пакет dev-qt/qtcore-5.13.2 требуется пакету dev-qt/designer-5.13.2:5/5.13::gentoo, этот пакет хочет обновиться до dev-qt/qtcore-5.14.1-r1 при установке твоего latte-dock но пакет dev-qt/designer-5.13.2:5/5.13 не даёт этого сделать то есть блокирует обновление, хочет версию пониже так как видать сам устарел. И таких 32 штуки, все уж не буду описывать. Внизу portage тебе пишет:

упс, вот это: --with-bdeps=y наверно не нужно в кальке, это зависимости сборки, можешь убрать


По поводу месы, ее я по совету знакомого пересобирал без libglvnd, может стоит обратно пересобрать без своих юзфлагов?

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

spawn_sp ★★ ( 27.04.20 21:52:28 )
Последнее исправление: spawn_sp 27.04.20 21:57:54 (всего исправлений: 1)

обновляй всегда так: emerge -av1 --update --newuse --deep @world, просто посмотреть что будет обновляться и прочее так: emerge -pv --update --newuse --deep @world, опцию "--oneshot(аналог "-1") добавляй при обновлении, что бы новые пакеты(например зависимости от новых появившихся флагов(от разрабов) в пакетах) не попадали в set @selected (файл world), держи мир в чистоте хотя в кальку наверно понатыкали чё надо и не надо, я сам не использовал, сам обновляю несколько иначе поэтапно начиная с портажа(впервую очередь всегда, рекомендуют) потом толчейн, потом сет @system, @world, ну и т.д. revdep, depclean, всё перечислять не буду, лень)) шучу

spawn_sp ★★ ( 27.04.20 22:36:17 )
Последнее исправление: spawn_sp 27.04.20 22:41:42 (всего исправлений: 1)


Замаскировал маны, удалил eselect-opengl и включил обратно libglvnd у месы, после этого система обновилась, спасибр!

Calculate Utilities

Процесс обновления Calculate Linux максимально упрощён. Для обновления достаточно запустить графическое приложение "Обновление Calculate Linux" или выполнить в консоли:

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

Утилита может быть запущена как от суперпользователя root, так и от обычного пользователя системы, при наличии необходимых прав для обновления (см. раздел Пользователи):

Этапы обновления

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

Синхронизация репозиториев

В Calculate Linux существует несколько зеркал с бинарными пакетами обновлений, описанных в оверлее Calculate. Утилита обновления сама определит "мёртвые" или недоступные зеркала, а также зеркала, находящиеся в процессе обновления, и, в случае необходимости, переключит систему на другое наиболее быстрое зеркало. Для пересканирования зеркал с определением наиболее быстрого зеркала выполните cl-update --scan . Лог сканирования будет доступен в файле .

Доступны два типа зеркал - стабильные и нестабильные (тестовые). Тестовые зеркала отличаются более свежими версиями обновлений. Чтобы переключиться на тестовые обновления выполните cl-update --stable off .

Пакеты на зеркалах обновляются в разное время. Для того, чтобы версии пакетов были согласованы с версией портежей и оверлеев Calculate с Distros, утилита считывает с зеркала номера коммитов Git-репозитория и синхронизирует портежи и оверлеи до этого состояния. Тэги коммитов, благодаря которым можно минимизируя трафик скачать дерево портежей до определённого состояния, являются единственным отличием копии портежей Gentoo, используемой в дистрибутивах Calculate Linux.

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

Конфигурация системы

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

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

Обновление пакетов

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

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

Пересборка изменённых пакетов

Данный шаг выполняется утилитой cl-builder-update при выполнении обновления пакетов в образе и служит для своевременной пересборки изменённых пакетов в дереве портежей. На этом этапе выполняется проверка изменений слота, USE-флагов и зависимостей пакетов. В случае наличия изменений такие пакеты будут пересобраны.

Обновление модулей Perl

Если во время обновления был обновлён пакет dev-lang/perl, программа выполнит perl-cleaner all для обновления модулей языка Perl.

Очистка системы от ненужных пакетов

При установке программ могут быть установлены дополнительные пакеты с зависимостями, необходимыми для работы. С течением времени зависимости могут меняться, а программы удаляться. Высвободившиеся от зависимостей пакеты могут остаться в системе мёртвым грузом. Такие пакеты не будут обновляться, т.к. не будут попадать в просчёт зависимостей пакетного менеджера. На данном шаге программа обновления выполнит удаление этих пакетов, выполнив вызов emerge --depclean .

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

Для предотвращения удаления работающей версии PostgreSQL при обновлении мажорной версии, во время вызова настройки emerge --config postgresql в файл шаблонами утилит будет прописан пакет с указанием номера слота.

Обновление модулей ядра

В случае обновления ядра на этом шаге программа выполнит вызов emerge @module-rebuild для обновления модулей ядра.

При обновлении пакета x11-base/xorg-server программа выполнит вызов emerge @x11-module-rebuild для обновления модулей Xorg-сервера.

Пересборка зависимых модулей

Во время обновления будет выполнено определение пакетов, использующих устаревшие библиотеки, для последующей их пересборки. Для этого программа обновления использует вызов emerge @preserved-rebuild .

Проверка обратных зависимостей

Опционально может быть выполнен вызов утилиты revdep-rebuild , входящей в состав пакета и выполняющей поиск пакетов, содержащих повреждённые исполняемые файлы и библиотеки. Для его включения выполните:

Полезные опции запуска

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

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

Чтобы отобразить вывод списка просчитанных зависимостей с USE-флагами по аналогии с пакетным менеджером emerge , используйте опцию , пример:

Для восстановления целостности портежей и оверлеев - например, после ручного редактирования, используйте опцию , пример:

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

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

Другой полезной возможностью может оказаться дополнение world-файла списком пакетов профиля. К примеру, вы установили и настроили Calculate Linux Scratch, после этого захотели попробовать переключиться на профиль . Чтобы установить после этого MATE со всеми зависимостями, можно выполнить:

Для сокращения места на жестком диске вы можете использовать две опции: для очистки истории изменений локальной копии Git-репозитория и --clean-pkg для удаления скачанных и устаревших архивов программ. Пример:

cl-update -1 --clean-pkg

Интеграция в другие приложения

Важно не нарушать соответствие состояния бинарного репозитория и дерева портежей. Для этого вызов утилиты cl-update интегрирован в системные приложения.

При запуске emerge --sync будет выполнен вызов модуля синхронизации утилит Calculate, прописанный в файле настроек . Утилита eix-sync , обновляющая портежи в наглядном виде, также вызывает метод обновления утилит Calculate благодаря настройке . Утилита обновления портежей и пакетов в собираемом образе cl-builder-update также использует общий модуль обновления системы.

Автоматическая проверка обновлений

Проверка обновлений выполняется по планировщику задач . Вызов утилиты настраивается в файле . При доступности обновления будет создан файл . Для настройки интервала обновления или отключения выполнения проверки обновлений используйте утилиту cl-setup-update .

Вторичное меню

Аватар пользователя B.X

Ut stultitia, etsi adepta est quod.

Ut stultitia, etsi adepta est quod concupivit nunquam se tamen satis consecutam putat: sic sapientia semper eo contenta est quod adest, neque eam unquam sui poenitet. — И если глупость, даже достигнув того, чего она жаждала, всё же никогда не считает, что приобрела достаточно, то мудрость всегда удовлетворена тем, что есть, и никогда не досадует на себя.

    (1) (1) (4) (1) (2) (1) (1) (1) (1) (1) (1) (1) (8) (1) (4) (1) (2) (3) (4) (2) (6) (1) (3) (2) (1) (3)

Сейчас на сайте 0 пользователей.

Вы здесь

«Они считали чувство вины ошибкой, а угрызения совести — слабостью. Они всегда были практичны и никогда — сентиментальны. Но дружба их не имела границ.»

Уникальная система обновления Calculate Linux (напрямую из ISO). | [Харзах]-[РУ]

Аватар пользователя B.X

Речь пойдёт об уникальной системе обновления Calculate Linux (подробнее здесь, в том числе и этот комментарий к заметке разработчиков данной системы). Очень удобно, а главное, странно, что больше никто до такой мысли не додумался. На самом деле это было логично и правильно его придумать. Я всегда так и только так и обновляюсь. Хорошо, что подробнее описали этот способ, потому как он особенный и ни в одном дистрибутиве не встречается, хотя в Gentoo его можно изобразить различными ухищрениями.

  • Всегда "чистая система" (да, конечно, чистоту можно устроить и в обновляемой системе, но там нужно что-то для это делать, а здесь - нет).
  • "Быстрое" обновление (обычно я делаю обновление, а потом одной командой устанавливаю все программы, которые мне нужны и переношу настройки, да при обновлении не нужно было бы устанавливать что-то заново и переносить настройки, но слово "быстрое" здесь синоним слова "лёгкое", так как не надо потом разбираться с возможными глюками).
  • Нет нужды переносить образ на флешку и совершать лишние телодвижения (перезагрузка только один раз и ты уже в новой системе).
  • Если что-то не так, ты можешь вернуться обратно на старую систему (пару раз у меня были проблемы с драйверами для ATI/AMD, когда новые драйвера перестали поддерживать старые видеокарты, я просто перешёл обратно в старую систему и при повторной установке указал свободные драйвера).
  • Есть ещё пара неочевидных плюсов, но главное, это то, что ты более плотно контролируешь свою систему и способен всегда вернуться назад.

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

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

Что надо для этого сделать? Ну, естественно, такая система должна работать независимо от операционной системы, так как если она сломается, вся система обновлений будет неработоспособна. Она должна предусматривать версионность самой себя, чтобы в случае её неправильного обновления, также существовала возможность отката. Она должна быть доступна из GRUB, чтобы в критических случаях можно было бы восстановить работу системы.

Как дальнейшее развитие, подобная система должна иметь возможность хранить настройки и историю файлов, возможно в зашифрованном виде где-нибудь в облаке, чтобы была возможность при поломке системного диска, после его смены восстановить всё за минуты. В принципе, учитывая, что сейчас в различных файловых храгилищах дают от 10 до 25 ГБ, это не представляется чем-то фантастичным.

В результате, система получается реально неубиваемой, независимо от каких-либо ситуаций или несчастных случаев. Мы не будем здесь говорить о продвинутых системах бэкапа, о RAID, LVM и тому подобным системах, так как все они имеют недостатки, так как находятся в одном и том же месте локально, а для развертывания кластерных схем, нужны немаленькие ресурсы. На уровне обычной операционной системы такой технологии пока нет, хотя всё это, конечно можно реализовать другими способами (например, имея внешний отдельный сервер, который бы следил за вашими дисками). Но опять же, это не так просто всё организовать и поддерживать. На уровне самой операционной системы это было бы организовать гораздо проще и логичнее.

Читайте также: