Gerenciamento de pacotes

Publicado por Filipe Oliveira dos Santos em 12/02/2008

[ Hits: 13.117 ]

 


Gerenciamento de pacotes



Empacotador TAR

A forma mais conhecida de realizar compressão e empacotamento em ambientes Windows é utilizado o programa zip. Um programa que "zipa" um arquivo, ou diversos arquivos, na realidade estão realizando dois procedimentos distintos: Empacotar e comprimir. Em ambientes Unix-like, essas duas tarefas são realizadas de forma logicamente distintas.

O programa tar, cujo Nome deriva de "tape archiver", realiza a tarefa de concatenar todos os arquivos e diretórios preservando as informações do filesystem, isto é, seus metadados.

Criado com propósito de backup em dispositivos de acesso sequencial (unidade de fita), o tar é utilizado hoje em dia como uma ferramenta de empacotamento, podendo ser utilizada em conjunto com compactadores como gzip e bzip2.

A utilização da ferramenta tar é bastante simples e pode ser resumida da seguinte forma:

tar <operações><opções> f <arquivo_tar> [<arquivo_de_entrada>]

Onde o significado dos parâmetros são:

* <operações> podem ser:
  • -c -> criar aquivo tar;
  • -r -> adicionar (concatenar) conteúdo a um arquivo tar;
  • -x -> extrair o conteúdo de um arquivo tar;
  • -t -> listar o conteúdo de um arquivo tar.

* <opções> podem ser:
  • -v -> Verbose tar;
  • -z -> utilizar com compressão gzip, tanto na criação como na extração de um arquivo tar;
  • -j -> utilizar com compressão bzip2, tanto na criação como na extração de um arquivo tar;
  • -Z -> utilizar como compressão compress, tanto na criação como na extração de um arquivo tar.

* <arquivo_tar> É o nome do arquivo tar sob o qual se está trabalhando. Deve ser procedido pela letra f de file.

* <arquivo_de_entrada> listagem dos arquivos que serão adicionados ao arquivo tar.

Outros programas que trabalham de forma análoga ao tar são o dump e cpio. Ambos foram criados com a mesma finalidade, mas são poucos utilizados hoje em dia, pois não são tão versáteis quanto o tar.

Exemplos:

$ tar cf file.tar /home -> Cria um file.tar;
$ tar xf file.tar -> Desempacota um file.tar;
$ tar rf file.tar /etc -> Adiciona o diretório /etc dentro de file.tar;
$ tar tf file.tar -> Mostra o conteúdo de file.tar;
$ tar czvf file.tgz /etc -> Cria um arquivo no formato .tgz em modo verbose (visualização);
$ tar xzvf file.tgz -> Descompacta o file.tgz;
$ tar cjvf file.bz2 -> Cria um arquivo no formato .bz2;
$ tar xjvf filipe.bz2 -> Descompacta file.bz2;

Pacotes Debian - dpkg

O dpkg é um programa de computador que é a base do Sistema de Gerenciamento de Pacotes para distribuições GNU/Linux baseados em Debian. Criado por Ian Jackson em 1993, o dpkg é usado para instalar, remover e fornecer informações sobre os pacotes .deb.

O dpkg é uma ferramenta em linguagem de baixo nível. Front ends de alto nível são exigidos para buscar pacotes em lugares remotos ou ajudar no solucionamento de conflitos nas dependências dos pacotes. Para esta finalidade, o Debian fornece o aptitude. O apt largamente conhecido não deve ser utilizado com este propósito, uma vez que é um protótipo e não realiza o gerenciamento de pacotes tão bem quanto o aptitude.

Exemplos:

$ dpkg -I pacote.deb -> Mostra informações sobre os pacotes.
$ dpkg -i pacote.deb -> Instala os pacote.
$ dpkg -l wget.deb -> Lista se o pacote wget está instalado no sistema.
$ dpkg -l -> Mostra a lista de pacotes instalados no sistema.
$ dpkg -L wget.deb -> Determina aonde estão instalados todos os arquivos de wget.
$ dpkg -s wget.deb -> Verifica o status do pacotes instalado.
$ dpkg -S /bin/ls -> Determina qual pacote o comando ls pertence.
$ dpkg -c wget.deb -> Lista pacotes com problema de instalação. a opção -s exibe exibe os detalhes para decidir como corrigir o problema.
$ dpkg -r wget.deb -> Remove o pacote wget do sistema.
$ dpkg -P wget.deb -> Remove o pacote do sistema e os seus arquivos de configuração.
$ dpkg -E -> Instrui o comando a não sobrescrever um pacote, previamente instalado, na mesma versão
$ dpkg -G -> Instrui o comando a não sobrescrever um pacote, previamente instalado, com uma versão mais antiga do que a do pacote instalado.
$ dpkg --unpack wget.deb -> Descompacta wget, mas não instala o pacote contido nele.

Pacotes RedHat - RPM

O RedHat Package Manager - RPM é um sistema de gerenciamento de pacotes para sistemas GNU/Linux baseados em RedHat. Ele instala, atualiza, desinstala e verifica softwares. Originalmente desenvolvido pela RedHat Linux, é agora usado por muitas distribuições como Novell-Suse que possui sua própria versão£o de RPM.

Atrás do gerenciador de pacotes está¡ o banco de dados RPM. Ele consiste de uma lista duplamente ligada que contém todas as informações de todos os RPM instalados. O banco de dados lista todos os arquivos que são criados ou modificados quando um usuário instala um programa e facilita a remoção destes mesmos arquivos. Se o banco de dados fica corrompido (o que acontece facilmente se o cliente de RPM é fechado subitamente), as ligações duplas garantes que eles possam ser reconstruídos sem nenhum problema. Em computadores com sistema operacional RedHat instalado, este bando de dados encontra-se em /var/lib/rpm.

Uma vantagem que o RPM possui sobre o DEB é que possui algumas ferramentas de verificação criptográfica com o GPG e o md5, além de verificação de integridade dos arquivos já instalados.

Exemplos:

$ rpm -qa -> Verifica quais pacotes estão instalados no sistema.
$ rpm -q wget -> Verifica se o pacote wget está instalado.
$ rpm -qp wget -> Verifica o que será instalado com o pacote wget.
$ rpm -qpi -> Verifica as informações dos pacotes não instalados.
$ rpm -ql adduser -> Verifica quais arquivos foram instalados através do pacote adduser.
$ rpm -qlp wget -> Verifica quais pacotes serão instalados com o pacote wget.
$ rpm -i --test --percent -> wget<versão>.rpm -> Verifica se a instalação irá¡ ocorrer corretamente.
$ rpm -Uh wget<versão>.rpm -> Faz o upgrade da um pacote existente para uma nova versão.
$ rpm -e wget<versão>.rpm -> Remove o pacote rpm.
$ rpm -i wget<versão>.rpm -> Instala o pacote rpm.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Raspberry Pi - Raspcontrol

Shell script: auto-completion - Como implementar

Limitando o uso da CPU com o CPULIMIT

Zarafa lança a versão community 6.40 de sua plataforma de colaboração

Linux + Gnome: Prevenindo alunos do laboratório de mudar as configurações de desktop

  

Comentários
[1] Comentário enviado por jeferson_roseira em 13/02/2008 - 08:27h

Cara legal essa dica

[2] Comentário enviado por marcosmiras em 13/02/2008 - 13:53h

Para saber mais é digitar
tar --help
gunzip --help
dpkg --help
rpm --help

[3] Comentário enviado por marcos.ramos em 18/11/2008 - 16:22h

faltou o Arch Linux :(



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts