Diferença entre yum update vs yum install

14

Durante o trabalho com o comando rpm , observei que, se eu instalasse some-package-1.0 e executasse outro rpm -ivh some-package-1.1 , os dois 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 fizer upgrade através do rpm -Uvh some-package-1.1 , obtenho o resultado desejado de um único pacote (1.1) quando faço rpm -qa | grep some-package .

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

Eu pergunto porque com o comando rpm -U (upgrade) 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 suas versões, como some-package-1.0 . Então, em suma, o que eu quero saber é se eu tenho duas versões específicas, como some-package-1.0 e some-package-1.1 :

  1. Será que a execução de um yum install no 1.1 após a versão 1.0 já está instalada, lista 2 pacotes?
  2. A execução de yum update some-package-1.1 substituirá com sucesso some-package-1.0 ?
por kaizenCoder 25.09.2014 / 12:38

1 resposta

21

As principais diferenças entre o YUM e o RPM são que yum sabe como resolver dependências e pode obter esses pacotes adicionais ao fazer seu trabalho. Embora rpm possa alertá-lo sobre essas dependências, não é possível obter pacotes adicionais.

Como instalar ou atualizar. Ambas as ferramentas podem executar uma instalação, e o RPM permite que você instale várias versões simultaneamente, mas o YUM lhe dirá que esse pacote já está instalado. Portanto, nenhum YUM permitirá que você instale várias versões.

Quanto ao yum update , isso reagirá de duas maneiras. Se você disser a ele 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 o pacote todos instalado em seu sistema.

Se você usar yum upgrade , fará o mesmo que yum update , exceto que tentará remover todos os pacotes que foram 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

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 

Então, em resumo

  1. Will performing a yum install on 1.1 after 1.0 is already installed, list 2 packages?

Não. O YUM ainda executará uma atualização mesmo quando você tiver solicitado que faça uma instalação se o pacote já estiver instalado.

  1. Will running yum update some-package-1.1 successfully replace some-package-1.0 ?

Sim.

    
por 25.09.2014 / 14:12

Tags