В этом коротком уроке мы узнаем, как получить информацию о пакете с yum.
Это включает в себя использование функции yum кэширования для ускорения нашего поиска, список доступных пакетов и список установленных пакетов, запросов репозитарии пакетов и получить информацию о пакетах.
Этот учебник относится к дистрибутивам Linux, которые используют менеджера пакетов yum, который включает в себя не только CentOS и RedHat, но и старых дистрибутивов Fedora.
Прежде чем мы начнем, полезно обновить нашу базу данных кэша yum с последней информации о пакете. Эта команда будет обновлять базу данных кэша из включенных в настоящее время репозиториев yum в нашей системе, и это особенно полезно, так как yum не обновляет информацию каждый раз, когда мы хотим что-то установить или запросить пакет для информации.
# yum makecache base | 3.6 kB 00:00:00 epel/x86_64/metalink | 14 kB 00:00:00 epel | 4.3 kB 00:00:00 extras | 3.4 kB 00:00:00 updates | 3.4 kB 00:00:00 webtatic | 3.6 kB 00:00:00 (1/14): base/7/x86_64/other_db | 2.4 MB 00:00:00 (2/14): epel/x86_64/filelists_db | 7.5 MB 00:00:00 (3/14): epel/x86_64/updateinfo | 728 kB 00:00:00 (4/14): epel/x86_64/primary_db | 4.5 MB 00:00:00 (5/14): updates/7/x86_64/filelists_db | 1.5 MB 00:00:00 (6/14): updates/7/x86_64/prestodelta | 285 kB 00:00:00 (7/14): updates/7/x86_64/primary_db | 2.2 MB 00:00:00 (8/14): epel/x86_64/other_db | 2.0 MB 00:00:00 (9/14): extras/7/x86_64/prestodelta | 101 kB 00:00:00 (10/14): extras/7/x86_64/filelists_db | 423 kB 00:00:00 (11/14): updates/7/x86_64/other_db | 24 MB 00:00:00 (12/14): extras/7/x86_64/other_db | 423 kB 00:00:00 (13/14): webtatic/x86_64/filelists_db | 89 kB 00:00:00 (14/14): webtatic/x86_64/other_db | 65 kB 00:00:00 Metadata Cache Created
На выходе, мы можем видеть, что разрешенные репозитории в нашей системе являются базовыми, EPEL, дополнения, обновления и хранилища webtatic.
Представьте себе, что вы подключились к серверу, и вам необходимо выяснить, что там установлено. Вы можете получить список всех установленных пакетов с yum с помощью:
# yum list installed
Выводом должен быть длинный список пакетов. Это не очень полезно для нас, если мы не готовим внутреннюю документацию для справочных целей. Так что давайте идти дальше и отфильтруем немного результаты. Мы хотели бы узнать, все PHP-пакеты.
# yum list installed | grep php php71w-cli.x86_64 7.1.0-1.w7 @webtatic php71w-common.x86_64 7.1.0-1.w7 @webtatic php71w-devel.x86_64 7.1.0-1.w7 @webtatic php71w-fpm.x86_64 7.1.0-1.w7 @webtatic php71w-gd.x86_64 7.1.0-1.w7 @webtatic php71w-imap.x86_64 7.1.0-1.w7 @webtatic php71w-mbstring.x86_64 7.1.0-1.w7 @webtatic php71w-mcrypt.x86_64 7.1.0-1.w7 @webtatic php71w-mysql.x86_64 7.1.0-1.w7 @webtatic php71w-pdo.x86_64 7.1.0-1.w7 @webtatic php71w-pear.noarch 1:1.10.1-1.w7 @webtatic php71w-pecl-apcu.x86_64 5.1.7-1.w7 @webtatic php71w-pecl-apcu-devel.x86_64 5.1.7-1.w7 @webtatic php71w-pecl-mongodb.x86_64 1.2.1-1.w7 @webtatic php71w-process.x86_64 7.1.0-1.w7 @webtatic php71w-snmp.x86_64 7.1.0-1.w7 @webtatic php71w-xml.x86_64 7.1.0-1.w7 @webtatic
Это намного лучше, и это позволит нам увидеть все php*
пакеты в нашей системе. Вывод выше выглядит следующим образом. Первый столбец это имя пакета. Второй столбец является версией пакета и третий столбец является хранилище, откуда был установлен пакет.
Теперь давайте установим некоторые дополнительные модули PHP. Мы уже знаем, что наша система использует php7
, так что нам нужно будет искать для php7*
доступные модули.
# yum search php7 isp-php70.x86_64 : PHP scripting language for creating dynamic web sites isp-php70-fpm.x86_64 : Fpm service isp-php70-mod-apache.x86_64 : Apache module isp-php71.x86_64 : PHP scripting language for creating dynamic web sites isp-php71-fpm.x86_64 : Fpm service isp-php71-mod-apache.x86_64 : Apache module
Теперь давайте узнаем, как мы можем получить некоторую информацию о пакете. Это подразумевает установлены и еще не установлены пакеты.
Давайте представим, что один из ваших коллег (без прав администратора) просит вас установить lynx и mc для него. Теперь вы, вероятно, говорите, что вам лень просматривать все пакеты в браузере.
# yum info lynx Available Packages Name : lynx Arch : x86_64 Version : 2.8.8 Release : 0.3.dev15.el7 Size : 1.4 M Repo : base/7/x86_64 Summary : A text-based Web browser URL : http://lynx.isc.org/ License : GPLv2 Description : Lynx is a text-based Web browser. Lynx does not display any images, : but it does support frames, tables, and most other HTML tags. One : advantage Lynx has over graphical browsers is speed; Lynx starts and : exits quickly and swiftly displays web pages. # yum info mc Installed Packages Name : mc Arch : x86_64 Epoch : 1 Version : 4.8.7 Release : 11.el7 Size : 5.6 M Repo : installed From repo : base Summary : User-friendly text console file manager and visual shell URL : http://www.midnight-commander.org/ License : GPLv3+ Description : Midnight Commander is a visual shell much like a file manager, only : with many more features. It is a text mode application, but it also : includes mouse support. Midnight Commander's best features are its : ability to FTP, view tar and zip files, and to poke into RPMs for : specific files.
На выходе мы можем сказать, что lynx
это веб — браузер на основе терминала, и mc
является удобным файловым менеджером на основе терминала (Похож на Norton Commander или FAR Manager).
После того как мы закончили работу, полезно очистить любые нежелательные файлы кэша. Эти файлы сохраняются в папке /var/cache/yum
и создаются с помощью команды yum makecache
. Чтобы очистить кэш просто запустите:
yum clean all