Yum upgrade что делает
Перейти к содержимому

Yum upgrade что делает

  • автор:

yum upgrade

yum upgrade — аналог apt upgrade в Debian подобных системах, который используется на CentOS. Команда скачивает свежие версии всех пакетов и устанавливает их.

yum upgrade — обновление системы CentOS

Как при любом обновлении возможны непредвиденные последствия, которые могут возникнуть если программное обеспечение устанавливалось нестандартно. Например, собиралось из исходников. Или ставилось из сторонних репозиториев.

Перед любым обновлением нужно делать бэкапы и проверять их состояние.

Выполнения команды в общем случае достаточно. Какие-то пакеты при обновлении можно исключить. Например, пакеты ядра

Пример приведен на скриншоте:

yum upgrade

Флаг exclude со значением kernel добавляется если обновлять ядро не требуется, или если это невозможно (такое бывает при использовании виртуальных машин).

Можно добавлять к команде флаг —skip-broken

Все пакеты, которые нельзя обновить, будут пропускаться

Конфигурационный файл пакетного менеджера yum находится по пути /etc/yum.conf. Если обновление всегда требуется выполнять с исключениями — в файл можно включить нужную директиву

exclude=kernel*

Дополнительно эту опцию указывать при обновлении не потребуется.

Также в файле /etc/yum.conf задаются другие настройки пакетного менеджера.

yum upgrade exclude kernel

Например, в файле задан путь к логу. По умолчанию это /var/log/yum.log. В логе нужно искать информацию о том какие пакеты и когда устанавливались в систему или удалялись из неё. Это бывает нужно при поиске причин сбоев.

Обновления могут вести к сбоям и конфликтам в работе различного ПО. Перед любыми обновлениями желательно делать полные бэкапы системы.

Настроить перодическое резервное копирование системы и отдельных файлов можно с помощью планировщика CRON.

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

Yum (Yellow dog Updater, Modified) является открытым пакетным менеджером в Red Hat подобных системах. Был создан с целью облегчения процесса обновления системы с учетом взаимосвязей пакетов. Также, Yum осуществляет поиск RPM-пакетов в репозиториях, их установку, отслеживание зависимостей между пакетами, удаление не использующихся пакетов, а также даунгрейд (откат версии пакета до предыдущей).

По умолчанию управление менеджером выполняется через консоль, однако есть возможность установить дополнительные компоненты для работы через графический интерфейс (PackageKit).

Основные команды

Общий шаблон команд для работы с Yum:

yum [параметр] [команда] [имяпакета]

Установка пакета из репозитория

Для установки на VPS хостинг в систему какого-либо пакета используется следующая команда:

yum install packagename

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

yum install package1 package2 …

В результате выполнения этих команд, Yum произведет поиск пакета с указанным именем в существующих репозиториях, выведет информацию о доступной версии и список зависимостей, которые необходимы для работы.

Установка пакета из файла .rpm

Если вы скачали на сервер какой-либо пакет в виде .rpm файла то его можно установить средствами Yum при помощи вышеописанной команды install. Ранее для этого использовалась localinstall. Пример команды:

yum install package.rpm

В результате, будет произведен поиск зависимостей пакета package.rpm и вывод предложения их установить. В случае возникновения проблемы с GPG-подписью RPM пакета, можно использовать параметр —nogpgcheck , который позволяет обойти данную проверку и продолжить установку пакета.

Удаление пакета

Для того, чтобы удалить пакет из системы, можно использовать команду remove или erase:

yum remove packagename

Поиск пакета в репозиториях

Yum предполагает несколько вариантов поиска, который выполняется командами list, search, provides. Команда list является наиболее простым вариантом поиска. В этом случае производится поиск пакетов по названию.

yum list packagename

Команда search производит поиск в названии и описании пакета. Если, например, необходимо найти пакеты, которые имеют связь с vpn, то необходимо использовать команду:

yum search vpn

Команда provides производит поиск пакетов, которые содержат файл с указанным именем. Если, например, требуется найти пакеты, содержащие файл client, то необходимо использовать команду:

yum provides client

Обновление системы

Обновление можно выполнить как всей системы целиком, так и конкретного пакета. Для первого случая используется команда:

yum update
yum update packagename

Скачивание пакета без установки

Для того, чтобы просто скачать себе какой-либо пакет из репозитория, нужно использовать команду:

yumdownloader packagename

Вывод зависимостей пакета

Для просмотра зависимостей какого-либо пакета, используется команда:

yum deplist packagename

Yum upgrade что делает

Yum — очень мощный пакетный менеджер. Он умеет автоматически разрешать зависимости, а это делает установку пакета со множеством зависимостей тривиальной операцией. Yum также умеет искать и удалять пакеты, а также запрашивать различные списки.

В таблице ниже приводятся основные опции команды yum.

Вывод короткой справки

Включить режим игнорирования некритичных ошибок

Работать из кеша, не обновляя его

После этого ключа указывается альтернативный конфиг-файл

Максимальное время ожидания в минутах

Уровень отладочных сообщений

Уровень многословности сообщений об ошибках

Автоматически отвечать «yes» на все возникающие вопросы

Вывести версию yum

Указать корневой каталог установки, отличный от каталога по умолчанию (корневой)

Сделать доступным один или несколько дополнительных репозиториев (поддерживаются шаблоны)

Сделать недоступными один или несколько репозиториев (поддерживаются шаблоны)

Исключить пакет по имени или шаблону

Включить обработку возможностей, которые устанавливаемый пакет делает неактуальными

Отключить плагины yum

Отключить проверку подписи gpg

Отключить конкретный плагин по его имени

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

Поиск приложения
Yum будет проверять все доступные ему репозитории и сообщит, откуда он может загрузить пакет:

$ yum search package_name

Вывод списка доступных пакетов
Yum будет проверять все доступные ему репозитории и выведет список пакетов с указанием для каждого, откуда он может загрузить его:

$ yum list available

Получение информации о пакете

$ yum info package_name

Установка пакета
Эта операция выполняется от имени пользователя root:

# yum install package_name

Вывод списка установленных пакетов

$ yum list extras

Удаление пакета
Эта операция выполняется от имени пользователя root. Вы можете удалить пакет и все его зависимости. Если какое-либо приложение использует зависимости удаляемого пакета, они будут оставлены в системе:

# yum remove package_name

Обновление всей системы
Можно обновить всю систему без какой-либо необходимости ручного вмешательства:

Если нужно проверить наличие обновлений, тогда:

Установка локального пакета
Если пакет скачан, например, с сайта производителя и нужно установить и его зависимости:

# yum localinstall /path/to/the/rpm

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

url image

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 -qa gpg*

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

  • Создать файлик с расширением 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. Применяется для упорядочивания приоритетов репозиториев. Пакеты из репозитория с более низким приоритетом не будут обновлять пакеты, установленные из репозиториев, имеющих более высокий приоритет. Также приоритеты используются и при установке новых пакетов — в том случае, если пакет находится в двух или более репозиториях, он будет установлен из того репозитория, который имеет наивысший приоритет.

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

  • Доступные репозитории для CentOS — http://centos.name/?page/additionalresources/repositories

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

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