LINUX.ORG.RU
ФорумAdmin

Откат изменений после апдейтов накачали

 , ,


0

2

Как известно, что-то может сломаться после очередного обновления, вплоть до того, что система перестанет нормально работать. Я использую Fedora, в Fedora есть замечательный инструмент dnf history, который логирует каждый install/upgrade/remove, в удобной форме все показывает и позволяет откатить любые изменения.

Так думал я, пока мне не пришлось им воспользоваться. Сломался один из пакетов, установленный из RPMFusion (неважно какой, но mesa-freeworld). Оказалось, что dnf history работает отлично, вот только репы не хранят ничего, кроме последнего пакета. И даже если попытаться воспользоваться откатом сразу после обновления – можно получить только список пакетов, которых уже нет в репах.

Есть какой-то fedora-archive-repository, о котором я ВООБЩЕ не смог найти никакой официальной документации, кроме обрывков из блогов каких-то чуваков. Впрочем, он тоже не решил проблему: не найденных пакетов стало меньше, но все равно много. И даже если бы там хранились старые версии пакетов Fedora, вряд ли это бы мне помогло со сломанным пакетом из RPMFusion.

Есть другое решение: не удалять пакеты после установки и хранить несколько последних версий в кэше, как это рекомендовано в Arch. Вроде как может быть полезно, но места жрать будет немало (+ гигабайт 30, если 2-3 версии всех пакетов?) и не очень ясно можно ли на это надеяться.

Какой каноничный путь восстановления системы после неудачного обновления? Скажем, не только локалхост, но и какая-нибудь VPS. Речь только о системе.

Каким-нибудь restic/borg создавать бэкап всего /? Но это долго же и не очень ясно что именно бэкапить и как восстанавливать? Загружаться с LiveCD и пытаться копировать с затиранием всего /?

BTRFS прошу не предлагать по очевидным причинам.

Большая просьба не мериться членами, я в курсе, что вы все админите хайлоад и датацентры, хотелось бы решений, которые подойдут для локалхоста/VPS/сервера.

позволяет откатить любые изменения

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

А просто удалить freeworld и поставить его обратно почему не возможно?

monkdt
()
Ответ на: комментарий от monkdt

он позволяет удалить установленые пакеты, квази batch обработка, но не откатить изменения

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

А просто удалить freeworld и поставить его обратно почему не возможно?

Я так и сделал, конечно, но вопрос-то не в этом, а в том, что сломаться может любой пакет. Хотелось бы максимально быстро восстановить систему.

MoldAndLimeHoney
() автор топика

borg

У него нет функции «развернуть снапшот», можно только его смонтировать и руками скопировать оттуда файлы.

BTRFS прошу не предлагать по очевидным причинам.

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

Zeta_Gundam
()
Ответ на: комментарий от Zeta_Gundam

но в снапшоте не будет /boot

А какой-то пакет содержит что-то в /boot? Я имею ввиду, там разве не генерируется все на лету? Обычно там лежат несколько версий последних ядер.

У него нет функции «развернуть снапшот», можно только его смонтировать и руками скопировать оттуда файлы.

И у restic тоже. А как тогда правильно? Как на VPS восстанавливать?

MoldAndLimeHoney
() автор топика

Архива updates для rpmfusion я не нашёл, так что как исправить конкретно твою проблему сказать не могу.

Что касается fedora-repos-archive, то там по идее всё просто:

sudo dnf install fedora-repos-archive
sudo sed -i 's|enabled=1|enabled=0|g' /etc/yum.repos.d/fedora-updates-archive.repo # Отключаем по-умолчанию, включаем только когда понадобится.
sudo dnf --enablerepo update-archive undo ... # Подключаешь репу когда откатываешь что-то.

Чтобы обойти проблему с rpmfusion, можно для реп rpmfusion поставить параметр keepcache=True, тогда по идее пакеты останутся в кэше и их можно будет поставить. Работать должно, правда сам я не пробовал.
Ну и разумеется, этот вариант будет жрать место в /var/cache/ и чистить его нужно самому, но из rpmfusion у тебя вряд ли много пакетов.

Ivan_qrt ★★★★★
()

Есть другое решение: не удалять пакеты после установки и хранить несколько последних версий в кэше, как это рекомендовано в Arch.

