Gerenciamento de pacotes Debian - principais comandos LPIC-1

Neste artigo irei mostrar de forma breve alguns dos principais comandos e opções utilizadas no gerenciamento de pacotes Debian. O tema faz parte dos tópicos para o certificado LPIC-1.

[ Hits: 6.939 ]

Por: Amaury Borges Souza em 20/11/2018 | Blog: https://amaurybsouza.medium.com/


Introdução



Irei mostrar de forma breve alguns dos principais comandos e opções utilizadas no gerenciamento de pacotes Debian.

Padrão Debian

  • Arquivo: .deb
  • Gerenciador de pacotes: dpkg
  • Gerenciador + repositório: apt-get
  • Outros comandos: dpkg-reconfigure, apt-cache, dselect, aptitude, alien

Padrão RPM/RedHat

  • Arquivo: .rpm
  • Gerenciador de pacotes: $rpm
  • Gerenciador + repositório: yum
  • Outros comandos: yumdowloader, rmp2cpio

Considerações importantes:
  • Cada sistema deve usar um sistema de gerenciamento único.
  • Um pacote é um conjunto de arquivos relacionados a uma aplicação: executáveis, cfgs, bibliotecas, manuais etc, além de informações sobre dependências.
  • Os gerenciadores de pacotes mantêm uma base de dados relacionando todos os pacotes, seus arquivos e dependências.

/etc/apt/sources.list

Esse arquivo contem todas as fontes, é daqui que o apt-get faz o download da versão correta dos programas.

O arquivo de configuração de repositórios para pacotes .deb é /etc/apt/sources.list, contém a lista de servidores ou mídias onde podem ser encontrados os pacotes para a distribuição. Geralmente, opta-se por trabalhar com repositórios em rede (LAN ou WAN), pois a dinâmica de atualização dos pacotes funciona muito mais.

dpkg

Instala e manipula arquivos .deb. Ele também faz operações de consultas em pacotes já instalados.

O dpkg não faz controle de dependências de pacotes, ele não faz download automático, nada disso, é preciso ter o pacote já baixado.

Opções:
  • -i : instala um pacote.
  • -x : extrai conteúdo de um pacote.
  • -r : remove um pacote, mas mantem os arquivos de configuração do pacote.
  • -P : --purge - remove completamente o pacote e arquivos de configuração.
  • -l : lista pacotes instalados.
  • -c : exibe o conteúdo de um arquivo de pacote .deb ou --contents (não instalado)
  • -L : lista os arquivos que pertencem a tal pacote.
  • -S : exibe quais arquivos foram copiados para o sistema após a instalação do pacote.
  • -s : exibe o status do pacote.(instalado no sistema)
  • -p : exibe informações detalhadas sobre pacote já instalado.
  • --get-selections : lista todos os pacotes instalados.
  • -I : mostra informações sobre um pacote não instalado.

Exemplos:

Instala o pacote 'ldap-utils' através de um arquivo de pacote .deb:

# dpkg -i ldap-utils_2.4.21-0ubuntu5.2_i386.deb

Expurga o pacote slapd:

# dpkg -P slapd

Remove o pacote samba sem remover seus arquivos:

# dpkg -r samba

Mostra o conteúdo do arquivo de pacote ldap-utils_2.4.21-0ubuntu5.2_i386.deb:

# dpkg -c ldap-utils_2.4.21-0ubuntu5.2_i386.deb

Mostra detalhes sobre o pacote samba, que já está instalado:

# dpkg -p samba

dpkg-reconfigure

É usado para imprimir pacotes que exigem uma interação de configuração com o usuário.

Esse comando é usado para ajudar o usuário na instalação e configuração de algum pacote.

Exemplo:

dpkg-reconfigure tzdata (mostra a tela de configuração do timezone)

dpkg-reconfigure keyboard-configuration (configuração do teclado)

Não tem muitas opções, basta saber só o básico.

dselect

É uma interface gráfica do apt, em modo texto, seleciona os pacotes para remover, instalar.

apt-get

Os comandos do apt tem um repositório, um conjunto de URL, onde ele consulta os pacotes e softwares que se pretende instalar ou remover.

Gerenciador de arquivos e dependências de pacotes através de repositórios do Debian, este gerenciador consulta os dados de /etc/apt/sources.list.

Toda vez que eu executo o comando apt ele vai consultar a base de dados, no sources.list, aonde que está aquele pacote, qual a ultima versão e vai fazer o update, download e instalação do pacote.

Ele toma conta de tudo, das dependências do pacote, faz o download de tudo e a instalação de tudo, tendo como principal beneficio a resolução e instalação de dependências.

# apt-get update (obtém informações atualizadas das fontes)

# apt-get upgrade (realiza a atualização de todos os pacotes)

# apt-get dist-upgrade (realiza a atualização de todos os pacotes, desde que não haja quebra de dependências)

# apt-get install (instala um pacote e suas dependências a partir de repositórios que estão listados dentro de /etc/apt/sources.list)

Exemplos:

# apt-get install

apt-get install zsh (instala esse pacote, verifica a versão mais atual, a origem, de onde ele vai fazer download e quais os pacotes dependentes).

Opções:
  • -s : simula a instalação do pacote.
  • -d: apenas faz o download dos pacotes para o diretório /var/cache/apt/archives/.
  • -y : assume como “Yes” todas as respostas de instalação.
  • --reinstall : reinstala um pacote.

# apt-get remove (remove o pacote mas mantem alguns arquivos de configuração)

# apt-get purge (remove o pacote e os arquivos de configuração)

# apt-get check (verifica as consistencias checa a base de dados do gerenciador de pacotes)

# apt-get clean (remove algum arquivo temporário e faz uma limpeza na base de dados)

# apt-get --download-only install zsh (faz o download do pacote, não instala)

O download fica no caminho: /var/cache/apt/archives

# apt-cache (comando utilizado para mostrar as informações que ele tem na base de dados dele, na base de pacotes Debian dele)

# apt-cache pkgnames (lista de pacotes instalados no sistema)

# apt-cache show vim (mostra as informações do vim, dependências, descrição dele, e outras informações)

# apt-cache depends vim (mostra os pacotes que o vim depende, pacotes que ele precisa para o vim funcionar)
vim
  Depends: vim-common
  Depends: vim-runtime
  Depends: libacl1
  Depends: libc6
  Depends: libgpm2

# aptitude (ele também tem uma interface gráfica através de menus, mais complexa que o dselect)

É uma interface mais amigável para o apt. É possível visualizar a lista de pacotes disponíveis para instalação de uma forma muito organizada.

As opções do aptitude são as mesmas do apt-get.

Exemplos:

Instala o pacote samba através de um repositório:

# aptitude install samba

Atualiza a base da dados do apt:

# aptitude update

Remove o pacote samba:

# aptitude remove samba

# aptitude safe-upgrade (faz a mesma coisa que o apt-get dist-upgrade)

# aptitude search csh (pesquisa todos os pacotes que tem csh no nome dos pacotes, é bom que vc verifica qual o pacote ideal para se instalar)

# aptitude purge csh (remove o pacote csh e todos os arquivos de configuração)

# alien (ele converte e instala pacotes binários alien)
  • converte arquivos rpm em .deb e ao inverso.
  • instala tbm no sistema debian pacote que é rpm.

# ls *deb
zsh_5.1.1-3_amd64.deb

# alien -r zsh_5.1.1-3_amd64.deb (transforma esse pacote .deb em um pacote rpm para Red Hat)
zsh-5.1.1-4.x86_64.rpm generated

# alien -i zsh-5.1.1-4.x86_64.rpm (instala o pacote, o sistema Debian instala o pacote rpm, executa o dpkg)

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Trilha Filesystems Linux - Operação de Sistemas de Arquivos

Principais Comandos de Gestão e Prioridade de Processos no Linux

Sistema de gerenciamento de logs do Linux

Leitura recomendada

Linux, uma história sem fim!

Convertendo novos usuários ao Linux

Porque migrar para o Linux - No meu caso também, preguiça

Trabalhando com coringas, filtros e expressões regulares no shell

História do GNU/Linux: 1965 assim tudo começou!

  
Comentários
[1] Comentário enviado por fabio em 21/11/2018 - 04:45h

Boa, obrigado por compartilhar!

[2] Comentário enviado por amaurybsouza em 21/11/2018 - 07:08h

Que bom que você gostou, @fabio. Tô ajudando a galera com o que aprendi, esse tópico de gerenciamento de pacotes Debian é cobrado pela certificação LPI-1.

[3] Comentário enviado por rogeriovc1000 em 29/11/2018 - 10:50h

gostei muito deste tópico, parabéns ao autor.

[4] Comentário enviado por amaurybsouza em 29/11/2018 - 12:37h


[3] Comentário enviado por rogeriovc1000 em 29/11/2018 - 10:50h

gostei muito deste tópico, parabéns ao autor.


Obrigado, estou à disposição.

[5] Comentário enviado por ensabr em 10/12/2018 - 03:20h

Olá gostei desta postagem ... mas ainda estou em dúvida: Afinal no terminal aparece o simbolo $ mas não localizei a linha que aparece o # ???? grato!

[6] Comentário enviado por amaurybsouza em 10/12/2018 - 08:52h


[5] Comentário enviado por ensabr em 10/12/2018 - 03:20h

Olá gostei desta postagem ... mas ainda estou em dúvida: Afinal no terminal aparece o simbolo $ mas não localizei a linha que aparece o # ???? grato!

Olá @ensabr, tudo bom?

O simbolo # aparece quando você está logado como root, e o simbolo $ aparece quando você está logado como usuário comum. Era essa a sua dúvida?

Fico à disposição.

[7] Comentário enviado por pinduvoz em 10/12/2018 - 16:21h

Muito bom. Fou guardar nos meus links de consulta.

[8] Comentário enviado por pinduvoz em 10/12/2018 - 16:24h


[5] Comentário enviado por ensabr em 10/12/2018 - 03:20h

Olá gostei desta postagem ... mas ainda estou em dúvida: Afinal no terminal aparece o simbolo $ mas não localizei a linha que aparece o # ???? grato!


O # aparece quando você usar o terminal com root. Se usa Ubuntu ou outra distro sem conta de root, você pode se logar no terminal como root com o comando "sudo su". Teste para ver.

[9] Comentário enviado por royalhc em 09/02/2019 - 18:24h

Artigo objetivo.
Muito bom!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts