Спец уязвимости gentoo

Sabayon, Calculate, Funtoo, Exherbo

Модератор: /dev/random

Аватара пользователя
yoricI
Сообщения: 1954
ОС: gentoo fluxbox

Спец уязвимости gentoo

Сообщение yoricI »

Здра!
Если при обновлении системы во время установки пакета (emerging -> installing) вырубить электричество, то в зависимости от пакета может же быть аллес капут. То есть пакет устанавливается, в базе прописаны старые файлы, по факту уже новые, и тут рубец. Но это понятно, что в зависимости от пакета. Если ядро, можно потерять загрузку, или прочие глюки. Rescue-cd поможет. Так?

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

Re: Спец уязвимости gentoo

Сообщение Акаролибр »

> Rescue-cd поможет. Так?

Если проблема в потере электричества, то надо ставить ИБП (UPS).

А то заявляем одну проблему (потеря питания), а лечим другую (поломанная система).
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 1954
ОС: gentoo fluxbox

Re: Спец уязвимости gentoo

Сообщение yoricI »

У меня есть ИБП. Но так как обновление долгое, то его не хватит на всё. Про промышленные системы не будем. Да и мало ли по какой причине может случиться. Если (случайно, по ошибке, не в тот терминал попал) нажать Ctrl-C в это время?
Спасибо сказали:
Акаролибр
Сообщения: 97

Re: Спец уязвимости gentoo

Сообщение Акаролибр »

> Проблема: обновление [из исходников] долгое

Решение: настройте профиль на сервере бинарной сборки, а пото́м устанавливайте быстро бинарные пакеты.

Код: Выделить всё

# eselect profile list | grep -- "\*"
  [36]  buildserver:x86_64 (dev) *
Спасибо сказали:
Kopilov
Сообщения: 923
ОС: [K]Ubuntu, Debian

Re: Спец уязвимости gentoo

Сообщение Kopilov »

yoricI писал:
03.03.2023 09:01
Если (случайно, по ошибке, не в тот терминал попал) нажать Ctrl-C в это время?
Вроде, хорошо написанная программа должна уметь обработать сигнал (если это не kill -9) и выйти из неконсистентного состояния
Спасибо сказали:
Аватара пользователя
devilr
Сообщения: 3543
ОС: Mandriva => Gentoo (~amd64)

Re: Спец уязвимости gentoo

Сообщение devilr »

Kopilov писал:
03.03.2023 10:35
Вроде, хорошо написанная программа должна уметь обработать сигнал (если это не kill -9) и выйти из неконсистентного состояния
Выйти то она выйдет, но сборка того же мира прервётся. А сам терминал мог быть запущен из скрипта, например. В результате недособирались и, впоследствии, уже не загрузились нормально. Думаю, что ТС об этом намекает.
Кстати, вариант собирать сначала бинарники, а потом их скопом ставить - штука довольно хорошая. Только места требует под эти бинарники.
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Digital Art
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20044
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Спец уязвимости gentoo

Сообщение Bizdelnick »

yoricI писал:
03.03.2023 08:10
Но в gentoo за счёт большей готовности файлов к установке (после компиляции они в дисковом кэше) вероятность сбоев ниже, так как процесс происходит быстрее, именно в критичной части копирования новых файлов.
Только что скачанный бинарный пакет тоже в кеше, даже с большей вероятностью, потому что меньше места занимает. Так что тут большой разницы нет. Зато rpm, например, в принципе может откатить прерванную транзакцию (для этого, конечно, нужно, чтобы система загрузилась, но полностью сломать загрузку сложно).
yoricI писал:
03.03.2023 09:01
У меня есть ИБП. Но так как обновление долгое, то его не хватит на всё.
Настройте отключение через n минут после пропадания питания. Подозреваю, что корректное прерывание обновления в Gentoo таки предусмотрено.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Kopilov
Сообщения: 923
ОС: [K]Ubuntu, Debian

Re: Спец уязвимости gentoo

Сообщение Kopilov »

devilr писал:
03.03.2023 11:20
Выйти то она выйдет, но сборка того же мира прервётся
Если порушатся зависимости при сборке мира, то да.
А при установке отдельно взятого пакета можно (наверно) реализовать что-то вроде «меня стопнули, надо срочно вернуть как было и отпустить консоль»
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 1954
ОС: gentoo fluxbox

Re: Спец уязвимости gentoo

Сообщение yoricI »

Bizdelnick писал:
03.03.2023 12:18
Только что скачанный бинарный пакет тоже в кеше,
Необязательно, если не свежескачанный. А это запросто - обновление базы пакетов авто ночью, а установка вручную. Да и они ж в запакованном виде, ещё извлечь бинарники надо. Ну это понятно, как повезёт с обломом.
Bizdelnick писал:
03.03.2023 12:18
Настройте отключение через n минут после пропадания питания.
У меня сделано по разряду АКБ, с запасом, естественно.
Bizdelnick писал:
03.03.2023 12:18
Подозреваю, что корректное прерывание обновления в Gentoo таки предусмотрено.
Когда жмёшь Ctrl-C, то оно не мгновенно вываливается, бывает, довольно долго шуршит ещё.
Kopilov писал:
03.03.2023 12:19
Если порушатся зависимости при сборке мира, то да.
Ну это-то невозможно, так глобально. С чего бы им порушиться, если может "испортиться" только один пакет, в процессе копирования свежих бинарников которого произошло отключение? А что уж это будет за пакет, возможны варианты.
Спасибо сказали:
Акаролибр
Сообщения: 97