У меня в дебиане установки года 2012 вообще никакие пакеты не удаляются (это дефолт) пока я их не удалю сам. Ну и разумеется я всегда старался последние несколько версий их там оставлять, не представляю чем руководствуются те кто сразу всё чистит.

firkax ★★★★★
()
Ответ на: комментарий от MoldAndLimeHoney

О том и речь, что тебе прилетело проблемное ядро, ты откатил корень, и теперь пакетный менеджер думает, что у тебя в /boot разложен один набор версий, а по факту – другой.

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

Zeta_Gundam
()
Ответ на: комментарий от Ivan_qrt

Что касается fedora-repos-archive, то там по идее всё просто:

Это я все сделал, проблему не решило и при попытке отката, например.

$ grep "enabled" /etc/yum.repos.d/fedora-updates-archive.repo
enabled=1

> sudo dnf history rollback 769

Error: The following problems occurred while running a transaction:
  Cannot find rpm nevra "NetworkManager-libnm-1:1.42.6-1.fc38.i686".
  Cannot find rpm nevra "cups-client-1:2.4.5-1.fc38.x86_64".
  Cannot find rpm nevra "cups-filesystem-1:2.4.5-1.fc38.noarch".
  Cannot find rpm nevra "cups-ipptool-1:2.4.5-1.fc38.x86_64".
  Cannot find rpm nevra "cups-libs-1:2.4.5-1.fc38.i686".
  Cannot find rpm nevra "cups-libs-1:2.4.5-1.fc38.x86_64".
  Cannot find rpm nevra "cups-1:2.4.5-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-va-drivers-freeworld-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-va-drivers-freeworld-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-vdpau-drivers-freeworld-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-vdpau-drivers-freeworld-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-alsa-0.3.72-1.fc38.i686".
  Cannot find rpm nevra "pipewire-alsa-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-gstreamer-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-jack-audio-connection-kit-libs-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-jack-audio-connection-kit-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-libs-0.3.72-1.fc38.i686".
  Cannot find rpm nevra "pipewire-libs-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-pulseaudio-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-utils-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "pipewire-0.3.72-1.fc38.i686".
  Cannot find rpm nevra "pipewire-0.3.72-1.fc38.x86_64".
  Cannot find rpm nevra "selinux-policy-targeted-38.17-1.fc38.noarch".
  Cannot find rpm nevra "selinux-policy-38.17-1.fc38.noarch".
  Cannot find rpm nevra "wine-alsa-8.6-1.fc38.i686".
  Cannot find rpm nevra "wine-cms-8.6-1.fc38.i686".
  Cannot find rpm nevra "wine-core-8.6-1.fc38.i686".
  Cannot find rpm nevra "wine-ldap-8.6-1.fc38.i686".
  Cannot find rpm nevra "wine-opencl-8.6-1.fc38.i686".
  Cannot find rpm nevra "wine-pulseaudio-8.6-1.fc38.i686".
  Cannot find rpm nevra "wine-twain-8.6-1.fc38.i686".

Большинство этих ненайденных пакетов из @System, т.е. они должны быть, по идее. Но их нет. Значит способ так себе.

К тому же я не смог найти ничего про этот реп в официальной документации, где про него вообще написано?

MoldAndLimeHoney
() автор топика
Ответ на: комментарий от Ivan_qrt

и что так просто можно через 3 месяца кучи изменений в системе взять и просто без проблем откатить все изменения с помощью dnf? Слабо вериться. Я о такой практике восстановления системы еще никогда не слышал

monkdt
()
Ответ на: комментарий от MoldAndLimeHoney

Странно. У меня откатывает:

$ sudo dnf history info 252
Идентификатор транзакции: 252
Время начала   : Пн 26 июн 2023 06:37:33
Начало rpmdb   : a80d70a6b8bb46c6a53a5b4e5ce4ce5b35a9a39be3149ba1143b4eebd880f0a4
Время окончания       : Пн 26 июн 2023 06:37:34 (1 секунд)
Конец rpmdb    : d353e75d3e5209f36046663e0a32c424dc4e1a0b8e6ff12bca55169ece75c94e
Пользователь   : Ivan <ivan>
Код возврата   : Успешно
Выпускаемая версия     : 38
Команда   : upgrade
Комментарий        : 
Пакеты изменены:
    Upgrade  annobin-docs-12.14-1.fc38.noarch       @updates
    Upgraded annobin-docs-12.12-1.fc38.noarch       @@System
    Upgrade  annobin-plugin-gcc-12.14-1.fc38.x86_64 @updates
    Upgraded annobin-plugin-gcc-12.12-1.fc38.x86_64 @@System
    Upgrade  kernel-srpm-macros-1.0-19.fc38.noarch  @updates
    Upgraded kernel-srpm-macros-1.0-16.fc38.noarch  @@System
