Relação entre yum, .repo e .rpm?

0

Eu não sou de origem do administrador do sistema, no entanto, devido a alguns motivos, preciso executar algumas tarefas conforme descrito abaixo:

Eu preciso instalar alguns pacotes no RHEL em 4-5 nós, usando "yum" no RHEL 7.x OS. Para fazer isso, encontrei vários termos como: yum , .repo , .rpm .

Eu entendi que usando yum podemos instalar um software, mas estou tendo dificuldades em como o yum obtém o software da Internet.

Alguém pode me ajudar a entender os seguintes pontos:

1) yum é o programa que faz a instalação do software?

2) O que é .rpm ? O .rpm tem o software real instalado? O .rpm é um pouco semelhante a .tar ?

3) Como o yum obtém / faz o download do software da internet? Consulta o arquivo .repo ?

4) Quando escrevemos yum - y install some_program , primeiro baixamos os binários da internet e depois instalamos ou precisamos fazer um pouco de rsync .

Estou confuso, tentei encontrar as respostas on-line, no entanto minhas dúvidas ainda permanecem lá. Alguém pode me ajudar em palavras simples?

    
por CuriousMind 19.03.2017 / 19:29

1 resposta

1
  • O RPM é o pacote. Pacote de algum software. Ele contém os arquivos no arquivo CPIO (semelhante ao tar, apenas formato diferente) e algumas informações (por exemplo, quais outros pacotes são necessários) e scripts que precisam ser executados quando o pacote é instalado / atualizado / removido (são executados automaticamente por / usr / bin / rpm).

  • A maioria dos softwares Linux é vinculada dinamicamente. Ou seja para o pacote firefox você precisa do pacote libnss (e um monte de outros). Isso tem o benefício de que, se houver um problema de bug / segurança, o mantenedor desta biblioteca atualiza apenas aquela biblioteca e não precisa recompilar todos os programas que a usam (podem ser poucos deles).

  • A distribuição típica de
  • (RHEL) é composta de milhares de pacotes RPM. Eles estão agrupados em um diretório chamado repositório. A Red Hat fornece algum repositório de base. Depois, há alguns outros repositórios com alguns produtos (por exemplo, todos os pacotes necessários para o OpenStack ou Satellite ou qualquer outra coisa). Um dos repositórios mais conhecidos é o EPEL link que contém o pacote para RHELs. Ele fornece software, que está faltando no RHEL e é suportado pela comunidade (ou seja, sem garantia).

  • Embora você possa baixar o pacote RPM manualmente e instalá-lo usando /usr/bin/rpm -Uvh somepackage.rpm , é muito provável que você receba algum erro de que somelibrary seja necessário. Se você baixar esse pacote e tentar instalá-lo, receberá um erro de que someotherlibrary é necessário. Isso é chamado de cadeia de dependência. Às vezes, essa dependência é ainda circular e você não pode instalá-la uma a uma. Quando você instala algum software, é bastante comum exigir dezenas ou até centenas de dependências. Instalá-los manualmente demoraria muito tempo.

  • O YUM é um programa que irá resolver automaticamente as dependências e escolher entre os melhores pacotes de repositórios para satisfazer essas dependências. Portanto, mesmo a atualização e instalação de alguns softwares é tarefa fácil. Por exemplo. yum install firefox .

  • O Yum pode baixar os pacotes para você. Só precisa saber a URL desses repositórios (lembre-se que você pode ter um ou mais repositórios configurados para o seu sistema). O URL é armazenado em .repo files. Eles residem em /etc/yum.repos.d/ . É um ficheiro de texto simples (no formato INI) e contém o URL e algumas outras informações (por exemplo, se os pacotes são assinados com o GPG). Se você configurar corretamente os arquivos repo, o YUM poderá instalar facilmente o software desses repositórios. Quando você executar /usr/bin/yum install firefox , irá baixar as informações de todos os repositores configurados, então ele informará que o firefox e X outras dependências serão instaladas. Quando você confirmar, baixará os pacotes e os instalará. Não há necessidade de executar o rsync.

por 20.03.2017 / 21:51