Qual é o oposto do yum?

0

yum provides <command> informa o que o pacote fornece, por exemplo, /usr/bin/python .

Mas como descobrir quais comandos são fornecidos por um determinado pacote?

    
por Wayne Werner 05.01.2016 / 19:24

3 respostas

3

But how do I find out what commands are provided by a certain package?

Não há nada como "comandos" no Linux. Se você está interessado no que arquivos o pacote oferece, existe rpm :

rpm -ql package_name

E você encontrará seus executáveis aka "comandos" geralmente sob /usr/bin/ caminho.

    
por 05.01.2016 / 19:31
1

Em yum , o termo "fornece" pode se referir a arquivos ou recursos . Para rastreamento de dependência, o último é de maior interesse.

Recursos em yum (e seu sucessor dnf ) incluem

  • nomes listados nas tags Requires em um arquivo de especificações de RPM
  • dependências encontradas automaticamente por rpmbuild .

Ambos podem ser listados para um determinado pacote usando a opção de consulta -R , por exemplo,

rpm -qR ncurses

(no Fedora23) dá

libc.so.6()(64bit)
libc.so.6(GLIBC_2.14)(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libc.so.6(GLIBC_2.3)(64bit)
libc.so.6(GLIBC_2.3.4)(64bit)
libc.so.6(GLIBC_2.4)(64bit)
libtic.so.5()(64bit)
libtinfo.so.5()(64bit)
ncurses-libs(x86-64) = 5.9-21.20150214.fc23
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
rtld(GNU_HASH)

Por outro lado, se você quisesse encontrar os nomes de caminho de programas (arquivos executáveis) em um determinado pacote, você poderia usar a opção --dump de rpm (não fornecida ou análoga para qualquer coisa em yum , embora algum uso possa ser feito de repoquery ):

    rpm -q --dump ncurses | awk '( $5 ~ /^010.*[1357]{3,3}$/ ) { print $1; }'

produzindo

/usr/bin/clear
/usr/bin/infocmp
/usr/bin/tabs
/usr/bin/tic
/usr/bin/toe
/usr/bin/tput
/usr/bin/tset

O padrão usado aqui permite arquivos regulares setuid / setgid e exclui links simbólicos (e diretórios).

Para referência:

por 06.01.2016 / 01:20
-2

A pesquisa simples no google teria retornado isso para você:

yum whatprovides [path_to_file]

exemplo

yum whatprovides /usr/bin/mogrify
    
por 05.01.2016 / 19:32

Tags