Сегодня я хочу рассмотреть откаты (rollback) посредством пакетного менеджера DNF. Судя по частым вопросам на форумах много пользователей просто не знают всех возможностей DNF. По умолчанию он используется в дистрибутивах семейства Red Hat, или их форках. Большинство пользователей после установки и настройки системы ставят свой любимый софт. Некоторые "выпиливают" все лишнее по их мнению. Также много софта ставят просто на посмотреть, сравнить с аналогами и удалить.
Не всегда администрирование системы завершается корректно. Случаются ошибки и сбои. О причинах я рассуждать не буду. Отмечу лишь, что нет идеальных систем и пользователей. Ту же Fedora, как впрочем и другую систему очень легко сломать.
На этот случай есть разные способы резервного копирования, или снимки состояния системы (Silvrblue, OpenSUSE и т.д. ). А также пакетный менеджер DNF предоставляет систему откатов. Это конечно не снимок или бекап, а что-то вроде точек восстановления Windows. Что впоследствии я надеюсь поможет секономить много времени и нервов.
Откат изменений в Fedora
Для демонстрации я использую Fedora 31-beta. Для начала обновим систему:
sudo dnf upgrade --refresh
Далее проверим систему на ошибки:
sudo dnf check
Проверяет локальный packagedb и выдает информацию о любых найденных проблемах.
Как видим DNF выдал пустую строку, это значит проблем не нашел.
Далее посмотрим историю:
sudo dnf history list
Команда history позволяет пользователю просматривать события прошлых транзакций и действовать в соответствии с этой информацией. По умолчанию выводит весь список, также можно искать по номерам или пакетам.
Далее можно посмотреть историю отдельной транзакции:
sudo dnf history info
По умолчанию выводит последнюю, также можно искать по номеру или по произведенным действиям, установленным пакетам.
Здесь следует обратить внимание на строку:
Вот мы и пришли собственно к откатам:
dnf history rollback №(package-name)
Эта команда позволяет отменить все транзакции, выполненные после указанной транзакции. Здесь и далее я использую номера транзакций (мне так удобнее), если невозможно отменить некоторые транзакции из-за текущего состояния RPMDB(Код возврата), он не отменит ни одну транзакцию. Еще следует отметить, что откаты работают с пакетами установленными при помощи DNF и PackageKit (Gnome-Software, Dnfdragora). Флатпаки управляются отдельно.
Например я установлю текстовый редактор Geany. Далее откатим установку:
sudo dnf history rollback 14
Как видим мы откатили все изменения после 14-й транзакции.
Также есть и другие варианты использования команды history:
dnf history redo №(package-name)
Повторить указанную транзакцию:
sudo dnf history redo 15
Как видим мы опять установили Geany:
dnf history undo №(package-name)
Отменить указанную транзакцию.
sudo dnf history undo 17
Как видим мы опять удалили Geany:
sudo dnf history userinstalled
Показать все пакеты установленные пользователем:
Вот таким способом при помощи команды DNF - History можно откатывать систему. Делать их лучше на стабильной системе (в бете могут быть проблемы). Fedora 31-beta была взята для примера так как была под рукой на виртуальной машине. Это конечно же не полноценная замена бекапам, но часто помогает избавиться от лишней головной боли.
Выводы
Сегодня мы рассмотрели откаты посредством пакетного менеджера DNF. Эти и другие команды DNF более подробно можно посмотреть здесь, или в терминале при помощи команды man.
Не ставить эту говносистему, и не париться. И Бубен не нужен. А если хочется то ой. По RPM лучше по Мандрейку. Надёжен и стабилен, в Rosa, Mageja, Open Mandriva/ Хватит эти поделки от ШЛЯПЫ совать.
Полностью согласен с предыдущим "оратором"! Не нужно связываться с этими хитро сделанными господами, которые куют бабло за счет лапушков, которые им доверяются! ))) И пусть меня фанаты или ненавистники, или "агенты влияния" хоть заминусуют и заоскорбляют - я при своем мнении и точно при таком же мнении, смею заверить ВСЕ, кто боле-менее знаком с дистрибутивами! Кстати, Русская Федора накрылась!" Так, что и я - тот, кто пару раз с ней связывался (в основном, с русской) - сказал "Хватит"!
Собаки лают - караван идет. Все как всегда. У некоторых просто какая-то онтологическая ненависть к Федоре. Жалко вас.
Дичь какая-то... Статья была не о том, насколько хороша или плоха fedora. К чему такие комментарии? Вот в какой раз убеждаюсь, что не стоит читать русскоязычные комментарии, вечный срач и помои
//.. Кстати, Русская Федора накрылась!
Двоечник-криворучка!
https://ru.fedoracommunity.org/posts/rfremix-retired/
Статус проекта:
Проект выполнил свою задачу на 100%: все его наработки были приняты в официальные репозитории Fedora, а также RPM Fusion. Мейнтейнеры Russian Fedora теперь являются мейнтейнерами Fedora и RPM Fusion.
Поддержка пользователей и пакетов будет продолжена в рамках материнского проекта Fedora.
Спасибо за статью!
В деле отката изменений Nixos на ZFS пока не имеет равных...