Pacotes em DEBIAN - Parte I (Pacotes, Repositórios e Gerenciadores de Pacotes.)

Saudações, caros leitores cibernéticos,

Esta será a primeira publicação de um série de 10 relacionado ao Estudo de Pacote, que são de extrema importância para qualquer usuário de Sistemas operacionais GNU / Linux em geral, mas focado em Distribuição DEBIAN.

Pacotes DEBIAN

Nesta primeira parte, vamos nos concentrar no conceitual: Pacotes, Repositórios e Gerenciadores de Pacotes.

  • Pacotes

Um pacote de software em um Sistema operacional GNU / Linux geralmente é um Arquivo zip que possui uma estrutura interna predefinida que facilita e permite que seja manipulado por Ferramentas de gerenciamento de software (gerenciadores de pacotes) para conseguir sua compilação e / ou instalação, atualização e / ou eliminação no Sistema Operacional, de forma confortável, segura, estável e centralizada. Um pacote é compilável se sua instalação é baseada em seu código fonte diretamente (Exm. * .Tar.gz) o instalável se você fizer isso em binários já compilados para uma certa arquitetura ou plataforma (Exm. * .Deb).

A maioria dos pacotes vem com seu documentação incluída, Seu scripts de pré e pós-instalação, Seu arquivos de configuração inicial, Seu arquivos de recursose sua binários ou código-fonte com tudo que você precisa se for para ser compilado.

A maioria dos formatos de pacote vem com seus correspondentes Ferramentas de gerenciamento de software, os mais conhecidos são os .deb criado para a DEBIAN Distro e todos os seus derivados, e .rpm criado pela Red Hat para sua própria Distro e derivado como Fedora e Open SUSE. Há também o pacotes compiláveis Gentoo .ebuilds.

O fato de um pacote ter sido criado para uma determinada Distro não implica que ele só possa ser usado naquela Distro ou derivados, já que basta ter ferramentas especializadas em qualquer outra Distro para o Gerenciamento desses formatos poder utilizá-los. Entre essas ferramentas, temos: Dpkg, Apt-get, Aptitude, RPM, Emerge, Alíen, entre outros).

Cada Distro mantém seu parcelas em Repositórios, tanto na mídia quanto CD/DVD como em servidores remotos, o que permite atualizar e instalar pela rede (Internet) todo ou parte do sistema operacional de um localização segura e confiável (repositórios oficiais) para evitar ter que procurar por servidores desconhecidos (e inseguros), a menos que seja estritamente necessário.

Cada distro geralmente contribui com seu próprio pacotes de segurança (patches) e aprimoramentos (atualizações), a fim de disponibilizar para seus Comunidades de usuários grande quantidade de software perfeitamente funcional integrado ao sistema operacional. E quanto ao dependências entre cada pacote, eles geralmente ser gerenciado automaticamente para evitar problemas potenciais Usuários menos experientes.

Compilar ou instalar? A coisa boa sobre compilar Ao instalar, pode-se dizer que o principal é a possibilidade de especificar opções de compilação para o seu sistema e softwares utilizados que permitam melhor aproveitamento dos recursos e se ajustem às preferências do usuário / administrador, e o mal quão lento e complicado esse processo pode ser. Desde geralmente, o instalar um pacote (por exemplo * .deb) é muito rápido e fácilMas geralmente não ficam bem atualizados ou ajustados à Distribuição de nosso uso ou aos Recursos de nossos Equipamentos de Informática.

Se você quiser saber mais sobre o Pacotes DEBIAN Deixo os seguintes links abaixo para sua leitura detalhada:

  1. DEBIAN - Pacotes
  2. Canto do Desenvolvedor Debian
  3. Guia do Novo Desenvolvedor Debian
  4. Guia de criação de pacotes Debian
  • Repositórios

Repositórios são grandes Servidores (externos / internos) eles agem como Bancos de dados que hospedam os aplicativos (pacotes) de que nossos sistemas operacionais baseados em Linux precisam, já sejam antigo, atual, novo ou em desenvolvimento, que são instalados usando um Gerenciador de pacotes. Tudo isso com o propósito de manter o sistema operacional atualizado especialmente em questões de patches de segurança. Repositórios podem ser de dois (2) tipos: oficial e não oficial.

Sistemas operacionais baseados em Linux (Distros) Eles costumam ter um arquivo no qual a lista de Repositórios (oficiais ou não) que podemos acessar através do Gerenciador de pacotes para Download, instalação, atualização ou remoção. Este arquivo geralmente está localizado no local / etc / package_manager_name / onde "Package_manager_name" geralmente é o nome do gerenciador de pacotes da Distro. Por exemplo em DEBIAN estaria em /etc/apt/sources.list.

Os Repositórios Oficiais armazenam os pacotes dos aplicativos que nossa Distro oferece suporte. Eles são sempre divididos em uma estrutura (de ramos e versões) que, dependendo das políticas de seus criadores, garantem (garantem) sob um protocolo de revisão muito rigoroso que todos os pacotes que contêm estão em ótimo estado e não representam riscos de segurança ou estabilidade para o sistema, e novos ou em desenvolvimento em ramificações separadas para os usuários mais avançados ou experientes.

No caso do DEBIAN, os Repositórios possuem 3 ramos:

  • A Principal: Branch que armazena todos os pacotes incluídos na distribuição oficial do Debian que são gratuitos de acordo com a Diretrizes de Software Livre Debian. A distribuição oficial do Debian é composta inteiramente por este ramo.
  • Contribuição (contribuição): Filial que armazena os pacotes cujos criadores deram a eles uma licença gratuita, mas eles têm dependências de outros programas que não são gratuitos.
  • Não Livre: Filial que armazena pacotes que possuem alguma condição de licença onerosa que restringe seu uso ou redistribuição.

Os repositórios DEBIAN são divididos em versões:

  • OldStable (Old Stable):  Versão que armazena pacotes pertencentes à antiga versão estável de DEBIAN. Atualmente, pertence à versão Wheezy.
  • Estábulo:  Versão que armazena os pacotes pertencentes à versão estável atual do DEBIAN. Atualmente, pertence à versão Jessie.
  • Teste:  Versão que armazena os pacotes pertencentes à futura versão estável de DEBIAN. Atualmente, pertence à versão Stretch.
  • Instável: Versão que armazena pacotes pertencentes a pacotes futuros que estão continuamente em desenvolvimento e teste, que podem eventualmente pertencer à versão Testando por DEBIAN. Isso sempre pertence à versão do SID.

Nota: Muitas vezes, o nome da versão geralmente vem acompanhado do prefixo "-Atualizações" o "-Atualizações propostas" para destacar que disse pacotes armazenados lá, embora pertençam a essa versão são geralmente mais atualizado, já que eles vêm mais recentemente do próxima versão superior. Em outras ocasiões, quando se trata de Repositório de Segurança o prefixo é geralmente «/ Atualizações».

Os repositórios DEBIAN podem ser filtrados por seu conteúdo:

  • deve: Repositórios que conterão apenas pacotes compilados.
  • deb-src: Repositórios que irão conter apenas os códigos-fonte dos pacotes compilados disponíveis.

Exemplos de repositórios para DEBIAN:


#######################################################
# REPOSITORIOS OFICIALES DE LINUX DEBIAN 8 (JESSIE)
deb http://ftp.us.debian.org/debian/ jessie main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
deb http://ftp.us.debian.org/debian/ jessie-updates main contrib non-free
# deb http://ftp.us.debian.org/debian/ jessie-proposed-updates main contrib non-free
# deb http://ftp.us.debian.org/debian/ jessie-backports main contrib non-free
# deb http://www.deb-multimedia.org jessie main non-free
# aptitude install deb-multimedia-keyring
# ####################################################

Nota: Essas linhas que começam com o personagem »#« eles são desativados no Gerenciador de pacotes. Este personagem também é usado para inserir comentários tal como Descrições de linha de repositório ou a linha de comando que deve ser usada para adicione as Chaves do Repositório descritivo.

  • Gestores de Pacotes

No passado, muitos pacotes (programas) do Linux eram distribuídos como código-fonte e precisavam ser transformados (compilados) no programa ou conjunto de programas requerido, além de sua respectiva documentação (páginas de manual), arquivos de configuração e tudo o mais que fosse necessário. . No entanto, atualmente, a maioria das distros Linux usam pacotes (programas pré-fabricados ou conjuntos de programas), que estão prontos para serem instalados na referida distribuição.

