Разработчики проекта openSUSE представили (https://news.opensuse.org/2018/05/15/transactional-updates-i.../) транзакционные обновления (Transactional Updates), новую значительную возможность дистрибутива, которая будет предложена в выпуске openSUSE Leap 15, намеченном на 25 мая. Транзакционные обновления позволяют обновить операционную систему и связанные с ней пакеты в атомарном режиме, без раздельного применения новой версии каждого пакета.
Атомарное обновление может устанавливаться на работающей системе не влияя на выполнение текущих задач, но чтобы доставленные в процессе обновления изменения подействовали требуется перезагрузка. В случае сбоя в процессе обновления или при выявлении проблем после завершения обновления все производимые в рамках данной транзакции операции игнорируются и никак не влияют на состояние системы.
Ключевым отличием реализованного в openSUSE Leap метода атомарных обновлений от решений на базе ostree и snap, применяемых в Fedora и Ubuntu, является реализация через функциональность системы хранения - вместо построения отдельных атомарных образов и развёртывания дополнительно инфраструктуры доставки, в openSUSE Leap применяется механизм снапшотов в ФС.
Подобный подход прекрасно сочетается с имеющейся пакетной системой, обеспечивает свойственные для атомарного обновления преимущества и позволяет обойтись без лишних усложнений, таких как переключение между несколькими меняющимися коревыми разделами и жесткое разделение областей ФС только для чтения. Из недостатков метода можно отметить необходимость выполнения перезагрузки и невозможность одновременной работы с разными версиями одного и того же приложения.
Реализация транзакционных обновлений базируется на возможностях файловой системы Btrfs, штатных репозиториях пакетов и привычных инструментах snapper и zypper, во многом напоминая уже доступную систему снапшотов и отката операций установки пакетов в openSUSE. Отличие заключается в том, что ранее доступные системы сохраняли состояние в снапшоте и выполняли обновление в активной системе, а новый метод создаёт снапшот и выполняет обновление в нём, не касаясь работающей системы до подтверждения транзакции. Если обновление произведено успешно, обновлённый снапшот помечается активным и используется по умолчанию после перезагрузки (обновления вступают в силу только после перезагрузки, на случай проблем в загрузочном меню остаётся и прошлый снапшот).
Обновление инициируется при помощи новой утилиты transactional-update. В инсталляторе появилась новая роль Transactional Server, позволяющая развернуть сервер c включенной по умолчанию системой транзакционных обновлений (обновления проверяются ежедневно, в случае их установки с 3:30 до 5 ночи автоматически производится перезагрузка). На существующих системах аналогичный режим можно включить активировав сервисы transactional-update.timer и rebootmgr.service. Параметры работы сервиса можно настроить через файл конфигурации /etc/rebootmgr.conf.URL: https://news.opensuse.org/2018/05/15/transactional-updates-i.../
Новость: https://www.opennet.dev/opennews/art.shtml?num=48599
Когда уже будет позитронное и электронное обновления систем?
Они уже есть, просто пока не научились сделать надежную изоляцию upgrade и downgrade (антиобновление). В текущем виде при их столкновении происходит аннигиляция и система крэшится с выделением высокоэнергетических воплей пользователя во все стороны.
Сначала подумал, что это A.Stahl -- только он могу так шутить хорошо
> Сначала подумал, что это A.Stahl -- только я могу так шутить хорошоО себе или хорошо или ничего?
Главное, чтобы не одновременно ;)
Поделия на электроне давно умеют обновляться.
Только кварки, только хардкор!
Только шкварки, только софткор!
Странные они, к чему всё это если фактически обновление применяется только после перезагрузки. Другие внедряют применение live-патчей к ядру, чтобы избавиться от перезагрузки, а они наоборот лишнюю точку вероятного отказа создают. Гораздо надёжнее обычным образом автоматически обновления пакетов ставить. Если что-то слетит, то можно по ssh зайти и починить. А каждое утро трястись загрузилось или нет, нет уж, увольте.
> Если что-то слетитто ssh тебе уже не поможет
> Гораздо надёжнее обычным образом автоматически обновления пакетов ставить.
обычная установка перезапускает затрагиваемые сервисы, смекаешь для кого придумали такую штуку?
>то ssh тебе уже не поможетА это смотря что слетело. Если загрузчик и ядро в порядке (а перезагрузки связаны как раз с обновлением оного в первую очередь), поднялись сеть и sshd, то ssh позволит со всем остальным разобраться.
>обычная установка перезапускает затрагиваемые сервисы, смекаешь для кого придумали такую штуку?
Какие ваши доказательства?
> Странные они, к чему всё это если фактически обновление применяется только после перезагрузки.они хотят как в виндовс (потому что пришли из этого мира, и слаще морковки не едали)
винда перезагружается? Значит и они не видят в этом ничего особенного.
Обидно, что до этого докатилась именно suse, умевшая когда-то, пусть и в ограниченных пределах, даже kexec вместо тупoго ребута. Закат эпохи, время кое-какеров и "не совсем еще готового для десктопа" :-(
Это скорее как в Solaris https://docs.oracle.com/cd/E23824_01/html/E21801/index.html , только там, в Solaris, боле интеллектуально. Если ядро или что-то того же уровня не затронуто обновлением делается снимок и обновляется текущей environment, а если нет делается клон активируемый при загрузке.
> Это скорее как в Solarisа они, вы думаете, с кого собезьянничали? ;-)
причем у них-то в этом есть хоть какой-то смысл, поскольку a) своего идущего в комплекте системы барахла - кот наплакал b) типовое применение - оракл или жабский монстр. Соответственно, ничего ценного из свежих обновлений конфигурации, хранимых там же где и bootenv, прocрать нельзя - там никто никогда ничего не обновляет. А вот вероятность что они сломаются от вроде бы безобидных обновлений - существует (потому что и работают-то только по недоразумению)
А теперь сравните это с линуксом общего назначения и lsb с /etc/ отныне и навеки, как хранилища всего на свете, включая совершенно ненужные там 3d party.
И миллиард пакетиков, большинство из которых вообще ни для чего кроме закрытия дыр в dependency hell не требуются и как правило пофиг как и на что очередная libненужно.so.290.0.0 обновится.
но - зато стильно, модно и менеджерам понравится, "атомарные обновления", не хрен собачий.
P.S. у freebsd эти bootenv ломаются от пристального взгляда. Что неплохо характеризует степень реальной востребованности данной технологии.
> к чему всё это если фактически обновление применяется только после перезагрузкиНа винфак.
В зюзе есть такая милая вещь как zypper ps.
Было бы неплохо применять это счастье только для больших, обычно межрелизных обновлений, а также тех, которые затрагивают проприеиарные дрова NVIDIA (привет Tumbleweed).
А в остальном неатомарные интереснее, когда надо обновить браузер или добавить пару пакетов python или texlive
На андроиде всё в контейнерах, каждое приложение можно урезать в правах. Это хотят сделать и на десктопном линуксе. Что сейчас на линуксе это такая же винда, приложение может сделать всё что угодно, единственное отличие что поломать систему в линуксе программа может только с рутом, а в винде ты админ всегда.
>На андроиде всё в контейнерахВ мусорных?
Какое лого такие и контейнеры.
Проблема в том, что мне, равно как и многим пользователям текущих линуксов не нужны приложения в смысле Android, особенно приложения в смысле идеологии "Приложение враг пользователя".
Мне не нравится сама идея запуска враждебного мне кода на локалхосте, а смиряться с этим счастьем приходится разве что для выхода в интернет.
Кроме того, средства изоляции однозначно создают будут создавать проблемы, как в Android, где система принадлежит не пользователю, а разработчику ОС,и вследствие этого пользователь лишён многих прав и возможностей, так и в GNU Linux, где большая часть программ, особенно первое время будут создавать проблемы, будучи обёрнутыми в виде приложений.Но, определённо, для массовых домохозяек с их извечным желанием скачать откуда-нибудь малварь и запустить это неплохой выход. Но только делать сейчас это явно поздно, так как десктоп мёртв, а мобилки попилены эпплом и гуглом и там шансов нет. Разве что только дети второй половины нулевых дорастут до управления серверами и захотят на них запускать приложения из магазина в контейнерах.
У меня на генте так было через велосипедные баш-скрипты.
А я вот читаю и думаю как раз о том, как было бы прикольно это иметь в генте. Когда надо несколько часов собирать, и всё это инкрементально устанавливается, иногда выходит так, что в процессе обновления системы что-то глюкает или даже не работает вовсе.Эти скрипты у тебя сохранились в каком-либо виде?
гента в XXI веке так и ниасилила сборку out-of-tree и бинарные пакеты из этого out-of, а не системного дерева? (и от рута, от рута, конечно же)Кстати, кто в курсе - они по прежнему ниасилили в том числе и бинарные пакеты, не привязанные намертво к дереву portage?
Впрочем, о чем я... расходимся, признаков разума на этой планетке не обнаружено.
Как много слов, для того чтобы сказать "у меня нет этих скриптов". Ну нет, и нет. И что с того. Я ведь даже не тебя спрашивал, что ты так развоевался?
нет, я правда не знал, что у вас так все плохо.
> нет, я правда не знал, что у вас так все плохо.То есть все те слова были призваны выразить удивление тем, что в генте нет атомарного обновления?
Я ничего не имею против публичного выражения эмоций, но если ты будешь делать это более понятным образом, то будет лучше, поверь.
атомы уже модно'''
Этот трек посвящаем термину «нано»
Нано это ноу-хау великих мужей
С нано жить лучше, жить веселей
Нано это круто, поверьте, ребята
Нано это десять в минус девятой!
Нано мечты, воплощенные реальность.
Нано это шанс доказать свою лояльность
Без нано что будет? Коллапс и разруха,
А с нано улыбка от уха до уха.
'''
И с нано, у причастных, сытое брюхо.
Еще больше атомарности! Больше докеров, больше виртуальных оберток! больше фантиков! Ааа...Чем больше звеньев в цепи, тем выше вероятность поломки. Об этом дети не читали, не знают.
Они наоборот уменьшили их количество. Теперь вдруг что упадёт только программа, а не вся система.
Ну контейнеры все ж о изоляции и позволяет делать ранее недоступные вещи. Если их с умом использовать, то норм тема.
> Еще больше атомарности! Больше докеров, больше виртуальных оберток! больше фантиков! Ааа...Правильно, прикольнее когда система наворачивается сразу и целиком :). Это в принципе тоже вариант и им даже иногда пользуются.
Идеальной реализацией является прошивка устройств: если при прошивке идет что-то не так, вы получаете чудный кирпич. Желательно неподъемный без программатора, иначе жизнь слишком скучна и проста.
Возможно меня одного передергивает от упоминания btrfs, но это чудо fs у меня несколько раз становилась readonly fs когда неожиданно заканчивалось место, а понимание о месте у нее свое, особое, подумаешь df и другие приложения считают что есть еще 6 гиг, можно же >25% пространства отдать под метаданные, а когда неожиданно кончится место не давать их перебаллансировать, да и все журналируемое по самые гланды, чтобы что-то удалить - надо записать, а писать некуда.З.Ы. Это без снапшотов, кажется ранее со снапшотом удавалось разрулить и снести его, но от этого не легче.
Странный дистрибутив, вроде обертка нормальная, а как развернешь - что-то не то. Сколько раз пытался его использовать для работы+домашнего использования. С кодеками проблема, мало софта в репе, сторонний начинаешь ставить проблемы с зависимостями и сплошной головняк.... Смысл его существования до сих пор не ясен. Тут наверняка есть адепты - скажите какие у него конкурентные преимущества относительно других популярных дистрибутивов?
Таки адепт. Упомянутых проблем не встречал (кодеки легко ставятся из Packman'a, который врубается прямо из яста, даже мышкотыкательно можно сделать). Но что характерно, для меня такой головняк - Fedora, хотя у неё полно обожателей. Это скорее дело вкуса, привычки ну и т.д.> конкурентные преимущества
YaST, например. А ещё есть "One Click Install™" - для меня, например, довольно бесполезная штука, но вот если не сильно знающему человеку надо просто поставить программу "в пару кликов и чтоб работало", то в самый раз - вбей название, да кликни.
Ну человек был прав, проблема с установкой кодеков все же есть, я сам с ней сталкивался и потратил кучу времени, но так и не добился результата. Перед установкой можно поставить флажок для установки кодеков предварительно подключившись к инету, что я и сделал, установка закончилась с ошибкой но система установилась, как оказалось позже не поставились кодеки, ну да ладно, полез читать инфу как ставить кодеки на этот дистр, и зашел как раз на оф.сайт с инструкцией в один клик как в Окнах, установились якобы, запускаю Амарок и хочу вкл. альбом любимого артиста, либо видео в формате MP4, Амарок мне отвечает что кодеков нету. Наверное амарок не знает что я установил кодеки в один клик с оф.сайта, подумал я и скачал клементин, тот плеер с логотипом апельсина, но и он мне так же отвечает что кодеков нету. Потом я лазил по разным форумам в поисках решение своей проблемы, но так и не нашел решения, во многих случаях все ссылались на оф сайт для установки, переустанавливал я потом дистр, но проблема не уходила. В общем хотел пересесть на дистр отличный от убунту, но не осилил, а хотел очень хотелось раз я потратил кучу времени на решение этой проблемы с переустановкой системы.
* Дизайн. Серьёзно. Технику я, к примеру, допилить могу, а дизайн — увы.* Для тех, кто когда-то (до середины 200х) привык к винде — можно не выламывать пальцы новыми хоткеями. И панели расставить "как привык". Это вообще-то про kde, но конкретно в OpenSUSE подпилено меню приложений и ещё по мелочам.
* Приложения kde (ну, тут спорно). Kmail до недавнего времени был из лучших gui-почтовых клиентов. В т.ч. по причине "не отрывать руки от клавиатуры". Но тут — увы, последние версии окончательно потеряли работоспособность. * Мышекликательный evolution после kmail вызывает сплошной мат. Неплохой терминал Konsole. Psi+ для джабера. Okular для pdf. Ну и т.д.
* zypper — наименее далёкий от идеала менеджер пакетов. Первый обучился диффам.
> Первый обучился диффам.Если это про Delta-RPM, то таки да, забыл упомянуть ещё эту фичу. Сильно спасает с моим плохим инетнет-соединением.
Даа... Давайте уж перечислять все приложения _без_ альтернатив. Они не "неплохие", они единственные вменяемые в своём роде. Gvenview, Konsole, Okular, Okteta, KDevelop, KCachegrind, KSysGuard, Filelight, Kgpg, Kiten, Parley, Spectacle, Kate/KWrite... Kmail сомнительно на уровне с амароком, я до сих пор не могу найти ничего лучше claws-mail. Kopete и Akregator были ничего. Pidgin как это ни печально лучше полнейшего ахтунга Psi+ - я не понимаю даже это сейчас серьёзно или троллинг такой.
ненавижу KDE, юзаю lxde, jwm, openbox - изредка xfce4, в mate разочаровался.
Но к примеру лучше, чем kolourpaint - musthave софта не встречал.
Вопрос к знатокам. В тексте сказано: "а новый метод создаёт снапшот и выполняет обновление в нём, не касаясь работающей системы до подтверждения транзакции. Если обновление произведено успешно, обновлённый снапшот помечается активным и используется по умолчанию после перезагрузки (обновления вступают в силу только после перезагрузки, на случай проблем в загрузочном меню остаётся и прошлый снапшот)". Что будет с данными, которые были изменены на активной файловой системе после создания снапшота? Это всё потеряется? Если да, то это больше подходит для read-only корня.
Поэтому снапшотится не вся ФС, а отдельные датасеты в ней.
Имеется в виду, что корень с btrfs на одном разделе, а хомяк (с данными) на другом разделе.
данные потеряны не будут, если быть педантом, их из снапшота можно достать, а так из /opt и всяких /var/lib нужно вынести нужное в другое место или использовать то, как сейчас это сделано - снапшот, патчить активный снап, если что откатываться, но выносить данные нужно.
"ранее доступные системы сохраняли состояние в снапшоте и выполняли обновление в активной системе, а новый метод создаёт снапшот и выполняет обновление в нём, не касаясь работающей системы до подтверждения транзакции"
> создания снапшота? Это всё потеряется? Если да, то это больше подходит
> для read-only корня.Не скажу за зюзю но убунты и проч придумали по этому поводу делать 2 точки монтирования на разных subvolume - home и /. Снапшоты системы, соответственно, не затрагивают юзеровские данные в /home и это снапшотится отдельно. Зюзя наверное придумала что-нибудь не хуже.
Я в первую очередь про те же логи в /var/log и базы данных в /var/lib. Получается, надо ещё и под /var всегда отдельный раздел иметь. Или, скорее, конкретно под базы и логи, так как те же базы RPM и лежат в /var/lib, а они явно должны меняться при установке новых пакетов.
В чем смысл делать снимки перечисленного? По крайней по умолчанию перечисление находится в отдельных подтомах и, к примеру, при zypper patch в снимок они не попадают
В чем смысл делать снимки перечисленного? По крайней мере по умолчанию перечисленное находится в отдельных подтомах и, к примеру, при zypper patch в снимок они не попадают
> Не скажу за зюзю но убунты и проч придумали по этому поводу
> делать 2 точки монтирования на разных subvolume - home и /.
> Снапшоты системы, соответственно, не затрагивают юзеровские данные в /home и это
> снапшотится отдельно. Зюзя наверное придумала что-нибудь не хуже./ в btrfs, a /home в XFS.
Но я всё равно /home в btrfs использую.
Пф т.е. просто своровали реализацию beadm в solaris
Зачем парится и придумывать велосипед если можно скопипастить)
Угу, Btrfs говорите? В свое время сусевское юзверье от нее уже рыдало, но видимо тогда показалось мало ;)
> Угу, Btrfs говорите? В свое время сусевское юзверье от нее уже рыдало,
> но видимо тогда показалось мало ;)А сейчас оно в продакшне и "тестится" каждый день на миллиарде фэйсбучных хомяков и фоточках их котят. Так что ничего с зюзиными юзерами не случится.
> А сейчас оно в продакшне и "тестится" каждый день на миллиарде фэйсбучных
> хомяков и фоточках их котят. Так что ничего с зюзиными юзерами не случится.Да зарегтесь вы уж наконец под ником "Люблю сравнивать жопу с пальцем", в самом деле-то. Не вводите честных анонимов в заблуждение.
> Да зарегтесь вы уж наконец под ником "Люблю сравнивать жопу с пальцем",
> в самом деле-то. Не вводите честных анонимов в заблуждение.Сами и зарегьтесь, какие проблемы?
>> Да зарегтесь вы уж наконец под ником "Люблю сравнивать жопу с пальцем",
>> в самом деле-то. Не вводите честных анонимов в заблуждение.
> Сами и зарегьтесь, какие проблемы?А разве я сравнивал продакшн фейспука с зюзиными юзверями? Так что пили мушку, пили!
По многочисленным просьбам трудящихся.
>А сейчас оно в продакшне и "тестится" каждый день на миллиарде фэйсбучных хомяков и фоточках их котят.вот-вот, на фоточках... этот так называемый продакшен лежит под распределенной сетевой ФС с блэкджеком и ...
и потеря данных на паре-тройке узлов всем по барабану
>>А сейчас оно в продакшне и "тестится" каждый день на миллиарде фэйсбучных хомяков и фоточках их котят.[skip]
> и потеря данных на паре-тройке узлов всем по барабануда даже полная потеря всех твоих котиков им по барабану - ну извинятся за "невосстановимый сбой в инфраструктуре", и дальше поедут, а котиков во-первых новых нашлепают, а во-вторых, кто их читает, фейсбучные котикопосты девятилетней давности? Никто даже и не заметит, если они превратились в тыкву.
с другой стороны, потеря домашних котиков очередного хомячка тоже всем по барабану (а ему надо было делать бэкапы...что значит "это и был самый большой диск в доме"?).
главное не притащить это на работу, где спросят с тебя, а не с хомячка.
я правильно понимаю, что если система поставлена на ext4, то вся эта атомарная ерунда меня не затронет?
> я правильно понимаю, что если система поставлена на ext4, то вся эта
> атомарная ерунда меня не затронет?да, при неудачном обновлении просто переустаносиш ОСь.
>> я правильно понимаю, что если система поставлена на ext4, то вся эта
>> атомарная ерунда меня не затронет?
> да, при неудачном обновлении просто переустаносиш ОСь.а тестить их теперь никто не будет - "у нас же атомарность, что вам мешало откатиться".