Gerenciando pacotes no Linux - checkinstall

Publicado por Razec em 14/05/2007

[ Hits: 14.472 ]

Blog: http://razec.wordpress.com

 


Gerenciando pacotes no Linux - checkinstall



Hi Geeks,

Estava pensando como as pessoas ficam perdidas ao GERENCIAR PROGRAMAS, como desinstalar um determinado programa instalado no Linux. Conversei com alguns amigos e notamos que esta dúvida é geral. No Linux podemos instalar o programa pelo os seus sources.

"Eu uso Slackware, mas outras distros fiquem a vontade para testar ok."

Exemplo:
Baixamos o source *.tar.gz

$ tar -zxvf nome_do_programa.tar.gz //descompacta o programa
$ cd nome_do_programa
$ make
//compila o programa
# make install //instalamos o programa

Como desinstalar este source? Afinal você não gostou do programa.

# make uninstall //para desinstalar
make uninstallmake: *** No rule to make target 'uninstall'. Stop

Não são todos os programas que permitem o "make uninstall", então utilizaríamos o "make clean".

# make clean //É usado para limpar os arquivos binários já compilados de tentativas anteriores

Mas onde está o grande problema?
Para você remover você terá que apagar todos os programas que se espalhou pelo sistema.

Então chegou o CHECKINSTALL para solucionar nossos problemas. Embora estamos falando de Slackware, o checkinstall é utilizado em outras distros criando pacotes para cada uma (.deb, .rpm ou .pkg) e assim podemos instalar e desisntalar.

Através do CheckInstall gerenciamos melhor os nossos pacotes instalados. Bem simples usá-lo.

Instalando CHECKINSTALL

Para instalar o checkinstall temos duas opções:
  • Instalar o pacote a partir da pasta "extra" do CD 2 do SLACKWARE
  • Baixar o pacote atual do site asiclinux

Após baixar:

# installpkg checkinstall-_versão_atual.tgz

Checkinstall em ação

Bem fácil sua aplicação, VERY SIMPLE =), no lugar do make install utilizaremos CHECKINSTALL.

$ tar -zxvf nome_do_programa.tar.gz
$ cd nome_do_programa
$ ./configure
$ make
# checkinstall -S -y
(no lugar do make install)

/*
# checkinstall -D (gera um pacote .deb, para distribuições derivadas do Debian)
# checkinstall -R (gera um pacote .rpm)
# checkinstall -S (gera um pacote .tgz, do Slackware)
*/


* Lembrando, como root e utilizamos -S por estarmos utilizando Slackware.

Pronto! Se observar ele criou um pacote nome_do_programa.tgz.

Para instalar é simples:

# installpkg nome_do_programa.tgz

Caso queira desinstalar utilize:

# removepkg nome_do_programa.tgz

ou

Para gerenciar:

# pkgtool

Agora só se divertir =)
Espero ter ajudado aí. Por favor, fiquem a vontade para comentar ou mandar email.

Have Fun!!!

[]'s
Razec - razec@linuxmail.org
LinuxUser: 443515

Outras dicas deste autor

Configurar SmartLink no Slackware 11 com kernel-2.6.17.13

Leitura recomendada

Wireless - Ubuntu 11.04 no LG-A419 ( RT3090 )

Desabilitando ipv6 no grub2

SpectrWM no Gentoo

Alterar tamanho da fonte no terminal TTY Linux (F1 ao F6)

Como rotear duas redes?

  

Comentários
[1] Comentário enviado por vodooo em 14/05/2007 - 12:58h

Hehe, utilizo o checkinstall já faz um bom tempo e estou muito feliz com ele!

Para usuários um pouco mais familiarizados com o Linux (e perfeccionistas como eu) recomendo que não se utilize a opção "-y" (assumir sim para todas as perguntas), pois assim ele terá a opção de editar a descriçao do pacote, seu nome, sua versão, localização alternativa do source, entre outros!

Parabéns pela dica!

Abraços

[2] Comentário enviado por fredericco em 14/05/2007 - 16:31h

o problema e os prog. em python que ta vindo agora assim
python setup.py install

ai fodi ^^

[3] Comentário enviado por mrazec em 16/05/2007 - 07:43h

Vodooo blz, obrigado pela dica, sabe por isto gosto da comunidade livre uma ajuda eterna.
Fredericco, Achei interessante sua dúvida não havia pensado nisto. mandei a resposta no seu email.Mas estou mandando aqui para os amigos testarem também. Tenta fazer um.

$slacktrack -Qp package.tgz 'python setup.py install'

Outra forma seria:
O proprio python gera pacotes que para criar vc faria o seguinte.

"bdist" cria formatos binários

Para usar ficaria

python setup.py bdist_dumb ---->Formatos: tar, ztar, gztar, zip

python setup.py bdist_rpm---->Formatos: rpm, srpm

python setup.py bdist_wininst---->Formatos: wininst

Espero que ajude caso não consiga mande outro post vamos achar uma solução blz..

See you then
[]'s Razec




Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts