O que é adequado e aptidão? e qual é a diferença real entre eles?

O que é adequado e aptidão? e qual é a diferença real entre eles?

Aptidão e apt-get são duas das ferramentas populares que lidam com o gerenciamento de pacotes. Ambos são capazes de lidar com todos os tipos de atividades em pacotes, incluindo instalação, remoção, pesquisa etc. Mas ainda existem diferenças entre as duas ferramentas que fazem os usuários preferem um ao outro. Quais são essas diferenças que fazem essas duas ferramentas a serem consideradas separadamente é o escopo deste artigo.

Diferença entre apt e aptidão

O que é Apt

Apt ou Ferramenta de embalagem avançada é um software gratuito e de código aberto que lida com a instalação e remoção de software graciosamente. Inicialmente foi projetado para o Debian's .Deb Pacotes, mas foi tornado compatível com o RPM Package Manager.

Apt é toda a linha de comando sem GUI. Sempre que invocado da linha de comando, além de especificar o nome do pacote a ser instalado, ele encontra esse pacote na lista configurada de fontes especificadas em '/etc/apt/fontes.lista' Juntamente com a lista de dependências para esse pacote e as classifica e as instala automaticamente junto com o pacote atual, permitindo que o usuário não se preocupe em instalar dependências.

É altamente flexível, permitindo que o usuário controla várias configurações facilmente, como: adicionar qualquer nova fonte para pesquisar pacotes, apting i.e. Marcando qualquer pacote indisponível durante a atualização do sistema, fazendo com que sua versão atual seja sua versão final instalada, "inteligente" atualização i.e. atualizando os pacotes mais importantes e deixando os menos importantes.

O que é aptidão?

Aptidão é o front-end para uma ferramenta de embalagem avançada que adiciona uma interface de usuário à funcionalidade, permitindo assim que um usuário procure interativamente um pacote e instale ou remova-o. Inicialmente criado para DeBain, a aptidão estende sua funcionalidade a distribuições baseadas em RPM também.

Sua interface de usuário é baseada em ncurses biblioteca que adiciona vários elementos a ela comumente visto na GUI's. Um dos seus destaques é que ele pode imitar a maioria dos argumentos da linha de comando de Apt-Get.

Em tudo, Aptidão é um gerente de pacotes de nível superior que abstraça detalhes de baixo nível e pode operar no modo interativo da interface de texto e até mesmo na linha de comando no modo não interativo.

Se você quiser saber o uso de apt e aptidão com exemplos do mundo real, você deve ir para os seguintes artigos.

  1. Aprenda 25 exemplos úteis em apt-get e apt-cache
  2. Aprenda o gerenciamento de pacotes Linux com aptidão e dpkg

Quais são as diferenças entre apt e aptidão?

Além da principal diferença é que Aptidão é um gerente de pacote de alto nível enquanto Apt é o gerenciador de pacotes de nível inferior, que pode ser usado por outros gerentes de pacotes de nível superior, outros destaques principais que separam esses dois gerentes de pacotes são:

  1. Aptidão é mais vasta em funcionalidade do que apt-get e integra funcionalidades de apt-get e suas outras variantes, incluindo APT-Mark e apt-cache.

Enquanto apt-get Lida com toda a instalação do pacote, up gradation, atualização do sistema, pacote de purga, resolução de dependências etc., Aptitude lida com muito mais coisas do que apt, incluindo funcionalidades de APT-Mark e apt-cache eu.e. Procurando um pacote na lista de pacotes instalados, marcando um pacote para ser instalado automaticamente ou manualmente, mantendo um pacote, tornando-o indisponível para graduação e assim por diante.

  1. Enquanto o APT-Get não tem interface do usuário, a Aptitude tem uma interface de usuário somente de texto e interativa

Apt-get Ser um gerenciador de pacotes de nível inferior é restrito apenas à linha de comando, enquanto a aptidão é uma ferramenta de nível superior, possui uma interface interativa apenas de texto padrão, juntamente com a opção de operação da linha de comando, inserindo os comandos necessários.

  1. Aptitude tem um melhor gerenciamento de pacotes do que o apt-get

Em muitas situações que envolvem a instalação, remoção e resolução de conflitos para pacotes, a aptidão prova seu valor em vez de apt-get. Algumas das situações incluem:

1. Ao remover qualquer pacote instalado, Aptidão removerá automaticamente pacotes não utilizados, enquanto apt-get precisaria do usuário especificar explicitamente isso adicionando opção adicional de '-auto-remove' ou especificação 'apt-get autoremove'.4

2. Para investigar mais sobre o motivo pelo qual certas ações estão sendo bloqueadas ou por que ou por que não uma determinada ação deve ser tomada, as ofertas de aptidão 'por que' e 'por que não' comandos.

Como: Aptitude pode encontrar o motivo para instalar um determinado pacote, olhando na lista de pacotes instalados e verificando se algum de seus pacotes sugeridos tiver uma dependências ou qualquer de suas dependências sugere que o pacote ou mais no.

$ aptitude Por que YAWS-WIKI Doc-Base sugere dhelp | dwww | Doc-central | Yelp | Khelpcenter4 p dwww depende do Apache2 | HTTPD-CGI P YAWS Oferece httpd-cgi p YAWS sugere guias-wiki 

Como aqui, ele procurou o motivo para instalar um pacote chamado 'Yaws-wiki' ser que é sugerido por uma dependência (Yaws) que fornece um pacote virtual (httpd-cgi) em qual pacote (Dwww) tem dependência e pacote (Dwww) é sugerido por um dos pacotes instalados nomeados 'Doc-Base'.

Este recurso está faltando em apt-get.

3. Enquanto apt-get provavelmente morreria em caso de ação conflitante em relação à instalação ou remoção do pacote com uma mensagem, Aptidão pode sugerir medidas possíveis para remover esse conflito.

Aptidão Fornece uma pesquisa poderosa que pode ser usada para pesquisar quase qualquer pacote não apenas no sistema, mas também em todo o repositório.

Enquanto apt-get precisa de outra variante de Apt eu.e. apt-cache Para procurar um pacote, a aptidão fornece uma maneira muito mais fácil e eficiente de procurar um pacote que seja instalado ou presente no repositório, mas ainda para ser instalado.

Pesquisando um pacote usando apt-cache vs aptitude

$ apt-cache pesquisa 'python' | Cabeça -n4 Kate - poderoso editor de texto KCACHEGRind Converters - Conversores de formato para ferramenta de visualização do perfil do KCACHEGRind - ferramenta de geometria interativa para KDE Python -kde4 - Python Bindings for the KDE Development Platform $ Aptitude Search 'Python' | Cabeça -n4 I Bpython - Interface sofisticada para o intérprete Python P bpython -gtk - Interface sofisticada para o intérprete Python P Bpython -urwid - interface sofisticada para o intérprete Python P Bpython - Interface Fancy para o Interpreter Python3 

Aqui, por padrão, ambos apt-cache e aptidão Procure um pacote em toda a lista de pacotes no repositório, mas a saída de aptidão mostra se o pacote está instalado no sistema ou não, dando uma bandeira por pacote que aqui está 'P' indicando que o pacote está presente, mas não instalado e 'eu' o que indica que o pacote está instalado, enquanto o APT-Cache apenas lista o pacote e seus detalhes de uma linha sem dizer se o pacote é instalado ou não.

Alguns outros exemplos de pesquisa avançada de pacotes com aptidão

1. Procurando um pacote em repositório com 'Python2.7 ' em nome do pacote e '2.7 ' em sua descrição.

$ aptitude pesquisa '~ npython2.7 ~ D2.7 ' P IDLE-Python2.7 - IDE para Python (V2.7) Usando tknter i libpython2.7 - Biblioteca de tempo de execução compartilhada do Python (versão 2.7 p libpython2.7: I386 - Biblioteca de tempo de execução compartilhada do Python (versão 2.7 p libpython2.7 -dbg - construção de depuração do intérprete Python (ver P libpython2.7 -dbg: i386 - construção de depuração do intérprete Python (ver i a libpython2.7 -Dev - Arquivos de cabeçalho e uma biblioteca estática para Pyt P libpython2.7 -Dev: i386 - arquivos de cabeçalho e uma biblioteca estática para pyt i libpython2.7 -minimal - subconjunto mínimo da linguagem Python (ver P libpython2.7 -minimal: i386 - subconjunto mínimo da linguagem python (ver i libpython2.7-stdlib-Lan P libpython2 orientado a objetos de alto nível interativo.7-stdlib: i386-Lan P libpython2 orientado a objetos de alto nível interativo.7 -testsuite - testsuite para a biblioteca padrão python i python2.7-Lan P Python2, orientado a objetos de alto nível interativo.7: i386-LAN P Python2, orientado a objetos de alto nível interativo.7 -dbg - construção de depuração do intérprete Python (ver P python2.7 -dbg: i386 - Construição de debug do intérprete Python (ver eu um python2.7 -Dev - Arquivos de cabeçalho e uma biblioteca estática para Pyt P Python2.7 -Dev: i386 - Arquivos de cabeçalho e uma biblioteca estática para Pyt P Python2.7-doc-documentação para o objeto de alto nível ou p python2.7 -Exemplos - Exemplos para a linguagem Python (V2.7) i python2.7 -minimal - subconjunto mínimo da linguagem Python (ver P python2.7 -minimal: i386 - subconjunto mínimo da linguagem python (ver 

Aqui '~ n' indica nome e '~ d' indica descrição. Outra forma do mesmo comando é:

$ Pesquisa de aptidão '?Nome (Python2.7) ?Descrição (2.7) ' 
Algumas outras bandeiras incluem:
  1. ~ i ou ?instalado(): Pesquisando um pacote apenas na lista de pacotes instalados.
  2. ~ U ou ~ atualizável: Lista todos os pacotes que são atualizáveis ​​com suas mais recentes versões disponíveis.
  3. ~ E ou ?Essencial(): Esses pacotes instalados ou disponíveis, que são essenciais.
$ versões de aptidão '?Atualizável '| Cabeça -n 12 Pacote apache2: pH 2.4.7-1Buntu4 Confiável 500 pH 2.4.7-1Buntu4.5 Segurança de confiança 500 IH 2.4.7-1Buntu4.8 100 pH 2.4.7-1Buntu4.9 Updates confiáveis ​​500 pacote Apache2-bin: P A 2.4.7-1Buntu4 Trusty 500 P A 2.4.7-1Buntu4.5 Segurança de confiança 500 I A 2.4.7-1Buntu4.8 100 P A 2.4.7-1Buntu4.9 Updates confiáveis ​​500 

Como uma pequena lista mostrada aqui de 3 pacotes com versão instalada (indicada com 'eu') e sua versão atualizável presente (indicado com 'P').

2. Encontrar todos os pacotes que fornecem um serviço específico

Para encontrar todos os pacotes que fornecem smtp serviço:

$ Pesquisa de aptidão '?fornece (smtp) ' p libghc-smtpclient-dev-biblioteca de clientes smtp simples haskell p libghc-smtpclient-dev: i386-biblioteca de clientes smtp haskell smtp p libghc-smtpclient-prof-biblioteca de clientes smtp simples; Profil P libghc-smtpclient-prof: i386-Biblioteca de clientes simples Haskell SMTP; Profil P syslog-ng-mod-smtp-Daemon de log do sistema aprimorado (smtp plugi p syslog-ng-mod-smtp: i386-Daemon de log de sistema aprimorado (plugi smtp 

3. Encontrando todos os pacotes que sugerem um determinado pacote

Como aqui, listamos todos os pacotes que sugerem 'gcc' pacote.

$ Aptitude Search '~ dSuggests: GCC' | Cabeça -n10 P Bochs-Emulador de PC IA-32 P Bochs: I386-IA-32 PC emulador P CPP-4.4 - GNU C Precessor P CPP -4.4: I386 - GNU C Precessor P CPP -4.6 - GNU C Precessor P CPP -4.6: I386 - GNU C Pré -processador P CPP -4.7 - GNU C Precessor P CPP -4.7: i386 - GNU C pré -processador P CPP -4.7-brand-linux-gnueabi-GNU C pré-processador P CPP-4.7-brand-linux-gnueabi: i386-GNU C pré-processador 

Conclusão

Então, na maioria dos casos, sintaxe de Aptidão é mantido quase o mesmo que o de apt-get, Para fazer com que os usuários de apt-get tivessem menos dor na migração para a aptidão, mas além disso, muitos recursos poderosos são integrados em aptidão que tornam o único a ser escolhido. Além dessas diferenças que destacamos, se você encontrar outras diferenças interessantes entre esses dois gerentes de pacotes, mencione -os em seus comentários.