openSUSE openSUSE Tumbleweed

openSUSE Tumbleweed: конфликт пакетов при zypper dup

  • Обновлено
  • Чтение ≈ 3 минуты
  • Нужны права администратора

Краткий ответ

Tumbleweed обновляется командой zypper dup. Ниже — причины и порядок действий от простого к сложному.

В этой статье
  1. Что означает ошибка
  2. Причины и решения
  3. Пошаговое решение
  4. Подготовка
  5. Разбор конфликтов
  6. Если сломалось

#Что означает ошибка

Сообщение
Problem: package conflicts with ... provided by ...

При обновлении Tumbleweed командой zypper dup возникают конфликты зависимостей: «Problem: ... conflicts with ...», «nothing provides ...». Причины: рассинхрон зеркал, сторонние репозитории с устаревшими пакетами, заблокированные (locked) пакеты, смешанные версии при прерванном обновлении.

В Tumbleweed допустим только zypper dup, а не zypper up.

Разбирайте предложенные решения внимательно.

Tumbleweed обновляется командой zypper dup. Конфликты возникают из-за сторонних репозиториев с другими версиями библиотек; отключите лишние или назначьте приоритеты.

#Причины и решения

Возможная причинаКак узнатьЧто делать
Сторонние репозиторииДругие версии.Отключите.
ПриоритетыРавны.Задайте.
Снятые пакетыУдалены.Удалите вручную.
Старое зеркалоНесинхронно.Смените.

#Пошаговое решение

  1. Обновите метаданныеВ Fedora, AlmaLinux или Rocky Linux откройте «Терминал» и выполните sudo dnf clean metadata, затем sudo dnf makecache --refresh. Первая команда очищает только локальные метаданные DNF, вторая загружает их вновь. Если появляется ошибка репозитория, перепишите его имя и адрес; не выключайте проверку GPG-подписей.
  2. Проверьте репозитории и приоритетыСначала запишите адрес и имя репозитория из сообщения об ошибке. В Debian/Ubuntu проверьте /etc/apt/sources.list и файлы /etc/apt/sources.list.d/, в Fedora — /etc/yum.repos.d/, в Arch/Manjaro — /etc/pacman.d/mirrorlist. Сверьте адрес с официальной документацией именно вашей версии Linux, сохраните копию файла конфигурации и меняйте только неисправную запись. Затем обновите метаданные соответствующим менеджером пакетов.
  3. Снимите блокировки пакетовВ терминале выполните sudo zypper locks, чтобы увидеть зафиксированные пакеты. Если проблемный пакет присутствует в списке, выясните, почему была создана блокировка. Для удаления конкретного замка используйте sudo zypper removelock НОМЕР, где номер берётся из списка; не снимайте все блокировки без понимания последствий. После изменения выполните sudo zypper dup --dry-run и внимательно проверьте предлагаемые удаления.
  4. Выберите вариант решения конфликтаВо время sudo zypper dup прочитайте название конфликтующих пакетов и каждый предложенный вариант разрешения. Не выбирайте первый вариант автоматически: он может удалить рабочее окружение или сменить поставщика пакета. Если предлагается удалить ядро, графический рабочий стол или важный репозиторий, отмените операцию и сначала приведите репозитории к согласованным версиям. Выполните sudo zypper dup --dry-run для просмотра плана без изменений; при сомнении сохраните текст ошибки и обратитесь к документации openSUSE.
  5. При сбое откатитесь на снимокОткат к снимку возможен только если система использует настроенные Btrfs/Snapper и нужная точка восстановления действительно есть. Перед изменениями проверьте sudo snapper list. Если после обновления система перестала загружаться, на GRUB некоторых установок openSUSE есть пункт загрузки снимка «Start bootloader from a read-only snapshot»; выберите подходящий снимок и следуйте официальной процедуре snapper rollback. Не запускайте откат вслепую на ext4 и не удаляйте текущие данные без отдельной резервной копии.
  6. Список с приоритетами и обновление дистрибутива
    Linux · Терминал (Bash)КомандаНужен sudo
    Список с приоритетами и обновление дистрибутива.
    sudo zypper lr -P
    sudo zypper dup

#Подготовка

Обновите метаданные: sudo zypper ref -f. Проверьте репозитории: zypper lr -d — должны быть основные OSS/Non-OSS/Update и ограниченное число сторонних. Выполните sudo zypper dup --allow-vendor-change при вопросе о смене поставщика. Проверьте блокировки: zypper ll и снимите: sudo zypper rl имя. Убедитесь, что приоритеты репозиториев выставлены правильно: zypper lr -P.

#Разбор конфликтов

Zypper предлагает варианты (1, 2, 3): читайте каждый. Обычно безопасный вариант — удалить конфликтующий сторонний пакет. Попробуйте снова через час, если зеркало неполное: sudo zypper ref && sudo zypper dup. Подробности: sudo zypper dup --details. Проверьте пакеты без репозитория: zypper packages --orphaned; уберите ненужные. Проблемный пакет можно временно удалить, обновить систему и поставить заново: sudo zypper rm имя.

#Если сломалось

Откатитесь на снимок Btrfs: при загрузке GRUB → «Start bootloader from a read-only snapshot» → выберите последний рабочий → sudo snapper rollback. Принудительная переустановка: sudo zypper in -f пакет. Сменить зеркало: sudo zypper mr -d repo-oss и добавить https://download.opensuse.org/tumbleweed/repo/oss/. Читайте объявления на lists.opensuse.org и news.opensuse.org.

Linux · Терминал (Bash)КомандаНужен sudo
Обновление метаданных, проверка репозиториев, блокировок и подробный разбор dup.
sudo zypper ref -f
zypper lr -d
zypper ll
sudo zypper dup --details

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 1 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.