$ sudo dnf history undo 252
Последняя проверка окончания срока действия метаданных: 0:04:59 назад, Вс 02 июл 2023 17:51:26.
Ошибка: При выполнении транзакции возникли следующие проблемы:
  Не удалось найти nevra rpm «annobin-docs-12.12-1.fc38.noarch».
  Не удалось найти nevra rpm «annobin-plugin-gcc-12.12-1.fc38.x86_64».
$ sudo dnf --enablerepo updates-archive history undo 252
Fedora 38 - x86_64 - Updates Archive                                                                                                            1.0 MB/s |  32 MB     00:31    
Последняя проверка окончания срока действия метаданных: 0:00:17 назад, Вс 02 июл 2023 17:57:26.
Зависимости разрешены.
================================================================================================================================================================================
 Пакет                                          Архитектура                        Версия                                     Репозиторий                                 Размер
================================================================================================================================================================================
Откат версии:
 annobin-docs                                   noarch                             12.12-1.fc38                               updates-archive                              94 k
 annobin-plugin-gcc                             x86_64                             12.12-1.fc38                               updates-archive                             894 k
 kernel-srpm-macros                             noarch                             1.0-16.fc38                                fedora                                      9.3 k

Результат транзакции
================================================================================================================================================================================
Откат версии  3 Пакета

Объем загрузки: 997 k
Продолжить? [д/Н]: y
Загрузка пакетов:
(1/3): kernel-srpm-macros-1.0-16.fc38.noarch.rpm                                                                                                 20 kB/s | 9.3 kB     00:00    
(2/3): annobin-docs-12.12-1.fc38.noarch.rpm                                                                                                      77 kB/s |  94 kB     00:01    
(3/3): annobin-plugin-gcc-12.12-1.fc38.x86_64.rpm                                                                                               474 kB/s | 894 kB     00:01    
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Общий размер                                                                                                                                    314 kB/s | 997 kB     00:03     
Проверка транзакции
Проверка транзакции успешно завершена.
Идет проверка транзакции
Тест транзакции проведен успешно.
Выполнение транзакции
  Подготовка       :                                                                                                                                                        1/1 
  Откат версии     : annobin-docs-12.12-1.fc38.noarch                                                                                                                       1/6 
  Откат версии     : annobin-plugin-gcc-12.12-1.fc38.x86_64                                                                                                                 2/6 
  Запуск скриптлета: annobin-plugin-gcc-12.12-1.fc38.x86_64                                                                                                                 2/6 
  Откат версии     : kernel-srpm-macros-1.0-16.fc38.noarch                                                                                                                  3/6 
  Очистка          : kernel-srpm-macros-1.0-19.fc38.noarch                                                                                                                  4/6 
  Очистка          : annobin-plugin-gcc-12.14-1.fc38.x86_64                                                                                                                 5/6 
  Запуск скриптлета: annobin-plugin-gcc-12.14-1.fc38.x86_64                                                                                                                 5/6 
  Очистка          : annobin-docs-12.14-1.fc38.noarch                                                                                                                       6/6 
  Запуск скриптлета: annobin-docs-12.14-1.fc38.noarch                                                                                                                       6/6 
  Проверка         : kernel-srpm-macros-1.0-16.fc38.noarch                                                                                                                  1/6 
  Проверка         : kernel-srpm-macros-1.0-19.fc38.noarch                                                                                                                  2/6 
  Проверка         : annobin-docs-12.12-1.fc38.noarch                                                                                                                       3/6 
  Проверка         : annobin-docs-12.14-1.fc38.noarch                                                                                                                       4/6 
  Проверка         : annobin-plugin-gcc-12.12-1.fc38.x86_64                                                                                                                 5/6 
  Проверка         : annobin-plugin-gcc-12.14-1.fc38.x86_64                                                                                                                 6/6 

Возвращен к предыдущей версии:
  annobin-docs-12.12-1.fc38.noarch                      annobin-plugin-gcc-12.12-1.fc38.x86_64                      kernel-srpm-macros-1.0-16.fc38.noarch                     

Выполнено!

