Como funciona o “groupinstall”? (Como converter um grupo de instalação para um pacote de instalação regular multi yum -y?)

3

Gostaria de saber como replicar o mesmo resultado exato para

yum groupinstall "Printing client"

sem executar esse comando, mas sim executar

yum install <package> -y

talvez várias vezes.

Eu entendo que eu posso pegar o nome de cada pacote via

yum groupinfo "Cliente de impressão"

mas quais devem ser instalados, pois ele lista três categorias diferentes: Pacotes Obrigatórios, Padrão e Opcionais.

como se pode saber como instalá-los de maneira "ordenada" usando

 yum install

para que replique o mesmo resultado exato do original

 yum groupinstall "Printing client" ?
    
por User3432423423 05.09.2013 / 20:12

1 resposta

4

Meu sistema é um pouco antiquado, Fedora 14, então eu não tenho esse grupo, mas eu tenho esse grupo "Suporte à Impressão", mas acredito que meus exemplos ainda são relevantes para sua pergunta.

Como você já mencionou, você pode usar o comando yum groupinfo <group name> para descobrir quais pacotes são fornecidos por um grupo específico. Quanto a instalá-los, eu diria que você tem que instalar todos os pacotes "Obrigatório" e "Padrão". Isso poderia ser feito assim.

O parâmetro yum.conf , group_package_types controla quais tipos são instalados.

excerto man yum.conf

group_package_types List of the following: optional, default, mandatory. 
   Tells yum which type of packages in groups will be installed when 
   'groupinstall' is called.   
   Default is: default, mandatory

Exemplo

Você pode executar esses comandos para obter a lista de pacotes:

Obrigatório

$ yum groupinfo "Printing Support" | paste -s -d ' '| \
        grep -oP '(?<=tory Packages:\s{4}).*(?=Default Packages:\s+)' | \
        sed 's/[\t ]\+/ /g'
cups ghostscript ghostscript-cups 

Padrão

$ yum groupinfo "Printing Support" | paste -s -d ' '| \
        grep -oP '(?<=Default Packages:\s{4}).*(?=Optional Packages:\s+)' | \           sed 's/[\t ]\+/ /g'
bluez-cups cups-pk-helper foomatic foomatic-db-ppds foomatic-filters gutenprint gutenprint-cups hpijs hplip mpage paps printer-filters samba-client system-config-printer system-config-printer-udev 

Você pode armazenar esses dois comandos em duas variáveis:

$ mpkgs=$(yum groupinfo "Printing Support" ....)
$ dpkgs=$(yum groupinfo "Printing Support" ....)

E, em seguida, execute yum da seguinte forma:

$ yum install -y $mpkgs $dpkgs

Quando você apresenta todos os pacotes para yum desta forma, pode descobrir se as dependências são atendidas sem que você tenha que se preocupar em apresentar o conjunto correto de pacotes durante cada chamada.

    
por 05.09.2013 / 21:28