Обновление системы

Несмотря на непрерывный цикл обновления Calculate Linux (rolling-release), мы предлагаем и другой, для кого-то более удобный способ обновления - из ISO образа, максимально упростив процедуру на всех этапах:

# Calculate Linux имеет 7 дистрибутивов для двух архитектур. По необходимости, вы можете изменить состав пакетов ещё до установки системы на жесткий диск. Удобно, если ставите не только себе, но и знакомым.
# Установщик предложит вам распределить место на диске таким образом, чтобы выделить домашние директории пользователей и данные в отдельный раздел, а также выделяет резервный раздел под систему. Таким образом, вы всегда имеете возможность “обкатать” новую систему без риска потери своих данных и настроек.
# Установка системы может быть запущена как с livecd, так и из установленной системы вне зависимости от архитектуры. Достаточно положить ISO образ в директорию /var/calculate/linux (или /var/calculate/remote/linux).
# Текущие настройки видео, учётные записи локальных пользователей, локаль, временная зона и т.д. будут использованы по умолчанию для настройки системы в новом разделе.
# Настройки выполненные при помощи шаблонов утилит Calcualate автоматически будут использованы при настройке новой системы. Clt-шаблоны, в случае их использования, будут перенесены в новую систему из директории /etc.
# При обновлении системы из ISO образа, путь к предыдущему разделу хранится в переменной os_install_dev_from, в файле /etc/calculate/calculate.env. Таким образом, для обновления достаточно выполнить команду ‘cl-install’ без передачи дополнительных параметров.

Плюсы описаны здесь. От себя добавлю, что так очень удобно “обкатывать” другие версии системы. “Утомительную” процедуру можно заметно ускорить, если добавить опцию ‘–build’. В этом случае система установится практически мгновенно (менее чем за минуту).

И помните, портежи обладают замечательной способностью создавать бинарные пакеты. Используйте при установке опции ‘-bk’ (–buildpkg --usepkg) и вы сможете развернуть необходимые пакеты в новой системе.

Плюсы описаны здесь. От себя добавлю, что так очень удобно "обкатывать" 
другие версии системы. "Утомительную" процедуру можно заметно ускорить, 
если добавить опцию '--build'. В этом случае система установится 
практически мгновенно (менее чем за минуту).

И помните, портежи обладают замечательной способностью создавать 
бинарные пакеты. Используйте при установке опции '-bk' и вы 
сможете развернуть необходимые пакеты в новой системе.

можно подробнее осветить эти моменты?

  1. если установка происходит с опцией bk то эти установленные
    программы-пакеты перенесутся и во вторую систему? при обновлении из iso
  2. про “обкатывать” не совесем понял… пробовать другие версии
    кальки на втором разделе на живом железе?
  3. про спасение от “утомительной” процедуры - это замена стандартной установки кальки - установкой в режиме builder???
  1. если установка происходит с опцией bk то эти установленные программы-пакеты перенесутся и во вторую систему? при обновлении из iso

Автоматический перенос мы делать не стали. Все же, если система не обновлялась довольно долго, пакеты могут оказаться нерабочими. Директория с бинарными пакетами вынесена в /var/calculate/…, поэтому, если вы используете для этих целей отдельный раздел, как предлагает по умолчанию установщик, установить бинарные пакеты можно выполнив ту же команду. Для этих целей удобно создать свой сет.

  1. про “обкатывать” не совесем понял… пробовать другие версии кальки на втором разделе на живом железе?

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

  1. про спасение от “утомительной” процедуры - это замена стандартной установки кальки - установкой в режиме builder???

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

в установленной системе у каждого (как я понимаю) есть доп пакеты. ктото там wine ставит, ктото psi, ну и прочая…
обновление через iso - любопытная вещь, но при обновлении в новом корне будут отсутствовать доп установленные пакеты, максимым - ярлыки на них в меню…
Вопрос: какой командой можно посмотреть список доп установленных пакетов относительно дефолтного набора, который идет в iso?

Aleksandr P писал(а):

Вопрос: какой командой можно посмотреть список доп установленных пакетов относительно дефолтного набора, который идет в iso?

Поддерживаю

зная этот список можно ведь ввести в консоль мега команду чтобы все это добро установилось сразу… для ради экономии телодвижений, так сказать…

1 Like

Утилита ‘regenworld’ по логу портежей соберёт новый world. Так как изначально лога в дистрибутиве нет, в нём будут только пакеты, установленные вами.

mv /var/lib/portage/world /var/lib/portage/world-copy
regenworld

Файл с перечнем устанавливаемых вами пакетов создастся в файле с случайным именем.

/var/lib/portage/world.tLR62j.tmp

Далее вы вообще можете скопировать его вместо сета ‘@custom’, включенного в world во всех версиях Calculate.

mv /var/lib/portage/world.tLR62j.tmp /etc/portage/sets/custom

После чего не забудьте вернуть ваш world

