Centos: Como instalar todos os pacotes de um servidor em outro?

3

Eu fiz rpm -qa > file e agora quero copiar o arquivo para outro servidor e executá-lo e instalar todos esses pacotes no novo servidor. Eu fiz algo assim: for pkg in cat arquivo ; do yum -y install $pkg; done e funciona, mas leva muito tempo, você conhece um caminho mais curto para atingir esse objetivo? Eu não tenho um software gerenciador de configuração automático instalado. Se eu soubesse como percorrer o arquivo e mudar a nova linha com apenas um espaço, poderia executá-lo simplesmente por: yum install -y pkg1 pkg2 pkg3 , mas não sei como manipular os dados no arquivo para que ele seja exibido dessa forma. (com espaços em vez de novas linhas)

    
por Itai Ganot 20.08.2013 / 10:36

3 respostas

9

Nenhuma necessidade; xargs não se importa com o espaço em branco que você usa.

xargs yum -y install < file
    
por 20.08.2013 / 10:40
4
rpm -qa > file 

contém números de versão. É melhor ignorá-lo, caso o servidor de destino tenha uma arquitetura diferente ou o pacote tenha uma versão atualizada. Recupere o nome do pacote apenas com o seguinte comando:

$ rpm -qa --queryformat "%{NAME}\n"
    
por 20.08.2013 / 11:37
1

Não é necessário usar xargs .

rpm -qa > file

yum -y install $(cat file)
    
por 20.08.2013 / 16:12

Tags