Com estes Ferramentas de gerenciamento de pacotes você pode facilmente conhecer, baixar, instalar, atualizar e excluir qualquer pacotee. No nosso caso para DEBIANO vamos nos concentrar em Gestores de pacotes Apt-get, Aptitude, Apt e DPKG. que usa DEBIAN e as Distros derivadas de DEBIAN (como o Ubuntu).

Embora a função de gerenciamento de pacote básico seja muito mais poderosa por meio de comandos do Terminal (Console), os desenvolvedores Linux que estão sempre tentando fazer o melhor para tornar o Linux mais fácil de usar, complementaram estes ferramentas básicas com outros Ferramentas com interfaces gráficas de usuário (ferramentas GUI), que buscam reduzir as possíveis complexidades das ferramentas básicas para não complicar os consumidores finais.

Mas basicamente em todos eles podem realizar as mesmas operações básicas já mencionadas nos pacotes. Embora os básicos tenham funcionalidade de linha de comando, as ferramentas adicionais podem oferecer interfaces mais amigáveis. E todos eles podem recuperar pacotes da Internet, já que as informações dos pacotes instalados geralmente são mantidas em um único banco de dados.

Abaixo estão os comandos de comando mais úteis e comuns em cada um dos Gestores de Pacotes:


Apt-get:

Actualizar Listas: apt-get update
Chequear actualización de Listas: apt-get check
Instalar paquete: apt-get install nombre_paquete
Reinstalar paquete: apt-get install --reinstall nombre_paquete
Actualizar Distro: apt-get upgrade / apt-get dist-upgrade / apt-get full-upgrade
Actualizar paquete: apt-get upgrade nombre_paquete
Actualizar paquetes usando dselect: apt-get dselect-upgrade
Eliminar paquetes: apt-get remove / apt-get autoremove
Purgar paquetes: apt-get purge
Conocer paquete: apt-cache show nombre_paquete / apt-cache showpkg nombre_paquete
Listar paquetes: apt-cache search nombre_paquete
Listar dependencias de un paquete: apt-cache depends nombre_paquete
Listar paquetes instalados: apt-cache pkgnames --generate / apt-show-versions
Validar dependencias incumplidas de un paquete: apt-cache unmet nombre_paquete
Configurar dependencias de un paquete: apt-get build-dep nombre_paquete
Descargar paquetes: apt-get source nombre_paquete
Corregir problemas post-instalación de paquetes: apt-get install -f
Forzar ejecución de orden de comando: apt-get comando  -y
Eliminar descargas de paquetes: apt-get clean
Eliminar paquetes obsoletos y sin usos: apt-get autoclean
Otros importantes: apt-file update / apt-file search nombre_paquete / apt-file list nombre_paquete

Nota: Para mayor información sobre este comando ejecute la orden de comando: man apt-get  
 

Aptitude:

Actualizar Listas: aptitude update
Instalar paquete: aptitude install nombre_paquete
Reinstalar paquete: aptitude reinstall nombre_paquete
Actualizar Distro: aptitude upgrade / aptitude safe-upgrade / aptitude full-upgrade
Actualizar paquete: aptitude upgrade nombre_paquete
Eliminar paquetes: aptitude remove
Purgar paquetes: aptitude purge
Listar paquetes: aptitude search nombre_paquete
Listar paquetes instalados / rotos: apt search [*] | grep "^i" / apt search [*] | grep "^B"
Configurar dependencias de un paquete: aptitude build-dep nombre_paquete
Descargar paquetes: aptitude download nombre_paquete
Corregir problemas post-instalación de paquetes: aptitude install -f
Forzar ejecución de orden de comando: aptitude comando  -y
Eliminar descargas de paquetes: aptitude clean
Eliminar paquetes obsoletos y sin usos: aptitude autoclean
Otros importantes: aptitude (un)hold, aptitude (un)markauto, why, why-not
Conocer paquete:
aptitude show nombre_paquete
aptitude show "?installed ?section(fonts)" | egrep '(Paquete|Estado|Versión)'
aptitude show "?not(?installed) ?section(fonts)" | egrep '(Paquete|Estado|Versión)'
aptitude show "?section(fonts)" | egrep '(Paquete|Estado|Versión)'

Nota: Para mayor información sobre este comando ejecute la orden de comando: man aptitude  

Apt:

Actualizar Listas: apt update
Instalar paquete: apt install nombre_paquete
Reinstalar paquete: apt install --reinstall nombre_paquete
Actualizar Distro: apt upgrade / apt full-upgrade
Actualizar paquete: apt upgrade nombre_paquete
Eliminar paquetes: apt remove / apt autoremove
Purgar paquetes: apt purge
Conocer paquete: apt show nombre_paquete
Listar paquetes: apt search nombre_paquete
Listar paquetes instalados / actualizables: apt list --installed / apt list --upgradeable
Corregir problemas post-instalación de paquetes: apt install -f
Forzar ejecución de orden de comando: apt comando  -y
Eliminar descargas de paquetes: apt clean
Eliminar paquetes obsoletos y sin usos: apt autoclean
Otros importantes: apt edit-sources

Nota: Para mayor información sobre este comando ejecute la orden de comando: man apt

DPKG:

Instalar paquete: dpkg -i nombre_paquete
Eliminar paquete: dpkg -r nombre_paquete / dpkg --force -r nombre_paquete / dpkg --purge -r nombre_paquete
Purgar paquete: dpkg -P nombre_paquete
Descomprimir paquete: dpkg --unpack nombre_paquete
Conocer paquete: dpkg -c nombre_paquete / dpkg --info nombre_paquete / dpkg -L nombre_paquete
Buscar archivos de paquetes instalados: dpkg -S nombre_archivo
Configurar paquetes: dpkg --configure nombre_paquete / dpkg --configure --pending / dpkg --configure -a
Listar paquetes: dpkg -l patrón_búsqueda / dpkg --get-selections nombre_paquete / dpkg --get-selections | grep -v deinstall > lista-paquetes-actuales.txt

Bem, até agora neste post espero que o conteúdo seja útil para você.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Kavra kavra dito

    Uma nota ... gentoo .ebuilds não são pacotes propriamente ditos, são scripts que indicam como o pacote será instalado, geralmente do código-fonte com o pacote escolhido pelo desenvolvedor.

  2.   Chaparral dito

    Excelente informação. Vou mantê-lo junto com outras parcelas já publicadas no Debian porque eles serão muito úteis para mim. Agradeço ao autor por seu extraordinário trabalho e contribuições.

  3.   Melvin dito

    Excelente José Albert, você realmente se destacou, parabéns e continue nos guiando

  4.   Melvin dito

    Muito Bom José Albert continua a nos orientar parabéns

  5.   Melvin dito

    Artigo muito bom

  6.   Venturi dito

    Obrigado pela sua contribuição, embora tenha alguns erros. Uma pergunta por curiosidade, você é um desenvolvedor ou contribuidor Debian de alguma forma? Obrigado por divulgar a informação de como colaborar com o Debian, para meu gosto foi necessário citar a possibilidade de ajudar a colaborar nas sempre necessárias traduções ou revisões de traduções de pacotes, instaladores, página web, etc ... Você reserva o mesmo para entregas futuras.

    Saudações e incentivo à publicação.

  7.   Eng. José Albert dito

    Não! Não sou um Desenvolvedor Oficial ou Contribuidor direto da DEBIAN, embora tenha criado cerca de 2 pacotes individuais e muitos scripts para a referida Distribuição. E espero incluir o que você me disse em outro post. E obrigado pelo seu apoio!

    DEBIAN é minha Distro favorita!

    1.    Manuel "Venturi" Porras Peralta dito

      Como deve ser! 🙂

  8.   Alejandro Tor Mar dito

    Excelente artigo ... Parabéns, sou um amante do software livre e estudo ciência da computação e isso é muito útil
    Saudações de Bogotá

  9.   oscar dito

    Muito obrigado pelo seu tempo e paciência… e por compartilhar !!!

    uma saudação!
    Obrigado!

  10.   Eng. José Albert dito

    Muito obrigado por todos os comentários de apoio, parabéns e motivação!

  11.   Carlos Reis dito

    Obrigado, muito obrigado, pelo menos para nós que ainda sabemos muito sobre isso.

  12.   Balua dito

    Excelente, para arquivamento e consulta, obrigado pela contribuição.

  13.   Mais seguro dito

    Que bom material Antonio amigo, compreensível e de bom uso ...