Por que usar rpm se houver yum?

11

Como sabemos, o yum é um sistema de gerenciamento de pacotes que foi construído sobre o rpm. Também é um utilitário de linha de comando que é uma versão mais ampla (rudemente falando) do rpm, resolve muitos problemas (o principal é obviamente dependências) dos quais o rpm não se importa. Existe algum caso específico em que usar o comando rpm seria mais apropriado que o yum?

Sergey
fonte

Respostas:

11

rpmé usado para interagir com o banco de dados RPM no seu computador. Assim, você pode observar o estado atual do banco de dados, verificar pacotes, verificar as dependências do software instalado etc.

yumusa rpm(na verdade, ele usa uma biblioteca python rpm) para grande parte de suas operações locais, mas só pode executar um número limitado de funções que o rpmcomando pode executar, relacionadas apenas à instalação, atualização e remoção de software. yumtambém pode conversar com repositórios de software locais e remotos e gerar gráficos de dependência para gerenciar pacotes de software, o que rpmnão é possível.

jsbillings
fonte
4

rpmfaz um monte de coisas, apenas algumas das quais são suplantadas por yum. Por exemplo, verificando os pacotes instalados ( --verify). Compare as páginas de manual yume rpm.

jmtd
fonte
1
Existe um comando "yum verificar", embora esteja em um plugin.
12138 James Antill
2

Nas versões mais recentes do yum, o rpmdb não é a única coisa que é alterada pelas transações (instalação ou remoção de pacotes); portanto, é ativamente prejudicial ficar atrás do yum e usar o rpm diretamente para fazer isso ... e o yum se queixará de você, Se você fizer isso.

A única coisa que vem à mente que o rpm pode fazer e o yum não pode fazer é assinar pacotes (rpm -K) ... mas algumas operações podem ser um pouco mais rápidas, e obviamente existem coisas que as pessoas lembram melhor / mais facilmente.

James Antill
fonte
2

O outro caso "apropriado" é quando você está tentando instalar / compilar o código-fonte e não deseja usar (ou não possui) privilégios de root.

Como usuário comum, você não tem permissão para usar o yum para instalação, enquanto pode usar o rpm para instalar o source-rpms no diretório rpm-build-build local.

Nils
fonte
0

Existem casos em que você usa o rpm primeiro, para executar algumas coisas preliminares, antes do yum. Um bom exemplo é o MySQL .

(1) rpm -iv mysql-community-release-el6-5.noarch.rpm

Neste ponto, o repositório mysql / yum está pronto e você pode começar a confiar no yum apenas para obter o mysql principal e o restante dos pacotes opcionais:

(2) yum install mysql-community-server

Veja detalhes:

http://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/index.html

Travis Banger
fonte