mv /var/lib/portage/world-copy /var/lib/portage/world
Используйте при установке опции '-bk' и вы сможете 
развернуть необходимые пакеты в новой системе.

Александр,каким образом? можно пример команды?

Например

emerge -bk firefox

При первом вызове скомпилирует пакет, создаст бинарный файл и положет его в

/var/calculate/remote/packages/CLDX/x86_64/www-client/firefox

При втором вызове уже просто развернёт бинарный файл. Это можно сделать в обновленной системе, если firefox актуальной версии, либо на машинах локальной сети, т.к. директория /var/calculate/remote монтируется с сервера.

При втором вызове уже просто развернёт бинарный файл. 
Это можно сделать в обновленной системе

т е делаем в новом обновленном “клоне” CL emerge -bk firefox и система сама (?) находит бинарный файл на “старом” разделе с предыдущей версией CL???
п с: речь о локальном компьютере, не о корпоративной сетке

этот пост напомнил мне многочисленные статьи снапшотах btrfs, где данную функциональность (версионность) хотят запихать в фс.
сам озадачился неубиваемостью системы по другому направлению:
http://www.calculate-linux.ru/boards/33/topics/18464
п с:идея хорошая, но сложновата наверное?

идея интересная… перекликается с моей)
может на форуме тему новую создать??
здесь все таки комментарии к статье, там может эта новая тема будет более сильно светиться в информационном пространстве калько-юзеров?
она требует внимания разработчиков, как я понимаю…

Да, мне тоже нравятся снапшоты, только не от btrfs, а от наиболее развитой в этом плане ZFS. К сожалению, она неприспособлена к нормальной работе в Linux (там проблемы, в основном носят чисто технический характер в связи с разной структурой Solaris и Linux), работать будет, конечно, но не так как надо. А переходить на Солярис ради ZFS я думаю не стоит, так как у Линукса много других возможностей, а Солярис, кроме ZFS ничем похвастаться не может.

Да и мне кажется опасным делать снапшоты на уровне файловой системы, а вдруг с ней что-то случится? И пипец нашим снапшотам… причем всем вместе и сразу… Версионность должна работать на уровне или ниже файловой системы (типа как инкрементальные бэкапы) или выше, на уровне файлов, тогда, даже если что-то посыпется, мы просто разворачиваем полноценный бэкап несмотря на состояние файловой системы, то есть просто перезаписываем её.

Вообще-то я как раз из-за того, что система может работать в build-режиме и пишу, что устроить версионность в Calculate Linux будет несложно. Сам я всегда использую build-режим, так как он показывает большую производительность, чем система развернутая обычным образом. Да и устанавливается значительно быстрее.

Таким образом, если основной образ системы в build-режиме принять за основу “чистой” системы, то для версионности кальки нужен только инструмент, который бы помогал бы нам видеть все изменения, которые происходят в /mnt/scratch/workspace и группировал бы их по времени воздействия на систему. По сути уже всё готово, кроме вот этого инструмента контроля за изменениями.

То что это будет работать только в build-режиме меня лично нисколько не расстраивает, так как я только им и пользуюсь. Заодно также это позволит разграничить пользователей на тех, кому нужна эта фишка и кому нет (так как для системы версий понадобятся какие-то специальные настройки для GRUB-а, чтобы вызывать “консоль восстановления” или так сказать “time machine” от Calculate из коробки)…

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

Проблема здесь, я думаю в нехватке ресурсов для развития. Я даже боюсь представить сколько надо энергии, чтобы не только руководить компанией, но ещё и поддерживать дистрибутив, выпускать обновления, составлять документацию, плюс ещё постоянно помогать на форумах и в irc-чате. Лично мне главный разработчик отвечал несколько раз. Учитывая что Calculate Linux ещё и красивый, то есть и дизайнеры стараются, при этом работают над всем этим 3-4 человека, я поражаюсь тому насколько всё хорошо работает.

Учитывая возможности Calculate Linux я бы конечно был бы рад, если бы дистрибутив стал развиваться и в коммерческом направлении. Но пока не вижу сам, на чём бы он мог заработать, чтобы была возможность поддерживать и дальше такую замечательную систему.

