Алексей Федорчук
Практическое использование yum
начнём с субкоманды list
— можно было бы и с любой другой, но это показалось мне логичней: ведь прежде чем заняться каким-либо манипулированием пакетами, не худо узнать, какие пакеты вообще имеются, какие из них установлены, какие — доступны.
Как уже говорилось, субкоманда list
предназначена для вывода списков пакетов. В «чистом» виде — как
$ yum list
она «огласит, пожалуйста, весь список» пакетов — установленных и доступных из подлючённых репозиториев.
Сначала пойдут установленные пакеты:
Installed Packages BlockOutII.x86_64 2.3-6.fc11 installed ... DeviceKit-disks.x86_64 004-4.fc11 @updates 2.3-6.fc11 installed ... NetworkManager.x86_64 1:0.7.1-8.git20090708.fc11 @updates-testing 2.3-6.fc11 installed ... VirtualBox-OSE.x86_64 3.0.2-2.fc11 @rpmfusion-free-updates 2.3-6.fc11 installed ... anaconda.x86_64 11.5.0.59-8rfr @russianfedora-fixes 2.3-6.fc11 installed ... autoconf.noarch 2.63-2.fc11 @fedora 2.3-6.fc11 installed ...
и так далее.
В первой колонке можно видеть полное имя пакета с указанием архитектуры, во второй — номер его версии, субверсии и сборки, а также имени и версии целевого дистрибутива (в нашем примере это fc11
— официальная сборка проекта Fedora или rfr
— Russian Fedora Remix). Третья колонка фиксирует статус пакета — был ли он инсталлирован при первичной установке системы (installed
) или обновлён из того или иного репозитория (имя которого хдесь и указано).
Для доступных пакетов содержание первых двух колонок то же самое, а в третьей колонке приводится название репозитория, из которого пакет будет получен при установке:
Available Packages 0xFFFF.x86_64 0.3.9-3.fc11 fedora 389-adminutil.i586 1.1.8-2.fc11 updates ... 3proxy.x86_64 0.6-2.fc11 russianfedora-free ... AcetoneISO.x86_64 6.7-6.fc11 fedora ... BasiliskII.x86_64 1.0-0.20060501.3.fc11.1 rpmfusion-free ...
Разбираться в этом изобилии пакетов (например, при моей конфигурации репозиториев их оказывается более 19 тысяч) трудно, да и не нужно. Потому что специально для этой субкоманды придуманы дополнительные опции-фильтры. Первый из них — all
— равносилен отсутствию фильтра вообще, выводя всё тот же полный список пакетов.
Далее, последством
$ yum list installed
можно просмотреть список только установленных пакетов (их оказывается несколько меньше, всего 1185), с помощью
$ yum list available
— список только доступных, а команда
# yum list updates
— пакетов, для которых доступны обновления.
Следующая команда —
# yum list obsoletes
выведет списко пакетов, наличествующих в системе, но удалённых из доступных репозиториев ввиду их устаревания. В их числе, скорее всего, окажутся версии или сборки старых ядер.
А вот команда
# yum list extras
даст имена тех пакетов, которые наличествуют в системе, но которыми в репозиториях и не пахло, то есть установленные «в лоб», например, через
# rpm -ihv path2/pkgname-X.Y.rpm
В моей системе таковым является Opera-Unite.
Для всех перечисленных опций можно указать аргументы — имена пакетов или маски имён. Например
# yum list installed yum*
или
# yum list available yum*
для установленных или доступных пакетов, соответственно.
А вот команда
# yum list recent
не нуждаясь в аргументах, выдаст на гора список пакетов, недавно добавленных в репозитории. Какие пакеты считать недавними — определяется в конфиге yum, по умолчанию устанавливается недельный срок новизны.
Более продвинутые возможности фильтрации команде yum
обеспечивает плагин yum-plugin-list-data
, о котором речь пойдёт в очередной заметке.
Опечатка:
«был ли он инсталлирован при первичной установке системы (installed) или обновлён (available) из того или иного репозитория.» available — не обновлен, а доступен.