Re: Спец уязвимости gentoo

Сообщение Акаролибр »

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

Это можно и в целом на всё обновление сделать. Перед обновлением бекапится, после успешного обновления коммитить изменения. Тогда форкать ничего не надо, но пару скриптов придётся написать.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20044
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Спец уязвимости gentoo

Сообщение Bizdelnick »

yoricI писал:
03.03.2023 14:29
Необязательно, если не свежескачанный. А это запросто - обновление базы пакетов авто ночью, а установка вручную.
Я не знаю, как в Gentoo, но в других дистрибутивах, с которыми Вы же начали сравнение (а я продолжил), как правило, скачивание непосредственно предшествует установке.
yoricI писал:
03.03.2023 14:29
Когда жмёшь Ctrl-C, то оно не мгновенно вываливается, бывает, довольно долго шуршит ещё.
Ну вот заложите достаточное время, чтобы ИБП не успел разрядиться полностью.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Kopilov
Сообщения: 923
ОС: [K]Ubuntu, Debian

Re: Спец уязвимости gentoo

Сообщение Kopilov »

yoricI писал:
03.03.2023 14:29
Ну это-то невозможно, так глобально.
Я имел ввиду гипотетическую ситуацию, когда два и более пакета могут обновиться только совместно между мажорными версиями. Что-то вроде «обновил QT — обнови/пересобери и KDE, если невовремя ресетнуть систему — получишь чёрный терминал, хотя сам пакет цел»
Добавлено (15:03):
Из недавней рабочей практики (с поправкой на то, что это разработка с монолитной сборкой на выходе) так вели себя ЯП Kotlin и сервер Quarkus.
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 1954
ОС: gentoo fluxbox

Re: Спец уязвимости gentoo

Сообщение yoricI »

Bizdelnick писал:
03.03.2023 14:43
в других дистрибутивах, с которыми Вы же начали сравнение (а я продолжил), как правило, скачивание непосредственно предшествует установке.
Просветить Вас, если не знаете)) В debian есть cron-apt (и наверняка не один такой), по крону скачивает свежие пакеты и даже может установить, но без наблюдения нежелательно.
Акаролибр писал:
03.03.2023 14:38
объедини его с btrfs.
Пусть в начале фазы merge делает снапшот, при успешном завершении файлы делает переход на новый, при неудачном - пусть откатывается на момент создания снапшота.
Почитаю, что это за brtfs, спасибо за идею.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20044
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Спец уязвимости gentoo

Сообщение Bizdelnick »

yoricI писал:
03.03.2023 15:09
Просветить Вас, если не знаете)) В debian есть cron-apt (и наверняка не один такой), по крону скачивает свежие пакеты и даже может установить, но без наблюдения нежелательно.
Про cron-apt не знал (или хорошо забыл), использую unattended-upgrdes. Обновления ставятся автоматом не только на рабочих машинах, но даже на нескольких не особо критичных серверах, ни разу ничего не ломалось (везде stable или oldstable).
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
yoricI
Сообщения: 1954
ОС: gentoo fluxbox

Re: Спец уязвимости gentoo

Сообщение yoricI »

yoricI писал:
03.03.2023 15:09
Почитаю, что это за brtfs, спасибо за идею.
По-моему, всё это не внушает, перед каждым пакетом откаты хранить, когда ещё не ясно, как оно будет потом. Только если один откат перед обновлением всех пакетов. А выясниться, что что-то не так, может не так и скоро. Я не хотел предотвратить эту ситуацию, а просто прояснить. И похвастатьcя преимуществом gentoo))

Про brtfs не читал, если честно. Может кто-нибудь парой слов объяснить, как оно хранит большой откат, за счёт уменьшения свободного места же? А если его мало, то и откат может не получиться?
Спасибо сказали:
Аватара пользователя
ormorph
Сообщения: 2289
ОС: Gentoo

Re: Спец уязвимости gentoo

Сообщение ormorph »

yoricI писал:
03.03.2023 08:10
Если при обновлении системы во время установки пакета (emerging -> installing) вырубить электричество, то в зависимости от пакета может же быть аллес капут. То есть пакет устанавливается, в базе прописаны старые файлы, по факту уже новые, и тут рубец.
Ну так всё правильно, запись в базу осуществляется после установки пакета, т.е. если продолжить обновление, то пакет будет снова собираться и устанавливаться. Как раз сделано что бы при обновлении не было битых бинарников.
devilr писал:
03.03.2023 11:20
Кстати, вариант собирать сначала бинарники, а потом их скопом ставить - штука довольно хорошая. Только места требует под эти бинарники.
Это хорошо делать при наличии нескольких компов со схожей архитектурой и флагами. Но а так ни что не мешает вынести бинарники на внешний диск на уже обновлённом компе, а потом при обновлении на другом подключать его:

Shell

# PKGDIR="/mnt/pkg" quickpkg --include-config=y --include-unmodified-config=y $(qlist -IC)
Я обычно использую NFS вместо диска.
Спасибо сказали: