23 апреля 2026 № 1 (2026)

ROSARIUM

газета советского программного инженера

Проблемы после обновлений

Исправление неполадок, возникших после обновления системы

На этой странице
Обновлено: 31.03.2026

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

Откат обновления

Если проблема возникла сразу после dnf update, самое простое решение — откатить транзакцию.

Использование истории DNF

# 1. Посмотреть историю транзакций
sudo dnf history

# 2. Найти номер (ID) последнего обновления и посмотреть детали
sudo dnf history info N

# 3. Откатить транзакцию (замените N на ID)
sudo dnf history undo N
Осторожно
Откат транзакции может затронуть множество пакетов и потребовать отката других, зависимых от неё транзакций. DNF предупредит об этом.

Проблемы с драйвером NVIDIA

После обновления ядра проприетарный драйвер NVIDIA может перестать работать.

Решение 1: Светофор или kroko-cli (рекомендуемый способ)

В актуальной пользовательской ветке ROSA сначала проверьте, не предлагает ли «Светофор» исправить проблему автоматически. Для консольного сценария используйте kroko-cli:

sudo kroko-cli autoinstall

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

Решение 2: Ручная пересборка модуля

Если драйвер ставился нестандартно, вручную, либо автоматический способ не помог, переходите к ручной диагностике:

  1. Убедитесь, что установлены заголовочные файлы для нового ядра: sudo dnf install kernel-devel
  2. Запустите пересборку модуля. Команда зависит от способа установки драйвера:
    # Если драйвер ставился через RPM-пакеты (akmod-nvidia)
    sudo akmods --force
    
    # Если драйвер ставился вручную (через .run файл)
    sudo dkms autoinstall
    
  3. Принудительно обновите образ initramfs и перезагрузитесь:
    sudo dracut --force
    sudo reboot
    

Сломанные зависимости

Иногда обновление прерывается, оставляя систему в нестабильном состоянии.

Диагностика

sudo dnf check

Восстановление

# Попытка синхронизировать пакеты с репозиторием
sudo dnf distro-sync
Опасно
Команда `distro-sync` может откатить (понизить) некоторые пакеты до версий в репозитории. Используйте с осторожностью, если у вас подключены сторонние репозитории.
# Принудительная переустановка конкретного пакета
sudo dnf reinstall имя-пакета

# Удаление проблемного пакета (если он не критичен)
sudo dnf remove имя-пакета

Восстановление из снимка системы

Если вы используете утилиту для снимков системы (например, Timeshift), лучший способ всё исправить — это откатиться к состоянию до обновления.

# Пример для Timeshift
sudo timeshift --restore

Это самый надёжный способ, который отменяет абсолютно все изменения.

Проверка целостности пакетов

Эта команда проверяет все установленные пакеты и ищет изменённые файлы.

# Проверка всех пакетов
sudo rpm -Va

Следующая команда попытается автоматически переустановить все пакеты, у которых проверка выявила несоответствие контрольной суммы (признак повреждения).

sudo dnf reinstall $(rpm -Va 2>&1 | grep -E '^..5' | awk '{print $NF}' | xargs rpm -qf | sort -u)

Очистка кэша DNF

В редких случаях проблема может быть в повреждённом кэше пакетов.

sudo dnf clean all
sudo dnf makecache

Следующий шаг