Почему вы можете установить один и тот же пакет под разными именами с помощью Yum - PullRequest
1 голос
/ 20 декабря 2011

На Centos 6 я могу сделать

# yum install webserver

или

# yum install httpd

И обе команды установят httpd (apache)

Я строю RPM, и я не знаю, какой из них мне следует использовать или почему они разные. У пакетов есть «общее» имя, по которому вы можете обращаться к ним? Например, если у вас установлен lighttpd, он может предоставить пакет веб-сервера?

1 Ответ

1 голос
/ 21 декабря 2011

RPM обеспечивает много вещей.Будь то ссылки на нативные библиотеки, модули Perl и т. Д. Все они рассчитываются во время сборки RPM.

Но вы также можете сами указать вещи в файле спецификации (файле, используемом для сборки RPM), например:

Provides: blablabla

Таким образом, это означает, что пакет httpd содержит:

Provides: webserver

в своем файле спецификаций.

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

rpm -q --provides pkgnamehere

Но вы также можете спросить, какой пакет что-то предоставляет:

rpm -q --whatprovides theprovidedname

Наконец, вы можете спросить yum о том, что обеспечивает:

yum whatprovides webserver
yum whatprovides grep
yum whatprovides /usr/bin/find
# etc etc
...