LINUX.ORG.RU

Прервалось обновление

 ,


2

2

При обновлении ОС, случайно отключил комп. ОС загрузилась. У меня Fedora, при загрузке показывает версию 32, а в самой системе показывает 33. Программы не обновляются показывает конфликт пакетов версии 33 с версией 32. Откат к старым версиям не прокатывает. Помогите решить проблему!


Ответ на: комментарий от alpha

при вводе первой команды пишет: предупреждение: Found bdb Packages database while attempting sqlite backend: using bdb backend.

а после пишет: Проблема: Операция приведет к удалению следующих защищенных пакетов: dnf, sudo, systemd, systemd-udev

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

Просто удали openal-soft-1.19.1-5.fc32.i686

Он не особо нужный, если какому-то приложению понадобится - потом отдельно разберешься.

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

Вот такое сообщение:

Traceback (most recent call last): File «/usr/bin/dnf», line 57, in <module> from dnf.cli import main File «/usr/lib/python3.9/site-packages/dnf/__init__.py», line 30, in <module> import dnf.base File «/usr/lib/python3.9/site-packages/dnf/base.py», line 29, in <module> import libdnf.transaction ModuleNotFoundError: No module named 'libdnf'

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

libdnf случайно совсем удалил? Это ты зря.

скачай обратно рмпку libdnf с зеркал и поставь с помощью

rpm -i libdnf...rpm
alpha ★★★★★
()
Ответ на: комментарий от alpha

rpm -i python3-libdnf-0.45.0-3.fc32.x86_64.rpm

ошибка: Неудовлетворенные зависимости: libdnf(x86-64) = 0.45.0-3.fc32 нужен для python3-libdnf-0.45.0-3.fc32.x86_64

RazorBG
() автор топика
Последнее исправление: RazorBG (всего исправлений: 1)
Ответ на: комментарий от alpha

rpm -i python3-libdnf-0.54.2-2.fc33.x86_64.rpm

ошибка: Неудовлетворенные зависимости: libdnf(x86-64) = 0.54.2-2.fc33 нужен для python3-libdnf-0.54.2-2.fc33.x86_64

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

еще и seapplet уведомляет о конфликтах в SELinux

setenforce 0

Переводит selinux в разрешающий режим, алерты можно будет временно проигнорировать, потом починишь.

Добавь к rpm-команде опцию --nodeps, она временно проигнорирует сломанные зависимости. Но только все равно все три рпмки поставь при этом.

alpha ★★★★★
()
Последнее исправление: alpha (всего исправлений: 1)
Ответ на: комментарий от paramon

Не поняла вопрос. Чтобы восстановить систему ему как раз надо довершить обновление до f33, то есть поставить все нужные f33-пакеты, и удалить все дубликаты.

Это можно сделать с помощью dnf.

Но у него как-то получилось сломать сам dnf. Значит dnf надо восстановить установкой из пакета.

alpha ★★★★★
()
Последнее исправление: alpha (всего исправлений: 1)
Ответ на: комментарий от paramon

Зачем? это же не винда а пакетная система, надо установить все пакеты по списку, и удалить лишние.

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

Да в принципе ровно такой же. Откатить значит переставить старый пакет на место нового. Накатить - новый вместо старого. У него же система вполне себе грузится, то есть проблемы на системном уровне нет, только пакеты в порядок привести.

Ну желательно glibc и systemd не удалять в процессе конечно.

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

Посмотрел удалённые комментарии — посмеялся 😆

Короче, кажись, к этому всё и сведётся.

Но нельзя такое писать. Крамола же какая-то 😮

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

Откатить значит переставить старый пакет на место нового.

А если dnf сломан? Или еще чего? Или как ОП что то неправильно сделаешь? А вот если есть надежный откатывающий механизм, взял откатил и делай чистый перезапуск обновления, так же надежно и просто как переустановка, о которой в удаленных писали.

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

А если dnf сломан?

Это пакетная система. В неё нет понятия «сломан». Есть только пакет и его корректная распаковка в систему.

В прошлый раз ttt умудрился сломать dnf, ну так он потому что решил быть умнее менеджера пакетов и поставил dnf с помощью pip. За что и получил.

Менеджер пакетов надо ценить и уважать, и тогда «ломаться» ничего не будет.

А механизм чистого отката реализуют снапшоты BTRFS и rpm-ostree в Silverblue, но это другая история.

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

Менеджер пакетов надо ценить и уважать, и тогда «ломаться» ничего не будет.

Ну хоть молиться на него не надо %)

paramon
()

Программы не обновляются показывает конфликт пакетов версии 33 с версией 32. Откат к старым версиям не прокатывает.

Ты должен обновить, либо задаунгрейдить пакет до версии, отличной от обеих (rpm -U, может быть с --force). Есть ещё какая-то фишка в rpm, которой в ALT пользуется apt-get dedup. Ковырять это лично мне лень, но там как-то rpm вызывается так, что убирает дубли без дополнительного пакета. В общем я к тому, что у rpm такая возможность есть, это ремонтопригодно.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 2)
Ответ на: комментарий от paramon

