url image

Менеджер пакетов YUM

Статья давно не обновлялась, поэтому информация могла устареть.


Yellow dog Updater, Modified (YUM) — открытый консольный менеджер RPM-пакетов. Позволяет облегчить каскадное обновление Linux систем с отслеживанием взаимосвязей RPM-пакетов.

Используется, как правило в RedHat-подобных операционных системах (CentOS, Fedora Linux).

В данной статье будут рассматриваться решения проблем с ним и частые вопросы по его использованию.

Содержание

yum install выдает ошибку can't start new thread при запуске

При запуске yum install somepackagename (или другого действия) выдается ошибка

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Traceback (most recent call last):
File "/usr/lib/python2.4/threading.py", line 416, in start
_start_new_thread(self.__bootstrap, ())
thread.error: can't start new thread

Ошибка вызвана нехваткой оперативной памяти. Освободите оперативную память/увеличьте тариф или попробуйте отключить использование плагинов прописав в /etc/yum.conf пропишите

plugins=0

вместо

plugins=1

 

Примеры использования менеджера пакетов Yum

  • yum list - вывести список всех пакетов, как установленных, так и доступных из репозиториев
  • yum list kernel* - список всех пакетов, начинающихся со слова kernel
  • yum search keyword - поискать пакеты, в описаниях которых содержится ключевое слово keyword
  • yum info kernel-smp - выдать информацию о пакете с названием kernel-smp
  • yum check-update - проверить наличие обновлений в репозиториях
  • yum check-update clamav - проверить наличие обновления пакета clamav
  • yum update - проверить наличие обновлений и если есть свежие версии, то обновить
  • yum update firefox - обновить firefox и все зависимые пакеты, если есть свежие версии
  • yum install package-1 - установить пакет package-1 из репозитория (при наличии зависимостей также установить и необходимые пакеты)
  • yum remove package-1 - удалить пакет, а также зависимые от него пакеты
  • yum grouplist - список групп пакетов
  • yum groupinstall "Group Name" - установить все пакеты из группы "Group Name"
  • yum repolist - список доступных репозиториев

Как добавить репозиторий

1. Способ первый

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

rpm --import https://xxxxxxxx.txt

проверить корректность импорта можно так:

rpm -qa gpg*

Установить репозиторий:

rpm -Uvh http://xxxxxxxxxxxxx.rpm

Если команда выдает ошибку, то значит уже выпущена новая версия пакета.

2. Способ второй
  • Создать файлик с расширением repo в директории /etc/yum.repos.d/ и прописать в нем данные в таком формате:
[название репозитория]
name=описание репозитория;
baseurl=url репозитория. Формат:
http://www.mydomain.org/myrepo
ftp://ftp.mydomain.org/myrepo
file:///path_to_my_repo
enabled=включен/отключен(1 или 0)
gpgcheck=проверка GPG-подписи пакетов (1 или 0)
gpgkey=путь к ключу GPG

Рекомендуется еще установить и настроить плагин yum-priorities. Применяется для упорядочивания приоритетов репозиториев. Пакеты из репозитория с более низким приоритетом не будут обновлять пакеты, установленные из репозиториев, имеющих более высокий приоритет. Также приоритеты используются и при установке новых пакетов - в том случае, если пакет находится в двух или более репозиториях, он будет установлен из того репозитория, который имеет наивысший приоритет.

Полезные ссылки

Этот материал был полезен?