Processo ISO do Kickstart personalizado - pacotes para mapeamento de RPM

2

Quero começar dizendo que sou novo no kickstart, por isso, se usar os termos incorretos, peço desculpas antecipadamente.

O que estou tentando realizar: Eu estou tentando criar um cliente ISO para instalação do CentOS e um aplicativo baseado na web que eu escrevi. Eu quero criar uma instalação do tipo "appliance" para facilitar a implantação de uma VM ou servidor bare-metal executando o aplicativo e nada mais.

Eu tenho um exemplo de ISO feito por outra empresa, com base no RHEL, e estou tentando seguir o que eles fizeram e personalizá-lo de acordo com minhas necessidades.

Pergunta: Eu estou olhando para o arquivo ks.cfg no exemplo iso eu tenho que define os pacotes a serem instalados, o que eu acredito é, em última análise, a lista de RPMs de diretórios na raiz do ISO. Abaixo está um trecho do arquivo ks.cfg:

#Package install information
%packages
@ base
@ core
@ acme-base
@ acme-platform
@ acme-application

Olhando para os diretórios na iso, acredito que @ acme-platform vai causar a instalação de / acme / acmeplatform / RPMS / *. rpm

Minha pergunta é como esse mapeamento é definido de @ acme-platform para o diretório no ISO onde os RPMs reais são armazenados.

EDIT: Depois de ler a primeira resposta, queria esclarecer a questão: Estou realmente procurando o arquivo que mapeia a localização dos RPMs para os grupos que são referenciados no arquivo ks.cfg . Vejo que os pacotes reais que compõem os grupos são definidos em /repodata/comps.xml

    
por Aossey 29.04.2014 / 18:13

2 respostas

1

Os pacotes listados são, na verdade, yum grupos de pacotes. Grupos são usados para que eles não tenham que listar os pacotes individuais (ou necessariamente saber quais pacotes são recomendados para um efeito específico) manualmente. Por exemplo, no RHEL 6 (e eu presumo que o CentOS 6) se você é somente texto você pode fazer yum groupinstall Desktop que instala todos os pacotes necessários para satisfazer o grupo chamado "Desktop" que acaba instalando a área de trabalho GNOME e aplicações diversas que a Red Hat achou que seria útil. Isso é para tornar o processo tão simples como, basicamente, dizendo "Eu quero um desktop."

Os grupos core e base fazem parte da base RHEL / CentOS, os grupos acme-* são provavelmente para o dispositivo em questão. Eles provavelmente colocam o rpm no mesmo diretório

Eu começaria montando criando um repositório yum que olha para o ISO montado em loopback , em seguida, emitindo os comandos yum groupinfo necessários para ver quais pacotes individuais vão com cada um dos grupos. Por exemplo, para ver os pacotes no grupo base , digite yum groupinfo base e observe a glória.

Os nomes dos pacotes que ele fornecerá serão para RPMs localizados no DVD em algum lugar (não me lembro, mas acho que há um diretório "RPMS") com o nome do pacote formando a primeira parte do nome do arquivo do RPM.

Por exemplo, se você vir um pacote chamado btparser , o nome do arquivo pode ser chamado de btparser-0.17-2.el6.x86_64.rpm (no entanto, apenas emite um find /path/to/mountedISO -name 'btparser* para localizá-lo).

Isso deve colocá-lo no caminho certo.

    
por 29.04.2014 / 18:35
0
Os arquivos

/etc/yum.conf e .repo no /etc/yum.repos.d/ determinam quais repositórios usar. Nestes repositórios, há um arquivo repodata / primary.xml que especifica o local (através do campo "location") dos RPMs.

Você provavelmente não deseja integrar seu software no repositório principal do CD. Eu criaria em outro lugar no iso e usaria o creatrepo. Na configuração do kickstart, você pode adicionar comandos "repo" para adicionar esse repo usando, por exemplo, "repo --name = acme --baseurl = arquivo: // mnt / cdrom / local / repos / acme.

    
por 29.04.2014 / 21:32