Criando um repositório yum local sem rpms

1

Eu posso instalar pacotes da Internet usando:

yum install packagex

Isso fará o download de todos os pacotes dependentes e os instalará em ordem. Para alguns de nossos clientes que não têm acesso à Internet, queremos fazer isso dando a eles um tarball de um repositório criando apenas esses pacotes.

É possível fazer algo como:

yum install packagex  --createRepo /tmp/foo

onde todos os pacotes são colocados em /tmp/foo em um formato repo, que eu posso tar e, em seguida, pode ser usado pelo yum para instalar pacotes offline?

    
por k2k2e6 17.06.2015 / 22:02

2 respostas

4

Sim, você pode fazer isso usando os plug-ins de downloadonly yum. Isso é descrito com mais detalhes no artigo RedHat: Como usar o yum para baixar um pacote sem instalá-lo

Você poderia, por exemplo executar yum install packagex --downloadonly --downloaddir=/tmp/packagex_repo
que baixaria packagex e todas as dependências necessárias para o sistema atual só serão baixadas para /tmp/packagex_repo .

Há também yumdownloader , que está contido no pacote yum-utils , que fornece os mesmos meios, embora devido a um bug, ele baixará as versões i586 e x86_64 de um pacote , e a opção --archlist nem sempre funcionará como você gostaria.

Para mais informações, consulte o seguinte:

Para a criação de um repositório dessa pesquisa por aqui para createrepo , pois há muitos resultados lá. Para empacotar isso em um tarball envolve apenas alguns comandos, primeiro baixe os pacotes, então execute createrepo no diretório repo e finalmente crie um tarball daquela pasta mais a configuração do yum para o repo. Mas você também pode colocar tudo em um tarball e dizer às pessoas para extraírem o tarball e executar yum install ./*rpm na pasta repo extraída. Usar a abordagem repo forneceria o benefício que a listagem de pacotes yum history e yum mostraria de qual repositório um pacote foi instalado originalmente.

    
por 20.06.2015 / 20:19
0

O RPM já foi feito para fazer isso. Todos os pacotes que você pode obter pelo yum, você pode obter um RPM. O RPM também já está instalado em todos os lugares que você encontrar no yum. Então, basta arredondar seus RPMs, colocá-los em uma bola de alcatrão, e sim você pode apenas extraí-lo e executar alguns comandos RPM para fazer o trabalho.

É claro que uma grande coisa do gerenciamento de pacotes são as dependências, cabe a você garantir que você inclua um pacote para cada dependência.

    
por 17.06.2015 / 22:08

Tags