Есть ли способ поиска пакета с использованием двоичного имени.
например, я хочу найти пакет rpm для команды " ls
", тогда это должно быть coreutils-6.9-10.4.i586
например.
Команда yum "whatprovides" принимает подстановочные знаки. Если вы ищете пакет, который предоставляет определенный файл или исполняемый файл и не знает его полного пути, используйте «yum whatprovides */filename».
$ yum whatprovides */ls
coreutils-5.97-23.el5_4.2.x86_64 : The GNU core utilities: a set of tools
: commonly used in shell scripts
Repo : installed
Matched from:
Filename : /bin/ls
yum provides /bin/ls
repoquery -f /bin/ls
... будет оба dtrt. Также последние версии "yum" автоматически выполнят ряд файловых поисков, если вы сделаете:
yum provides ls
Кажется, это делает scout bin ls
. Этот инструмент может индексировать различные типы репозиториев (не только rpm, но и java и т.д.) И узнать, что вам нужно установить, чтобы получить требуемый двоичный файл /command /javaclass /feature. Хорошо интегрируется с suse.
Вы можете прочитать больше о скауте здесь.
Команда 'rpm -qf' должна указать вам, какому пакету принадлежит любой установленный файл.
> whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.g
> rpm -qf /bin/ls
coreutils-5.97-23.el5_6.4