М.б. там какого-нибудь dnf makecache не хватает или он ещё как-то не увидел репу?

Ivan_qrt ★★★★★
()
Ответ на: комментарий от monkdt

Ну совсем без проблем в линуксе ничего не бывает.

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

Только это не совсем практика восстановления, т.к. если что-то капитально сломалось, то и dnf не заведётся или не скачает.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от Ivan_qrt

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

> sudo dnf history undo last   
Error: The following problems occurred while running a transaction:
  Cannot find rpm nevra "mesa-dri-drivers-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-filesystem-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libEGL-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libGL-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libOSMesa-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libgbm-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libglapi-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-vulkan-drivers-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "vim-common-2:9.0.1649-1.fc38.x86_64".
  Cannot find rpm nevra "vim-data-2:9.0.1649-1.fc38.noarch".
  Cannot find rpm nevra "vim-enhanced-2:9.0.1649-1.fc38.x86_64".
  Cannot find rpm nevra "vim-filesystem-2:9.0.1649-1.fc38.noarch".
  Cannot find rpm nevra "vim-minimal-2:9.0.1649-1.fc38.x86_64".
  Cannot find rpm nevra "xxd-2:9.0.1649-1.fc38.x86_64".

Все эти пакеты из @System.

MoldAndLimeHoney
() автор топика
Ответ на: комментарий от MoldAndLimeHoney

И что-то из архивов он достает, потому что при отключении updates-archive, ненайденных пакетов становится сильно больше:

> sudo dnf history undo last                                 
Error: The following problems occurred while running a transaction:
  Cannot find rpm nevra "cups-browsed-1:2.0~rc1-1.fc38.x86_64".
  Cannot find rpm nevra "evolution-data-server-3.48.3-1.fc38.x86_64".
  Cannot find rpm nevra "evolution-data-server-langpacks-3.48.3-1.fc38.noarch".
  Cannot find rpm nevra "ibus-typing-booster-2.22.5-1.fc38.noarch".
  Cannot find rpm nevra "kdiskmark-3.1.3-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-anaconda-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-cli-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-fedora-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-filesystem-2.17.10-1.fc38.noarch".
  Cannot find rpm nevra "libreport-gtk-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-plugin-bugzilla-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-plugin-kerneloops-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-plugin-logger-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-plugin-reportuploader-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-plugin-systemd-journal-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-plugin-ureport-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "libreport-web-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-dri-drivers-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-dri-drivers-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-filesystem-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-filesystem-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-libEGL-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libEGL-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-libGL-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libGL-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-libOSMesa-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libOSMesa-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-libgbm-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libgbm-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-libglapi-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-libglapi-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-libxatracker-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-va-drivers-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-vdpau-drivers-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "mesa-vulkan-drivers-23.1.2-1.fc38.i686".
  Cannot find rpm nevra "mesa-vulkan-drivers-23.1.2-1.fc38.x86_64".
  Cannot find rpm nevra "python3-libreport-2.17.10-1.fc38.x86_64".
  Cannot find rpm nevra "vim-common-2:9.0.1649-1.fc38.x86_64".
  Cannot find rpm nevra "vim-data-2:9.0.1649-1.fc38.noarch".
  Cannot find rpm nevra "vim-enhanced-2:9.0.1649-1.fc38.x86_64".
  Cannot find rpm nevra "vim-filesystem-2:9.0.1649-1.fc38.noarch".
  Cannot find rpm nevra "vim-minimal-2:9.0.1649-1.fc38.x86_64".
  Cannot find rpm nevra "xxd-2:9.0.1649-1.fc38.x86_64".

MoldAndLimeHoney
() автор топика
Ответ на: комментарий от MoldAndLimeHoney

А что у тебя говорит sudo dnf list --showduplicates mesa-dri-drivers?

У меня так:

