Как работает YUM
Файл конфигурации для Yum хранится в /так далее/ каталог, файл с именем ням.conf. Этот файл можно настроить и настроить в соответствии с определенными потребностями системы. Ниже приведен образец содержания ням.conf файл:
[основной]cachedir = / var / cache / yum / $ basearch / $ releasever
keepcache = 0
debuglevel = 2
файл журнала = / var / log / yum.бревно
точныйарх = 1
устаревшие = 1
gpgcheck = 1
плагины = 1
installonly_limit = 5
Этот файл конфигурации может отличаться от того, что вы можете получить на своем компьютере, но синтаксис конфигурации следует тем же правилам. Репозиторий пакетов, которые можно установить с помощью Yum, обычно сохраняется в папке / etc / yum.РЕПО.d / каталог, с каждым *.репо файл в каталоге, служащем репозиториями различных пакетов, которые могут быть установлены.
На изображении ниже показана структура базового репозитория CentOS:
YUM работает по шаблону, аналогичному всем командам Linux, используя структуру ниже:
yum [параметры] КОМАНДАС помощью приведенной выше команды вы можете выполнять все необходимые задачи с YUM. Вы можете получить справку о том, как использовать YUM с параметром -help:
ням - помощьВы должны получить список команд и параметров, которые можно запускать в YUM, как показано на изображениях ниже:
Список команд
Список опций
В оставшейся части этой статьи мы будем выполнять несколько задач с помощью Yum. Мы будем запрашивать, устанавливать, обновлять и удалять пакеты.
Запрос пакетов с помощью YUM
Допустим, вы только что устроились системным администратором Linux в компании, и ваша первая задача - установить пару пакетов, которые упростят ваши задачи, например, nmap, top и т. Д.
Чтобы продолжить, вам нужно знать о пакетах и о том, насколько они подходят для нужд компьютера.
Задача 1. Получение информации о пакете
Чтобы получить информацию о пакете, такую как версия пакета, размер, описание и т. Д., Вам необходимо использовать Информация команда.
yum info имя-пакетаВ качестве примера приведенная ниже команда предоставит информацию о пакете httpd:
ням информация httpdНиже приведен фрагмент результата выполнения команды:
Имя: httpdАрка: x86_64
Версия: 2.4.6
Релиз: 80.el7.Centos.1
Задача 2: поиск существующих пакетов
Не во всех случаях вы можете знать точное название пакета. Иногда все, что вам нужно знать, - это ключевое слово, связанное с пакетом. В этих сценариях вы можете легко искать пакеты с этим ключевым словом в имени или описании, используя поиск команда.
ням поисковое ключевое словоКоманда ниже предоставит список пакетов, в которых есть ключевое слово «nginx».
ням поиск nginxНиже приведен фрагмент результата выполнения команды:
collectd-nginx.x86_64: плагин Nginx для collectdmunin-nginx.noarch: поддержка NGINX для мониторинга ресурсов Munin
nextcloud-nginx.noarch: интеграция Nginx для NextCloud
nginx-все-модули.noarch: мета-пакет, который устанавливает все доступные модули Nginx
Задача 3: запрос списка пакетов
Существует множество пакетов, которые установлены или доступны для установки на компьютер. В некоторых случаях вы хотели бы увидеть список этих пакетов, чтобы знать, какие пакеты доступны для установки.
Существует три варианта листинга пакетов, которые будут указаны ниже:
список yum установлен: перечисляет пакеты, установленные на машине.
список вкусняшек доступен: перечисляет все пакеты, доступные для установки из включенных репозиториев.
ням список всех: перечисляет все установленные и доступные пакеты.
Задача 4: Получение зависимостей пакетов
Пакеты редко устанавливаются как отдельные инструменты, у них есть зависимости, которые необходимы для их функциональности. С помощью Yum вы можете получить список зависимостей пакета с деплист команда.
yum deplist имя-пакетаВ качестве примера приведенная ниже команда извлекает список зависимостей httpd:
yum deplist httpdНиже приведен фрагмент результата:
пакет: httpd.x86_64 2.4.6-80.el7.Centos.1зависимость: / bin / sh
провайдер: bash.x86_64 4.2.46-30.el7
зависимость: / etc / mime.типы
провайдер: mailcap.noarch 2.1.41-2.el7
зависимость: / usr / sbin / groupadd
поставщик: shadow-utils.x86_64 2: 4.1.5.1-24.el7
Задача 6: Получение информации о группах пакетов
В этой статье мы рассмотрели пакеты. На этом этапе будут представлены группы пакетов.
Группы пакетов - это набор пакетов для общего назначения. Поэтому, если вы хотите, например, настроить системные инструменты вашего компьютера, вам не нужно устанавливать пакеты отдельно. Вы можете установить их все сразу как группу пакетов.
Вы можете получить информацию о группе пакетов, используя groupinfo команда и заключить имя группы в кавычки.
yum groupinfo "имя-группы"Команда ниже получит информацию о группе пакетов «Emacs».
yum groupinfo "Emacs"Вот информация:
Группа: EmacsИдентификатор группы: emacs
Описание: расширяемый, настраиваемый текстовый редактор GNU Emacs.
Обязательные пакеты:
= emacs
Дополнительные пакеты:
ctags-etags
emacs-auctex
emacs-gnuplot
emacs-nox
emacs-php-режим
Задача 7: Список доступных групп пакетов
В приведенной выше задаче мы попытались получить информацию о пакете «Emacs». Однако с групповщик , вы можете получить список доступных групп пакетов для установки.
yum grouplistВ приведенной выше команде будут перечислены доступные группы пакетов. Однако некоторые пакеты не будут отображаться из-за их скрытого статуса. Чтобы получить список всех групп пакетов, включая скрытые, вы добавляете скрытый команда, как показано ниже:
yum grouplist скрытУстановка пакетов с помощью YUM
Мы рассмотрели, как можно запрашивать пакеты с помощью Yum. Как системный администратор Linux вы будете делать больше, чем запрашивать пакеты, вы должны их устанавливать.
Задача 8: Установка пакетов
Как только у вас будет имя пакета, который вы хотите установить, вы можете установить его с помощью установить команда.
yum install имя-пакетаПример:
ням установить nginxЗадача 9: Установка пакетов из .файлы rpm
Хотя вам необходимо установить большинство пакетов из репозитория, в некоторых случаях вам будет предоставлен *.rpm файлы для установки. Это можно сделать с помощью localinstall команда. Команду localinstall можно использовать для установки *.rpm файлы доступны либо на машине, либо в каком-либо внешнем репозитории для доступа по ссылке.
yum localinstall имя-файла.об / минЗадача 10: переустановка пакетов
При работе с файлами конфигурации могут возникать ошибки, из-за которых пакеты и их файлы конфигурации оказываются испорченными. В установить Команда может исправить беспорядок. Однако, если в репозитории есть новая версия пакета, это будет та версия, которую нужно установить, а это не то, что мы хотим.
С переустановить команда, мы можем повторно установить текущую версию пакетов независимо от последней версии, доступной в репозитории.
yum переустановить имя-пакетаЗадача 11: Установка групп пакетов
Ранее мы изучали группы пакетов и способы их запроса. Теперь посмотрим, как их установить. Группы пакетов можно установить с помощью groupinstall команда и название группы пакетов в кавычках.
yum groupinstall "имя-группы"Обновление пакетов с помощью YUM
Ключевым моментом является обновление ваших пакетов. Новые версии пакетов часто содержат исправления безопасности, новые функции, функции, поддержка которых прекращена, и т. Д., Поэтому важно постоянно обновлять ваш компьютер.
Задача 12: Получение информации об обновлениях пакетов
Как системный администратор Linux, обновления будут очень важны для поддержания системы. Поэтому необходимо постоянно проверять наличие обновлений пакетов. Вы можете проверить наличие обновлений с помощью обновить информацию команда.
ням updateinfoСуществует множество возможных комбинаций команд, которые можно использовать с обновить информацию. Однако мы будем использовать только список установлен команда.
yum updateinfo list установленФрагмент результата можно увидеть ниже:
Исправление ошибки FEDORA-EPEL-2017-6667e7ab29 epel-release-7-11.НоархИсправление ошибки FEDORA-EPEL-2016-0cc27c9cac lz4-1.7.3-1.el7.x86_64
FEDORA-EPEL-2015-0977 Нет / сек. novnc-0.5.1-2.el7.Ноарх
Задача 13: Обновление всех пакетов
Обновлять пакеты так же просто, как использовать Обновить команда. С помощью Обновить одна только команда обновит все пакеты, но добавление имени пакета обновит только указанный пакет.
ням обновление : обновить все пакеты в операционной системе
ням обновить httpd : обновить только пакет httpd.
В то время как Обновить команда обновится до последней версии пакета, она оставит устаревшие файлы, которые новой версии больше не нужны.
Чтобы удалить устаревшие пакеты, мы используем Обновить команда.
ням апгрейд : обновить все пакеты в операционной системе и удалить устаревшие пакеты.
В Обновить команда опасна, так как она удалит устаревшие пакеты, даже если вы используете их для других целей.
Задача 14: переход на более раннюю версию пакетов
Хотя важно быть в курсе последних обновлений пакетов, обновления могут содержать ошибки. Поэтому в случае, если обновление содержит ошибки, его можно понизить до предыдущей версии, которая была стабильной. Переход на более раннюю версию осуществляется с помощью понизить рейтинг команда.
yum downgrade имя-пакетаУдаление пакетов с помощью YUM
Системный администратор Linux должен управлять ресурсами. Таким образом, хотя пакеты устанавливаются для определенных целей, их следует удалять, когда они больше не нужны.
Задача 15: Удаление пакетов
В Удалить команда используется для удаления пакетов. Просто добавьте имя удаляемого пакета, и он будет удален.
yum удалить имя-пакетаХотя приведенная выше команда удалит пакеты, она оставит зависимости. Чтобы также удалить зависимости, автоудаление команда используется. Это удалит зависимости, файлы конфигурации и т. Д.
yum autoremove имя-пакетаЗадача 15: Удаление групп пакетов
Ранее мы говорили об установке групп пакетов. Было бы утомительно начинать удалять пакеты по отдельности, когда они больше не нужны. Поэтому мы удаляем группу пакетов с группа удалить команда.
yum groupremove "имя-группы"Заключение
Команды, обсуждаемые в этой статье, - это лишь небольшая демонстрация возможностей Yum. Есть много других задач, которые можно выполнить с помощью YUM, которые вы можете проверить на официальной веб-странице RHEL. Тем не менее, команды, которые обсуждались в этой статье, должны помочь любому начать выполнять обычные задачи системного администрирования Linux.