dnf вместо yum в CentOS 7

Начиная с Fedora 22, в качестве менеджера пакетов, вместо yum, начал использоваться dnf. И ясно, что совсем скоро мы увидим его в CentOS и в RedHat. Менеджер давно работает стабильно, и нет ни каких причин, к тому, что бы не заменить на него устаревший yum.

Давайте поглядим, в чем преимущества над yum:

  1. Более качественно разрешает зависимости;
  2. Работает быстрее и кушает меньше памяти;
  3. Может работать, как с Python 2 так и с Python 3. Следовательно можно отказаться от 2 версии и использовать Python 3 по умолчанию;
  4. Синтаксис совместим с yum, переучиваться не придётся.

По сути достаточно уже первых двух пунктов. Давайте устанавливать.

Установка dnf

Сначала нам понадобиться репозиторий EPEL:

Затем собственно ставим сам менеджер пакетов:

На это по вроде как бы все, можно было бы начать пользоваться, но неожиданно полезли ошибки. Так что переходим ко второй части :).

Решаем проблемы

Собственно, если сразу после установки запустить менеджер, получим ошибку — что то типа:

Очевидно репозиторий epel не пришелся ко двору.
Удаляем, проверяем:

Чистим кеш:

Проверяем:

Отлично, все заработало! Но как жить без epel и remi?
Покопавшись на багтрекере обнаружилось, что проблема имеет место быть и находиться в стадии решения. Всему виной библиотека libsolv. Текущая версия в epel 0.6.11-1, для корректной работы требуется минимально 14 версия. Такая обнаружилась тут — http://koji.fedoraproject.org/koji/buildinfo?buildID=704417. Ставим:

Проверяем:

Теперь все работает.

Один комментарий
Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *