Diferença entre yum update vs yum install

Ao trabalhar com o comando rpm, percebi que se instalei some-package-1.0 e, em seguida, executei outro rpm -ivh some-package-1.1 ambos os pacotes serão listados quando eu fizer um rpm -qa | grep some-package como o seguinte :

some-package-1.0 some-package-1.1 

No entanto, em vez de instalar o 1.1, se eu atualizar por meio do rpm -Uvh some-package-1.1, obtenho o resultado desejado de um pacote único (1.1) quando eu faço rpm -qa | grep some-package.

Agora, o mesmo comportamento se aplica a yum install e yum update?

Eu pergunto porque com o comando rpm -U (atualizar) um pacote não precisa existir para atualizar / instalar, mas com yum update (se não me engano) um pacote já deve existir.

Estou particularmente interessado em saber o resultado da especificação de pacotes com seus versões como some-package-1.0. Resumindo, o que quero saber é se tenho duas versões específicas, como some-package-1.0 e some-package-1.1:

  1. Executando um yum install no 1.1 depois que o 1.0 já está instalado, listará 2 pacotes?
  2. Executará yum update some-package-1.1 substituiu com sucesso some-package-1.0?

Resposta

O principal as diferenças entre o YUM e o RPM são que yum sabe como resolver dependências e pode fornecer esses pacotes adicionais ao fazer seu trabalho. Embora rpm possa alertá-lo sobre essas dependências, ele não pode fornecer pacotes adicionais.

Quanto à instalação versus atualização. Ambas as ferramentas podem executar uma instalação, e o RPM permitirá até que você instale várias versões simultaneamente, mas o YUM informará que o pacote já está instalado. Portanto, nenhum YUM não permitirá que você instale várias versões.

Quanto a yum update, isso vai reagir de duas maneiras. Se você informar um pacote que deseja atualizar, ele tentará fazer isso, baixando todas as dependências necessárias e instalando-as também. Se você executá-lo sem nenhum nome de pacote, yum update tentará atualizar todos os pacotes instalados em seu sistema.

Se você usar yum upgrade fará o mesmo que yum update, exceto que tentará remover quaisquer pacotes que tenham sido marcados como “obsoletos”.

Exemplo

Aqui está um cenário não muito diferente do seu. Uma nova versão de vim-X11 está disponível.

$ yum check-update vim-X11 | expand Loaded plugins: auto-update-debuginfo, changelog, langpacks, refresh-packagekit vim-X11.x86_64 2:7.4.417-1.fc19 updates 

E estou atualmente nesta versão:

$ rpm -q vim-X11 | expand vim-X11-7.4.179-1.fc19.x86_64 

Quando tentamos instalá-lo:

$ sudo yum install vim-X11 ... ================================================================================================================================================================= Package Arch Version Repository Size ================================================================================================================================================================= Updating: vim-X11 x86_64 2:7.4.417-1.fc19 updates 1.2 M Updating for dependencies: vim-common x86_64 2:7.4.417-1.fc19 updates 5.9 M vim-enhanced x86_64 2:7.4.417-1.fc19 updates 1.0 M .... Running transaction Updating : 2:vim-common-7.4.417-1.fc19.x86_64 1/6 Updating : 2:vim-enhanced-7.4.417-1.fc19.x86_64 2/6 Updating : 2:vim-X11-7.4.417-1.fc19.x86_64 3/6 Cleanup : 2:vim-X11-7.4.179-1.fc19.x86_64 4/6 Cleanup : 2:vim-enhanced-7.4.179-1.fc19.x86_64 5/6 Cleanup : 2:vim-common-7.4.179-1.fc19.x86_64 6/6 Verifying : 2:vim-enhanced-7.4.417-1.fc19.x86_64 1/6 Verifying : 2:vim-X11-7.4.417-1.fc19.x86_64 2/6 Verifying : 2:vim-common-7.4.417-1.fc19.x86_64 3/6 Verifying : 2:vim-enhanced-7.4.179-1.fc19.x86_64 4/6 Verifying : 2:vim-X11-7.4.179-1.fc19.x86_64 5/6 Verifying : 2:vim-common-7.4.179-1.fc19.x86_64 6/6 

Resumindo

  1. Executando um yum install no 1.1 depois que o 1.0 já está instalado, listará 2 pacotes?

Não. O YUM ainda executará uma atualização, mesmo quando você lhe disser para fazer uma instalação, se o pacote já estiver instalado.

  1. A execução de yum update some-package-1.1 substituirá some-package-1.0 com sucesso?

Sim.

Comentários

  • Obrigado pela resposta tão detalhada. A meu ver, posso simplesmente continuar a usar yum install ao especificar o nome do pacote com a versão e não me preocupar com a instalação de várias versões. Uma situação em que eu gostaria de usar yum update seria quando eu apenas especificasse o nome do pacote, correto?
  • @aspiringCodeArtisan – que ' s parcialmente correto. yum install detectará que um pacote já está instalado e passará a atualizá-lo em vez de instalá-lo, como meu exemplo mostrou.
  • @slm – Para esclarecer, pode rpm search em um repositório semelhante ao zypper search para um determinado pacote?
  • @Motivated – no rpm é como dpkg , só se preocupa com o gerenciamento dos arquivos do disco local. Para repositório " gerenciamento " b / w seu sistema + um repo, você precisa de algo como yum ou dnf.
  • @Motivated – rpm quando usado para instalar a partir de um url não ' não faça qualquer dep de pacote para puxá-los também, ele simplesmente baixa o rpm localmente e então o instala.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *