Criando um pacote com o kernel compilado para o Slackware

Publicado por Leandro Santiago em 15/09/2006

[ Hits: 7.138 ]

Blog: http://leandrosan.wordpress.com

 


Criando um pacote com o kernel compilado para o Slackware



Bem, eu estava aqui compilando um 'kernelzinho' como sempre e esbarrei na seguinte questão:

Compilamos um kernel (2.6) normalmente com os conhecidos comandos:

# make bzImage && make modules

Se queremos criar um binário do kernel para instalarmos em várias máquinas ou guardarmos para instalações posteriores, fazemos o seguinte:

Para os "Red Hat da vida", damos o comando:

# make rpm
ou
# make rpm-pkg

Se usamos um Debian, damos o comando:

# make deb-pkg

E pronto! Pacote criado, bastando somente instalar com os comandos específicos de cada sistema.

Mas e o que acontece com os usuários do Slackware e derivados?

Você poderia pensar em criar um rpm e depois converter para tgz, mas uma conversão nunca ocorre de forma totalmente perfeita (pelo menos não comigo). Acontece que nos kernels mais novos - testei no 2.6.14 - é possível fazermos uma "gambiarra" para resolver isso.

Ao contrário dos outros sistemas, no Slack tudo ocorre de forma muito simples - KISS ("Keep it Simple, Stupid") -, e isso também ocorre no sistema de pacotes, que é somente um arquivo .tar.gz.

Então vamos colocar a mão na massa.

Há uma opção na compilação chamada:

# make targz-pkg

que cria um arquivo tar.gz no diretório raiz do kernel source.

Se você tentar instalar o pacote criado, você receberá uma mensagem de erro:

Cannot install linux-2.6.14.tar.gz: package does not end in .tgz

Pois embora .tgz e .tar.gz sejam as mesmas coisas, no Slackware é diferente (confuso...).

Então para resolver o 'problema', simplesmente renomeamos o arquivo nos moldes dos pacotes do Slack, que é o seguinte:

nomedopacote-versão-arquitetura-release.tgz

Renomeando:

# mv linux-2.6.14.tar.gz linux-2.6.14-i386-1.tgz

(kernel compilado para 386)

Bastando somente instalar o pacote com o installpkg ou instalar em quantas máquinas quiser, sem ter que ficar compilando em uma por uma.

A única desvantagem é não haver um jeito automático de criar os arquivos de descrição e dependências dos pacotes (a menos que você modifique uns scripts), mas isso não não é necessariamente um problema.

Espero que essa dica possa ajudar aos que tiverem o mesmo problema, e até a próxima.

Outras dicas deste autor

Seu Linux falando português nativamente

Instalando o Vmware-player no Slackware

Criando e utilizando uma "biblioteca de funções"

Instalando programas no Linux sem ter poderes de root

Limewire PRO sem pagar

Leitura recomendada

Como renomear placa de rede USB

Dicas de compilação de kernel

Como Instalar o Gentoo Linux em Dual Boot com o Ubuntu [Vídeo]

Compilando corretamente o kernel 2.4.x no Slackware

O jeito APT de resolver problemas

  

Comentários
[1] Comentário enviado por delmarcs em 22/09/2006 - 19:33h

É uma solução emergencial interessante.
Ajudou!

[2] Comentário enviado por GilsonDeElt em 11/03/2007 - 21:35h

Legal.
Talvez eu faça isso quando compilar o 2.6.17.13.
Valeu!



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts