Вопрос или проблема
Как включить/выключить yum репозиторий (то есть установить enabled=0/1
в файлах /etc/yum.repo.d/*.repo
) используя dnf?
Согласно вопросу yum: включить отключенный репозиторий yum не может этого сделать.
Используемая система: Fedora 21
Включить репозиторий:
dnf config-manager --set-enabled <repo>
Выключить репозиторий:
dnf config-manager --set-disabled <repo>
Показать помощь:
dnf config-manager --help-cmd
Первые две команды следует запускать с правами суперпользователя.
Плагин DNF config-manager документация.
На версии 21 yum все еще является стандартным инструментом управления пакетами. Поэтому вы можете сделать одно из следующих:
1) yum-config-manager –save –disablerepo=foo (замените foo на reponame.repo)
2) sudo vi (или любой другой удобный редактор) /etc/yum.repos.d/foo.repo и измените строку enabled=0/1 и сохраните (хотя # yum clean all; #yum update не является обязательным, это обычно считается хорошей практикой)
dnf может сделать то же самое, но, как упоминалось выше, dnf не является стандартным до версии 22 (все еще в состоянии RC до 5 мая 2015) и имеет некоторые известные проблемы с fc21. Рассмотрите возможность использования yum-dnf-$arch в промежутке, а также возможные обходные пути / поддерживающие решения…
С Fedora 41: sudo dnf config-manager setopt <repo>.enabled=1
Ответ или решение
Да, возможно включать и отключать репозитории yum
, используя dnf
. Это можно сделать с помощью команды dnf config-manager
, которая является частью пакета dnf-plugins-core
. Давайте рассмотрим этот процесс подробнее.
Включение и отключение репозиториев с помощью dnf
Для управления состоянием репозиториев, вам нужно использовать следующие команды:
-
Включение репозитория:
sudo dnf config-manager --set-enabled <repo>
Где
<repo>
это имя репозитория, который вы хотите включить. Например, если ваш репозиторий называетсяepel
, команда будет выглядеть так:sudo dnf config-manager --set-enabled epel
-
Отключение репозитория:
sudo dnf config-manager --set-disabled <repo>
Аналогично, вы можете отключить репозиторий, например:
sudo dnf config-manager --set-disabled epel
Дополнительные возможности
Если вам нужно получить справку по команде config-manager
или узнать подробности о доступных параметрах, вы можете использовать следующую команду:
dnf config-manager --help-cmd
Ручное редактирование конфигурации
Если по каким-то причинам вы предпочитаете работать с конфигурационными файлами напрямую, это также возможно. Для этого:
-
Открывайте файл репозитория с помощью текстового редактора, например
vi
илиnano
:sudo vi /etc/yum.repos.d/foo.repo
-
Найдите строку, содержащую
enabled=0
илиenabled=1
, и измените ее значение на нужное. Сохраните изменения и выйдите из редактора.
Примечания
- Обратите внимание, что
dnf
стал стандартным пакетным менеджером начиная с Fedora 22. Если вы используете более раннюю версию, вам может потребоваться продолжать использоватьyum
для управления репозиториями. - В Fedora 21, где
yum
все еще является основным инструментом, для изменения состояния репозитория также можно использоватьyum-config-manager
или редактировать файлы конфигурации вручную, как упоминалось выше.
Заключение
Использование dnf
для управления репозиториями предоставляет более удобный и современный способ настройки системы. Важно помнить, что команды dnf
требуют прав суперпользователя, поэтому обязательно добавляйте sudo
, если вы не вошли в систему как root. Учитывайте, что поддержка различных версий Fedora может варьироваться, поэтому рекомендуется проверять документацию для вашей конкретной версии операционной системы.