$ sudo dnf --enablerepo updates-archive list --showduplicates mesa-dri-drivers
Последняя проверка окончания срока действия метаданных: 0:09:25 назад, Вс 02 июл 2023 17:57:26.
Установленные пакеты
mesa-dri-drivers.x86_64                                                              23.1.2-1.fc38                                                               @updates       
Имеющиеся пакеты
mesa-dri-drivers.i686                                                                23.0.1-2.fc38                                                               fedora         
mesa-dri-drivers.x86_64                                                              23.0.1-2.fc38                                                               fedora         
mesa-dri-drivers.x86_64                                                              23.0.2-2.fc38                                                               updates-archive
mesa-dri-drivers.x86_64                                                              23.0.3-1.fc38                                                               updates-archive
mesa-dri-drivers.x86_64                                                              23.0.3-3.fc38                                                               updates-archive
mesa-dri-drivers.x86_64                                                              23.0.3-5.fc38                                                               updates-archive
mesa-dri-drivers.x86_64                                                              23.1.1-1.fc38                                                               updates-archive
mesa-dri-drivers.x86_64                                                              23.1.2-1.fc38                                                               updates-archive
mesa-dri-drivers.i686                                                                23.1.3-1.fc38                                                               updates        
mesa-dri-drivers.x86_64
Ivan_qrt ★★★★★
()
Ответ на: комментарий от Ivan_qrt

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

monkdt
()
Ответ на: комментарий от monkdt

Не понятно, как ты сделал такой вывод. history undo может откатить любую транзакцию. Естественно он проверит при этом зависимости. А дальше сам решай, что тебе делать. Если что, всегда можно сделать rollback.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от Ivan_qrt

Много чего говорит, но для отката требуется mesa-dri-drivers-23.1.2-1.fc38.i686, например, а именно его в архивах и нет :)

sudo dnf list --showduplicates mesa-dri-drivers                   
Installed Packages
mesa-dri-drivers.i686                                                                                  23.1.3-1.fc38                                                                                 @updates       
mesa-dri-drivers.x86_64                                                                                23.1.3-1.fc38                                                                                 @updates       
Available Packages
mesa-dri-drivers.i686                                                                                  23.0.1-2.fc38                                                                                 fedora         
mesa-dri-drivers.x86_64                                                                                23.0.1-2.fc38                                                                                 fedora         
mesa-dri-drivers.x86_64                                                                                23.0.2-2.fc38                                                                                 updates-archive
mesa-dri-drivers.x86_64                                                                                23.0.3-1.fc38                                                                                 updates-archive
mesa-dri-drivers.x86_64                                                                                23.0.3-3.fc38                                                                                 updates-archive
mesa-dri-drivers.x86_64                                                                                23.0.3-5.fc38                                                                                 updates-archive
mesa-dri-drivers.x86_64                                                                                23.1.1-1.fc38                                                                                 updates-archive
mesa-dri-drivers.x86_64                                                                                23.1.2-1.fc38                                                                                 updates-archive
mesa-dri-drivers.i686                                                                                  23.1.3-1.fc38                                                                                 updates        
mesa-dri-drivers.x86_64                                                                                23.1.3-1.fc38                                                                                 updates     

Как я уже сказал, система у меня сейчас рабочая (свапнул на обычную mesa, подожду пока починят freeworld), это поиск решения для будущего. Очевидно, что откат через updates-archive совсем ненадежный. Может и будет там нужное, а может и не будет.

MoldAndLimeHoney
() автор топика
Ответ на: комментарий от Ivan_qrt

при чем тут чистота транзакции? Я могу за большой промежуток времени сам вручную заменить библиотеки, сделать изменения через make install и прочее. Да много чего. То что вновь установленные пакеты будут работать без проблем с прочим софтом это большой вопрос. Чем больше пройдет времени , тем вероятность что пойдет что-то не так выше

monkdt
()
Ответ на: комментарий от monkdt

Саныч, яйца, неправильные двери.

Ты можешь и # rm /usr/bin/dnf сделать, а потом удивляться, чего это dnf не работает.

dnf history откатывает только то, что делал dnf. Если менял систему ты, то и откатывать тоже тебе, ну очевидно же.

Ivan_qrt ★★★★★
()
Ответ на: комментарий от Ivan_qrt

Чтобы обойти проблему с rpmfusion, можно для реп rpmfusion поставить параметр keepcache=True, тогда по идее пакеты останутся в кэше и их можно будет поставить.

Можно ли как-то хранить только 2-3 последние версии пакетов, чтобы старые удалялись автоматически?

MoldAndLimeHoney
() автор топика
Ответ на: комментарий от MoldAndLimeHoney

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

Ivan_qrt ★★★★★
()
Ответ на: комментарий от monkdt

Это рабочий инструмент с определённой областью применения. Как и любой другой инструмент. Если конкретно тебе он не подходит, так и отлично, используй другие. Мне об этом докладывать не обязательно.

Ivan_qrt ★★★★★
()