Нельзя ли откатиться до f32 и перезапустить обновление?

Можно. Если у тебя система стояла на, например, btrfs, и ты сделал перед обновлением снапшот.

AS ★★★★★
()

Вот ещё что можно попробовать наверное. Удалять по одному посредством rpm -e -–allmatches -–nodeps, потом ставить обратно. Но тут от важности пакета зависит, например с glibc так точно не нужно поступать.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от alpha

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

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

Только теперь как полностью обновиться? при загрузке ОС в списке загружаемых показывает версию 32, а через приложения сведения о системе пишет 33

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

Всё так же:

dnf distro-sync --releasever=33

Только внимательно смотри что он пишет и не удаляй dnf, glibc и т.п.

В загрузчике 32 - это скорее всего от старого пакета ядра, так что надо его обновить. Удалять старое ядро необязательно.

Ну и вообще покажи что тебе говорит:

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

все тут не поместится, поэтому показываю предпоследнюю и последнюю строчки:

zvbi-0.2.35-10.fc32.x86_64 повторяет zvbi-0.2.35-11.fc33.x86_64

Ошибка: Check discovered 2172 problem(s)

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

Команда

dnf --releasever=33 remove --duplicates

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

Только к критичным пакетам типа dnf, systemd и glibc её применять не надо. Если они в этом списке есть, ту лучше с ними отдельно разобраться вручную. А потом уже прогонять remove --duplicates массово.

alpha ★★★★★
()
Последнее исправление: alpha (всего исправлений: 1)
Ответ на: комментарий от alpha

dnf distro-sync --releasever=33
Последняя проверка окончания срока действия метаданных: 1:09:35 назад, Сб 31 окт 2020 13:47:03.
Ошибка:
Проблема: Операция приведет к удалению следующих защищенных пакетов: sudo, systemd, systemd-udev (попробуйте добавить «--skip-broken» для пропуска удаляемых пакетов)

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

посмотреть dnf repolist, убедиться что по умолчанию сконфигрурованы репозитории от Fedora 33, а не от Fedora 32

Посмотреть ещё раз dnf check. Вывод у него должен быть пустым.

Обновиться dnf update

Начать пользоваться F33 :)

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

repolist репозитории 33 а вот у check:

dnf check

fipscheck-1.5.0-8.fc32.x86_64 замещается libkcapi-fipscheck-1.2.0-3.fc33.x86_64

google-crosextra-caladea-fonts-1.002-0.14.20130214.fc32.noarch замещается ht-caladea-fonts-1:1.001-3.20200428git336a529.fc33.noarch

google-crosextra-carlito-fonts-1.103-0.12.20130920.fc32.noarch замещается google-carlito-fonts-1.103-0.15.20130920.fc33.noarch

paratype-pt-sans-fonts-20141121-10.fc32.noarch замещается pt-sans-fonts-20141121-18.fc33.noarch

python27-2.7.18-6.fc32.x86_64 замещается python2.7-2.7.18-6.fc33.x86_64

zram-0.4-1.fc32.noarch замещается zram-generator-defaults-0.2.0-4.fc33.noarch

Ошибка: Check discovered 6 problem(s)

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

Жаль что remove –duplicates такое не ловит, значит делай руками. Можно через dnf shell:

dnf shell
Last metadata expiration check: 2:53:33 ago on Sa 31 Okt 2020 13:55:04 CET.
> remove fipscheck-1.5.0-8.fc32.x86_64
> install libkcapi-fipscheck-1.2.0-3.fc33.x86_64
> run
> remove google-crosextra-caladea-fonts-1.002-0.14.20130214.fc32.noarch
> install ht-caladea-fonts-1:1.001-3.20200428git336a529.fc33.noarch
> run
...

и так далее

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

Удалил. Все пусто теперь!

dnf update выдает следующее:

Зависимости разрешены. Отсутствуют действия для выполнения Выполнено!

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

Качнул с офф сайта… Восстановился.

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

Установленные пакеты
kernel.x86_64 5.8.12-200.fc32 @@System
kernel.x86_64 5.8.15-201.fc32 @updates
kernel.x86_64 5.8.16-200.fc32 @updates
kernel.x86_64 5.8.16-300.fc33 @updates
Имеющиеся пакеты
kernel.x86_64 5.8.15-301.fc33 fedora
kernel.x86_64 5.8.16-300.fc33 updates

RazorBG
() автор топика
Ответ на: комментарий от RazorBG
dnf install kernel.x86_64 5.8.16-300.fc33

Потом перезагрузись в него, проверь что всё работает и удали ядра от f32

Ну и по-хорошему distro-sync всё таки нужен. Он и сейчас отваливается?

alpha ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.