[Tutorial] CRIANDO PACOTES RPM NO MÉTODO SIMPLES
Enviado: 14 Jun 2014 15:45
Esse tutorial visa criar um pacote RPM partindo de um código fonte pre instalado, ou seja, os pacotes que rodam em uma espécie de portable no Linux. Segue o tutorial, qualquer dúvida, só ir postando, pois aprendi a criar esses pacotes para instalar as modificações do Endian Firewall de modo automático sem precisa transferir arquivo por arquivo.
Para esse tutorial, vamos utilizar a Distro Debian para que seja possível primeiramente criar um pacote com extensão “.deb” e depois converter para “.rpm” com o aplicativo ALIEN onde pode ser instalado pelo apt-get install alien.
• Com o Sistema Debian rodando e com o pacote Alien instalado, vamos criar uma pasta chamada PACOTE dentro do diretório /tmp.
• Dentro da pasta PACOTE criamos outo diretório chamado DEBIAN.
• Dentro da pasta DEBIAN criamos dois arquivos, um arquivo chamado “control” e o outro chamado “postinst”.
• No arquivo “control” adicionamos as seguintes informações:
Package: nomepacote
Priority: optional
Version: 1.0
Architecture: all
Maintainer: Eduardo Jonck
Depends:
Description: Este é um pacote gerado com o intuito de elucidar a criação de um pacote deb.
• Lembrando de alterar algumas linhas como o nome do pacote, a versão em caso de ter atualização, o nome do autor, se tiver dependências, e a descrição do pacote.
• Após criar os dois arquivos e as pastas acima, vamos agora criar os caminhos absolutos dos arquivos que pertencerão ao pacote, ou seja, se eu tenho o código fonte do aplicativo e preciso transferir os arquivos manualmente para cada diretório, com o pacote RPM será feito essa extração tudo automaticamente podendo executar comandos após a instalação adicionando parâmetros dentro do arquivo “postint”, por exemplo:
Crio uma estrutura de pastas dentro da pasta PACOTE dessa forma: /var/www/pacotexxxx/arquivoxxxx
Quando eu instalar o pacote, irá extrair os arquivos dentro de /var/www/pacotexxxx/arquivxxxx, podendo adicionar os comandos de Pós instalação no arquivo “postinst” em caso de ter que reiniciar algum serviço, seta permissões, etc.
• Após criar toda a estrutura de pastas dentro do diretório /tmp/PACOTE é necessário ajustar as permissões devidas dando um chmod em cada diretório ou arquivo, pois essa será a permissão efetiva após a instalação do pacote.
DICA: Pode ser dado os comandos adicionando dentro do arquivo postint, assim depois de instalar, o script roda e coloca os arquivos nas permissões certas. (Essas permissões varia de aplicativo para aplicativo)
• Após a estrutura de pastas montadas e com as permissões corretas, damos o comando:
chmod 755 –R /tmp/PACOTE/DEBIAN
• Com isso já está tudo pronto para ser compilado o pacote, onde entramos no diretório /tmp e damos o seguinte comando:
dpkg-deb -b PACOTE nomedopacote.deb
Com isso o pacote já será compilado e pronto para ser convertido.
• Para converter, utilizamos o aplicativo “alien” instalado no começo desse tutorial, utilizando o seguinte comando:
alien -r nomedopacote.deb nomedopacote.rpm -- script
Com isso teremos um pacote RPM pronto para ser instalado.
Para esse tutorial, vamos utilizar a Distro Debian para que seja possível primeiramente criar um pacote com extensão “.deb” e depois converter para “.rpm” com o aplicativo ALIEN onde pode ser instalado pelo apt-get install alien.
• Com o Sistema Debian rodando e com o pacote Alien instalado, vamos criar uma pasta chamada PACOTE dentro do diretório /tmp.
• Dentro da pasta PACOTE criamos outo diretório chamado DEBIAN.
• Dentro da pasta DEBIAN criamos dois arquivos, um arquivo chamado “control” e o outro chamado “postinst”.
• No arquivo “control” adicionamos as seguintes informações:
Package: nomepacote
Priority: optional
Version: 1.0
Architecture: all
Maintainer: Eduardo Jonck
Depends:
Description: Este é um pacote gerado com o intuito de elucidar a criação de um pacote deb.
• Lembrando de alterar algumas linhas como o nome do pacote, a versão em caso de ter atualização, o nome do autor, se tiver dependências, e a descrição do pacote.
• Após criar os dois arquivos e as pastas acima, vamos agora criar os caminhos absolutos dos arquivos que pertencerão ao pacote, ou seja, se eu tenho o código fonte do aplicativo e preciso transferir os arquivos manualmente para cada diretório, com o pacote RPM será feito essa extração tudo automaticamente podendo executar comandos após a instalação adicionando parâmetros dentro do arquivo “postint”, por exemplo:
Crio uma estrutura de pastas dentro da pasta PACOTE dessa forma: /var/www/pacotexxxx/arquivoxxxx
Quando eu instalar o pacote, irá extrair os arquivos dentro de /var/www/pacotexxxx/arquivxxxx, podendo adicionar os comandos de Pós instalação no arquivo “postinst” em caso de ter que reiniciar algum serviço, seta permissões, etc.
• Após criar toda a estrutura de pastas dentro do diretório /tmp/PACOTE é necessário ajustar as permissões devidas dando um chmod em cada diretório ou arquivo, pois essa será a permissão efetiva após a instalação do pacote.
DICA: Pode ser dado os comandos adicionando dentro do arquivo postint, assim depois de instalar, o script roda e coloca os arquivos nas permissões certas. (Essas permissões varia de aplicativo para aplicativo)
• Após a estrutura de pastas montadas e com as permissões corretas, damos o comando:
chmod 755 –R /tmp/PACOTE/DEBIAN
• Com isso já está tudo pronto para ser compilado o pacote, onde entramos no diretório /tmp e damos o seguinte comando:
dpkg-deb -b PACOTE nomedopacote.deb
Com isso o pacote já será compilado e pronto para ser convertido.
• Para converter, utilizamos o aplicativo “alien” instalado no começo desse tutorial, utilizando o seguinte comando:
alien -r nomedopacote.deb nomedopacote.rpm -- script
Com isso teremos um pacote RPM pronto para ser instalado.