# OEM-поставки? Если взять это направление, нужно автоматическое обновление, GUI-установщик программ. Надо придумать, как облегчить жизнь новичкам (как сделать возможным настройку через USE-флаги в GUI я не представляю). Например, я сам скорее установлю кому-нибудь Ubuntu, а Calculate буду пользоваться сам, так как мне не хочется постоянно приходить и что-то объяснять, показывать и тд.
# Продажа Calculate Linux в дисках? Увы, это скорее потребует больше расходов, чем доходов. Так как без интернета в Calculate делать нечего. Да и какова целевая группа? Те, кто знают Gentoo - им это не нужно, они сами установят, что хочешь. Новички? Про новичков абзац выше…
# Продавать гарантию? Неактуально, опять же по тем причинам, что на инфраструктуру потребуется больше денег, чем можно будет отбить.
# Сервера? Увы, но на серверах есть бинарные аналоги и никто не станет ставить Gentoo, так как сложился уже образ этой системы, которая требует постоянных обновлений, что неприемлемо для больших бизнес-проектов с их расчётами на годы вперёд. Компания Калькулейт здесь отличается тем, что они сами поддерживают сделанную ими же инфраструктуру, а это совсем другое дело.
# Донат? Это сложно и больше зависит от сознательности. Я бы сам не прочь пожертвовать денег, если бы они были или если бы использовал Calculate Linux в своём бизнес-проекте и просто часть средств от дохода передавал компании Калькулейт за поддержку, но я не бизнесмен, может быть к сожалению, и у меня нет проектов, которые приносят деньги.

Что ещё? Дальше моя фантазия не работает. Факт то, что Calculate - это нишевый продукт, очень развитый, мощный, инновационный. Но как на нём заработать? Какую бизнес-стратегию создать? Тут, я честно говоря, пасую… а было бы неплохо, если бы над дистрибутивом трудилось 10-20, а то и 30-40 разработчиков.

т е делаем в новом обновленном “клоне” CL emerge -bk firefox и система сама (?) >находит бинарный файл на “старом” разделе с предыдущей версией CL???
п с: речь о локальном компьютере, не о корпоративной сетке

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

B. X., если вам интересно посмотреть, что еще реализовано в плане неубиваемости системы и “time machine” от другого дистрибутива из коробки - посмотрите на отечественный дистрибутив MagOS.
вся система состоит из файлов-модулей .xzm, при применении режима save2module - при каждой перезагрузке изменения сохраняются в отдельный модуль.xzm где имя - дата сохранения.
если завалил систему - просто удалил предыдущий модуль с датой обновления - и все.
на мой взгляд - недостаток у них торлько один - то, что MagOS базируется на мандриве/роса/магея (это мое имхо, просто в репозиториях мандривы древние версии программ и часто под мандриву производители по не собирают пакеты. сейчас идет интенсивное тестирование бет на базе РОСА и Магея - стабильные сборки пока идут на Мандриве).
модули можно грузить в озу - тогда система летает.
ознакомьтесь с дистрибутивом, в нем много сделано и работает “искаропки” в плане неубиваемости и версионности.
п с: посмотрите тут: http://www.calculate-linux.ru/boards/16/topics/19060?r=19061
в топике указан пример скрипта который пакует /usr и /opt в файлы (файловой системы) squashFS (у каждой папки свой файл) и в процессе загрузки они монтируются на свои законные места.
можно на этой базе запаковать все директории корня (кроме некоторых) в squashFS, все изменения будут писаться в отдельные директории (посмотрите пост, там есть ссылка на первоисточник.). Особого интереса к теме никто не проявил, но вам наверное будет интересно.

Это два подхода - супер-ресурсы на безотказную систему (или производительную или … и т.д.), либо дублирование простых систем. На мой взгляд дешевле и интересней (познавательней) иметь свободный раздел под эксперименты. Лишний раз вы проверите свои настройки, как они применяются при установке на новой системе.

Несмотря на непрерывный цикл обновления Calculate Linux (rolling-release), мы предлагаем и другой, для кого-то более удобный способ обновления - из ISO образа

Хорошо, что подробнее описали этот способ, потому как он уникален и ни в одном дистрибутиве не встречается, хотя в Gentoo его можно изобразить различными ухищрениями.

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

Плюсы очевидны:
# Всегда “чистая система” (да, конечно, чистоту можно устроить и в обновляемой системе, но там нужно что-то для это делать, а здесь - нет).
# “Быстрое” обновление (обычно я делаю обновление, а потом одной командой устанавливаю все программы, которые мне нужны и переношу настройки, да при обновлении не нужно было бы устанавливать что-то заново и переносить настройки, но слово “быстрое” здесь синоним слова “лёгкое”, так как не надо потом разбираться с возможными глюками).
# Нет нужды переносить образ на флешку и совершать лишние телодвижения (перезагрузка только один раз и ты уже в новой системе).
# Если что-то не так, ты можешь вернуться обратно на старую систему (пару раз у меня были проблемы с драйверами для АТИ, когда новые драйвера перестали поддерживать старые видеокарты, я просто перешёл обратно в старую систему и при повторной установке указал свободные драйвера).
# Есть ещё пара неочевидных плюсов, но главное, это то, что ты более плотно контролируешь свою систему и способен всегда вернуться назад.

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

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

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

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

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

Зачем изобретать ИМХО сложный да и не нужный велосипед. Обновляюсь последнее время только по методу с первого топика, настройки cp root1:/etc/* root2:/etc/*, ну типа такого утрирую, а сборку лучше проводить на отдельном разделе и предустанавливать нужное ПО http://www.calculate-linux.ru/blogs/ru/317/show

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