Calculate linux обновление системы с iso образа

7. Обновление системы cl-update¶

cl-update — утилита, выполняющая обновление системы со всеми необходимыми сопутствующими действиями.

Описание функциональных возможностей¶

Описание опций утилиты¶

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

Ключи для управления синхронизацией и кэшами¶

Задает синхронизируемые репозитории дистрибутива (все по умолчанию) (‘list’ для отображения возможных значений). При указании опции позволяет синхронизировать лишь выбранный репозиторий.

Устанавливает ветки для репозиториев (REPOSITORY:BRANCH). Позволяет переключать между master/develop/update ветками репозиториев.

Принудительно обновляет кэш оверлеев.

Пропускает обновление кэша оверлеев.

Обновляет кэш оверлеев в том случае, если тот устарел (действие по умолчанию).

Принудительно обновляет кэш eix.

Пропускает обновление кэша eix.

Обновляет кэш eix, если он устарел (поведение по умолчанию).

Выполняет обновление сторонних оверлеев (не являющихся репозиториями дистрибутива). По умолчанию выключено. Для того, чтобы изменить действие по умолчанию, надо изменить значение переменной cl_update_other_set секции update; для этого можно выполнить следующую команду:
cl-core-variables —set update.cl_update_other_set=on

Не обновлять пакеты. Выполняет синхронизацию и применяет ревизии.

Ключи применения шаблонов, ревизий¶

Переформирует world-файл согласно шаблонам дистрибутива на world-файл по умолчанию для данного профиля.

Обновляет ревизию дистрибутива до текущей в шаблонах.

Выбор местонахождения шаблонов calculate,distros,local,remote,clt (‘list’ для отображения возможных значений)

Использовать новые конфигурационные файлы.

Пропустить обновление конфигурационных файлов.

Обновить конфигурационные файлы вручную (по умолчанию).

Другие ключи¶

Вместо действительного обновления пакетов, только отобразить, что будет установлено.

Ждать завершения выполнения другого запущенного cl-update. По умолчанию включено.

Учитывать график автопроверки обновлений. Если временной интервал с последней проверки ещё не прошел, то обновление выполняться не будет.

Источник

Calculate linux обновление системы с iso образа

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

Ut externus alieno non.

Ut externus alieno non sit hominis vice. — Так что, чужеземец, для человека иного племени, не является человеком.

  • октября 2020 (1)
  • ноября 2019 (4)
  • августа 2019 (1)
  • июля 2019 (2)
  • июня 2019 (1)
  • апреля 2019 (1)
  • октября 2018 (1)
  • августа 2018 (1)
  • декабря 2016 (1)
  • ноября 2014 (1)
  • августа 2014 (1)
  • февраля 2014 (8)
  • января 2014 (1)
  • ноября 2013 (4)
  • июля 2013 (1)
  • апреля 2013 (2)
  • января 2013 (3)
  • декабря 2012 (4)
  • сентября 2012 (2)
  • августа 2012 (6)
  • июня 2012 (1)
  • декабря 2011 (3)
  • августа 2011 (2)
  • июля 2011 (1)
  • февраля 2011 (3)
  • января 2011 (1)

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

Вы здесь

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

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

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

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

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

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

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

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

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

Читайте также:  Логотип windows с клавиатуры

Источник

Руководство по обновлению системы

Обновлено 17 января 2020

Введение

Процесс обновления 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-флагов и зависимостей пакетов. В случае наличия изменений такие пакеты будут пересобраны.

Читайте также:  Windows group policy files

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

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

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

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

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

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

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

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

Обновление модулей X.Org сервера

При обновлении пакета 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 .

Источник

Оцените статью