RHEL5: Proibir a instalação de pacotes i386 em sistemas de 64 bits?

13

Toda vez que eu instalo algo com o yum, ele tenta instalar as versões x86_64 e i386 do pacote, se ambas estiverem disponíveis. Existe alguma maneira que eu possa proibir isso sem especificar o arco da embalagem?

    
por Nikolai Prokoschenko 22.10.2009 / 12:33

7 respostas

16

Adicione multilib_policy = melhor ao seu /etc/yum.conf

O Yum agora tentará instalar o "melhor" pacote.arch para o seu sistema e ele só instalará esse (contanto que esteja disponível).

Supondo que você esteja em um sistema de 64 bits, o yum tentará primeiro instalar o pacote. x86_64, se isso não existir, ele voltará para i386 e noarch.

A configuração padrão é multilib_policy = all , o que significa instalar todos os arcos possíveis.

    
por 22.10.2009 / 18:55
3

Eu tenho usado a opção exactarch = 1 em /etc/yum.conf há algum tempo, e isso funcionou para mim.

Ele ainda permite que você especifique manualmente o arco, mas se você não o fizer, ele instalará apenas x86_64, não ambos.

De acordo com o el6 manual, yum.conf (5) :

          exactarch  Either  ‘1’  or ‘0’. Set to ‘1’ to make yum update only update the architectures of
          packages that you have installed. ie: with this enabled yum will not install an  i686  package
          to update an i386 package. Default is ‘1’.

...

          multilib_policy  Can  be set to ’all’ or ’best’. All means install all possible arches for any
          package you want to install. Therefore yum install foo will install foo.i386 and foo.x86_64 on
          x86_64, if it is available. Best means install the best arch for this platform, only.

BTW, multilib_policy = melhor e exactarch = 1 parecem ser o padrão já há algum tempo.

    
por 13.05.2015 / 21:40
2

Use a função exclude no yum.conf:

exclude=*.i386 *.i686
    
por 22.10.2009 / 14:10
1

Ele tentaria instalar a versão i386 se você tiver a versão x86_64 já instalada.

Preste atenção que se você usar exclude no yum.conf você pode excluir pacotes que só estão disponíveis no i386 arch

Uma maneira mais segura pode ser solicitar explicitamente o arco no momento da instalação :

yum install package.x86_64
    
por 22.10.2009 / 14:17
0

-x, --exclude = package               Excluir um pacote específico por nome ou glob de atualizações em todos               repositórios. Opção de configuração: excluir

- disableexcludes = [todos | principal | repoid]               Desative as exclusões definidas nos seus arquivos de configuração. Leva um dos               três opções:               all == disable all exclui               main == disable exclui definido em [main] no yum.conf               repoid == disable exclui definido para esse repo

acima do homem você pode usar ou você pode instalar o yumex que dá gui u pode escolher o rpm que você precisa instalar.

link

    
por 22.10.2009 / 16:44
0

O que funciona para mim é remover todos os pacotes ix86 da máquina. Agora ele nunca me pede para instalar qualquer coisa de 32 bits.

Primeiro configure seus arquivos .rpmmacros assim:

cat ~/.rpmmacros
%_query_all_fmt %%{name}-%%{version}-%%{release}.%%{arch}

Em seguida, execute isso (estou assumindo bash):

rpm -qa | egrep "i.86$"

Isso lhe dará uma lista de rpms não x86_64 atualmente instalados. Você pode remover todos eles com isto:

rpm -e $(rpm -qa | egrep "i.x86$")

Agora você tem um sistema puro de 64 bits.

-Dave

    
por 22.10.2009 / 20:15
-3

Listar i386

yum list installed | grep i386

E agora você pode removê-lo ou atualizá-lo para x86_64

    
por 01.09.2016 / 20:06