Top Qs
Linha do tempo
Chat
Contexto
APT (software)
Da Wikipédia, a enciclopédia livre
Remove ads
A Advanced Package Tool (APT) é uma interface de usuário de software livre que trabalha com bibliotecas principais para lidar com a instalação e remoção de software no Debian e em distribuições Linux baseadas no Debian.[4] A APT simplifica o processo de gerenciamento de software em sistemas de computador do tipo Unix automatizando a recuperação, configuração e instalação de pacotes de software, seja a partir de arquivos pré-compilados ou compilando o código-fonte.[4]
Remove ads
Uso
Resumir
Perspectiva
A APT é uma coleção de ferramentas distribuídas em um pacote chamado apt. Uma parte significativa da APT é definida em uma biblioteca de funções em C++; a APT também inclui programas de linha de comando para lidar com pacotes, que utilizam a biblioteca. Três desses programas são apt, apt-get e apt-cache. Eles são comumente usados em exemplos porque são simples e onipresentes. O pacote apt é de prioridade "importante" em todas as versões atuais do Debian e, portanto, está incluído em uma instalação padrão do Debian. A APT pode ser considerada um front-end para o dpkg, mais amigável do que o antigo front-end dselect. Enquanto o dpkg executa ações em pacotes individuais, a APT gerencia as relações (especialmente dependências) entre eles, bem como o fornecimento e o gerenciamento de decisões de versionamento de nível superior, como rastreamento de lançamentos e supressão de atualização.
A APT é frequentemente aclamada como um dos melhores recursos do Debian,[por quem?][5][6][7][8] o que os desenvolvedores do Debian atribuem aos rígidos controles de qualidade na política do Debian.[9][10]
Uma característica importante da APT é a maneira como ela chama o dpkg — ela faz a ordenação topológica da lista de pacotes a serem instalados ou removidos e chama o dpkg na melhor sequência possível. Em alguns casos, ela utiliza as opções --force do dpkg. No entanto, ela só faz isso quando é incapaz de calcular como evitar o motivo pelo qual o dpkg exige que a ação seja forçada.
Instalando software
O usuário indica um ou mais pacotes a serem instalados. Cada nome de pacote é expressado apenas como a parte do nome do pacote, não como um nome de arquivo totalmente qualificado (por exemplo, em um sistema Debian, libc6 seria o argumento fornecido, não libc6_1.9.6-2.deb). Notavelmente, a APT obtém e instala automaticamente os pacotes dos quais o pacote indicado depende (se necessário). Esta foi uma característica distintiva original dos sistemas de gerenciamento de pacotes baseados em APT, pois evitava falhas de instalação devido à falta de dependências, um tipo de inferno de dependências.
Outra distinção é a recuperação de pacotes de repositórios remotos. A APT usa um arquivo de configuração de localização (/etc/apt/sources.list) para localizar os pacotes desejados, que podem estar disponíveis na rede ou em uma mídia de armazenamento removível, por exemplo, e recuperá-los, além de obter informações sobre pacotes disponíveis (mas não instalados).
A APT fornece outras opções de comando para substituir decisões tomadas pelo sistema de resolução de conflitos do apt-get. Uma opção é forçar uma versão específica de um pacote. Isso pode rebaixar (downgrade) um pacote e tornar o software dependente inoperante, portanto, o usuário deve ter cuidado.
Finalmente, o mecanismo apt_preferences permite que o usuário crie uma política de instalação alternativa para pacotes individuais.
O usuário pode especificar pacotes usando uma expressão regular POSIX.
A APT pesquisa sua lista de pacotes em cache e lista as dependências que devem ser instaladas ou atualizadas.
A APT recupera, configura e instala as dependências automaticamente.
Gatilhos (triggers) são o tratamento de ações diferidas.
Update, upgrade e dist-upgrade
Os modos de uso do apt e apt-get que facilitam a atualização de pacotes instalados incluem:
updateé usado para ressincronizar os arquivos de índice de pacotes a partir de suas fontes. As listas de pacotes disponíveis são obtidas do(s) local(is) especificado(s) em/etc/apt/sources.list. Por exemplo, ao usar um arquivo Debian, este comando recupera e verifica os arquivosPackages.gz, para que as informações sobre pacotes novos e atualizados estejam disponíveis.upgradeé usado para instalar as versões mais recentes de todos os pacotes atualmente instalados no sistema a partir das fontes enumeradas em/etc/apt/sources.list. Pacotes atualmente instalados com novas versões disponíveis são recuperados e atualizados; em nenhuma circunstância os pacotes atualmente instalados são removidos, ou pacotes não instalados recuperados e instalados. Novas versões de pacotes atualmente instalados que não podem ser atualizados sem alterar o status de instalação de outro pacote serão deixados em sua versão atual.full-upgrade(apt) edist-upgrade(apt-get), além de executar a função deupgrade, também lidam de forma inteligente com a mudança de dependências com novas versões de pacotes;apteapt-gettêm um sistema de resolução de conflitos "inteligente" e tentarão atualizar os pacotes mais importantes em detrimento dos menos importantes, se necessário. O arquivo/etc/apt/sources.listcontém uma lista de locais dos quais recuperar os arquivos de pacote desejados.[4] O aptitude tem um recursodist-upgrademais inteligente chamadofull-upgrade.[11]
Remove ads
Configuração e arquivos
/etc/apt contém as pastas e arquivos de configuração da APT.
apt-config é o programa de consulta de configuração da APT.[12] apt-config dump mostra a configuração.[13]
Arquivos
/etc/apt/sources.list:[14] Locais de onde buscar pacotes./etc/apt/sources.list.d/: Fragmentos adicionais da lista de fontes./etc/apt/apt.conf: Arquivo de configuração da APT./etc/apt/apt.conf.d/: Fragmentos do arquivo de configuração da APT./etc/apt/preferences.d/: Diretório com arquivos de preferências de versão. É aqui que o "pinning" é especificado, ou seja, uma preferência para obter certos pacotes de uma fonte separada ou de uma versão diferente de uma distribuição./var/cache/apt/archives/: Área de armazenamento para arquivos de pacote recuperados./var/cache/apt/archives/partial/: Área de armazenamento para arquivos de pacote em trânsito./var/lib/apt/lists/: Área de armazenamento para informações de estado para cada recurso de pacote especificado emsources.list/var/lib/apt/lists/partial/: Área de armazenamento para informações de estado em trânsito.
Remove ads
Fontes
Resumir
Perspectiva
A APT depende do conceito de repositórios para encontrar software e resolver dependências. Para a APT, um repositório é um diretório contendo pacotes junto com um arquivo de índice. Isso pode ser especificado como um local em rede ou CD-ROM. Desde 14 de agosto de 2021[update] o projeto Debian mantém um repositório central de mais de 50.000 pacotes de software prontos para download e instalação.[15]
Qualquer número de repositórios adicionais pode ser adicionado ao arquivo de configuração sources.list da APT (/etc/apt/sources.list) e então ser consultado pela APT. Front-ends gráficos geralmente permitem modificar o sources.list de forma mais simples (apt-setup). Uma vez que um repositório de pacotes tenha sido especificado (como durante a instalação do sistema), os pacotes nesse repositório podem ser instalados sem especificar uma fonte e serão mantidos atualizados automaticamente.
Além dos repositórios de rede, discos compactos e outras mídias de armazenamento (pendrive USB, discos rígidos...) também podem ser usados, usando apt-cdrom[16] ou adicionando URI file:/[17] ao arquivo de lista de fontes. O apt-cdrom pode especificar uma pasta diferente de um CD-ROM, usando a opção -d (ou seja, um disco rígido ou um pendrive USB). Os CDs do Debian disponíveis para download contêm repositórios Debian. Isso permite que máquinas sem rede sejam atualizadas. Também é possível usar o apt-zip.
Problemas podem aparecer quando várias fontes oferecem o(s) mesmo(s) pacote(s). Sistemas que têm tais fontes possivelmente conflitantes podem usar o "APT pinning" para controlar quais fontes devem ser preferidas.
APT pinning
O recurso APT pinning permite que os usuários forcem a APT a escolher versões específicas de pacotes que podem estar disponíveis em versões diferentes de repositórios diferentes. Isso permite que os administradores garantam que os pacotes não sejam atualizados para versões que possam entrar em conflito com outros pacotes no sistema, ou que não tenham sido suficientemente testados quanto a mudanças indesejadas.
Para fazer isso, os pins no arquivo preferences da APT (/etc/apt/preferences) devem ser modificados,[18] embora front-ends gráficos frequentemente tornem o pinning mais simples.
Remove ads
Front-ends
Resumir
Perspectiva

Vários outros front-ends para a APT existem, fornecendo funções de instalação mais avançadas e interfaces mais intuitivas. Estes incluem:
- Synaptic, uma interface gráfica do usuário GTK
- Ubuntu Software Center, uma interface gráfica do usuário GTK desenvolvida pelo projeto Ubuntu
- aptitude, um cliente de console com interfaces CLI e TUI baseada em ncurses
- Adept package manager, uma interface gráfica do usuário para KDE (deb, rpm, bsd)
- PackageKit, um front-end D-Bus, mantido pelo freedesktop.org, alimenta o GNOME Software e o KDE Discover.
- GDebi, uma ferramenta baseada em GTK patrocinada para o Ubuntu. (Há também uma versão Qt, disponível nos repositórios do Ubuntu como gdebi-kde.)
- apt-cdrom, uma maneira de adicionar um novo CDROM à lista de repositórios disponíveis da APT (sources.lists). É necessário usar o apt-cdrom para adicionar CDs ao sistema APT, isso não pode ser feito manualmente.
- apt-zip, uma maneira de usar a APT com mídia removível, especificamente pendrives USB.
- aptURL, um pacote de software Ubuntu que permite que aplicativos de usuário final instalem com um único clique através de um navegador.[19][20]
- Cydia, um gerenciador de pacotes para iOS com jailbreak baseado na APT (portada para iOS como parte do projeto Telesphoreo).[21][22]
- Sileo, como o Cydia, um gerenciador de pacotes para iOS com jailbreak baseado em versões mais recentes da APT (portada para iOS pela equipe Electra)
- gnome-apt, um front-end gráfico baseado em widgets GTK/GNOME. Desenvolvido por Havoc Pennington[23]
- Muon discover (anteriormente Muon software center), uma interface gráfica do usuário baseada em Qt
- Hildon application manager (Maemo application), um front-end Maemo
- apticron, um serviço projetado para ser executado via cron [en] para enviar avisos por e-mail de atualizações pendentes para um administrador de sistema (sysadmin).
- APT Daemon, um front-end que roda como um serviço para permitir que usuários instalem software através do PolicyKit [en] e é, por sua vez, a estrutura usada pelo Ubuntu software center (juntamente com o gerenciador de software do Linux Mint).
- Package installer, parte do MX Linux.
- Apt-offline: Uma maneira conveniente de fazer qualquer alteração não conteinerizada disponível em qualquer instalação Linux do tipo Debian sem usar uma conexão direta com a Internet. No entanto, uma conexão direta temporária pode ser necessária, como para instalar a Apt-offline em alguns dos tipos relevantes de Linux, e para adicionar os de PPAs à lista de fontes.
Os front-ends da APT podem:
- procurar por novos pacotes;
- atualizar pacotes;
- instalar ou remover pacotes e
- atualizar todo o sistema para uma nova versão.
Os front-ends da APT podem listar as dependências dos pacotes sendo instalados ou atualizados, perguntar ao administrador se os pacotes recomendados ou sugeridos pelos pacotes recém-instalados também devem ser instalados, instalar automaticamente as dependências e executar outras operações no sistema, como remover arquivos e pacotes obsoletos.
Remove ads
História
Resumir
Perspectiva
O esforço original que levou ao programa apt-get foi o projeto de substituição do dselect conhecido pelo seu codinome Deity.[24] Este projeto foi encomendado em 1997 por Brian White, o gerente de lançamento do Debian na época. A primeira versão funcional do apt-get foi chamada dpkg-get e destinava-se apenas a ser um programa de teste para as funções da biblioteca principal que sustentariam a nova interface de usuário (UI).[25]
Grande parte do desenvolvimento original da APT foi feita no Internet Relay Chat (IRC), portanto os registros foram perdidos. Os arquivos da lista de discussão da "Equipe de criação do Deity" incluem apenas os principais destaques.
O nome "Deity" foi abandonado como nome oficial do projeto devido a preocupações sobre a natureza religiosa do nome. O nome APT foi eventualmente decidido após considerável discussão interna e pública. Por fim, o nome foi proposto no IRC, aceito e depois finalizado nas listas de discussão.[26]
A APT foi introduzida em 1998 e as versões de teste originais circularam no IRC. A primeira versão Debian que a incluiu foi o Debian 2.1, lançado em 9 de março de 1999.[27]
No final, o objetivo original do projeto Deity de substituir a interface de usuário do dselect foi um fracasso. O trabalho na parte da interface do usuário do projeto foi abandonado (os diretórios da interface do usuário foram removidos do sistema de versões concorrentes) após o primeiro lançamento público do apt-get. A resposta à APT como um método dselect e um utilitário de linha de comando foi tão grande e positiva que todos os esforços de desenvolvimento se concentraram em manter e melhorar a ferramenta. Somente muito mais tarde é que várias pessoas independentes construíram interfaces de usuário em cima do libapt-pkg.
Eventualmente, uma nova equipe assumiu o projeto, começou a construir novos recursos e lançou a versão 0.6 da APT, que introduziu o recurso Secure APT, usando forte assinatura digital criptográfica para autenticar os repositórios de pacotes.[28]
Remove ads
Variantes
A APT foi originalmente projetada como um front-end para o dpkg para trabalhar com os pacotes .deb [en] do Debian. Uma versão da APT modificada para funcionar também com o sistema RPM Package Manager foi lançada como APT-RPM [en].[29] O projeto Fink portou a APT para o Mac OS X para algumas de suas próprias tarefas de gerenciamento de pacotes,[30] e a APT também está disponível no OpenSolaris.
Remove ads
apt-file
O apt-file é um comando, empacotado separadamente da APT, para encontrar qual pacote inclui um arquivo específico, ou para listar todos os arquivos incluídos em um pacote em repositórios remotos.[31]
Ver também
Referências
- «Initial release». apt package changelog. O projeto Debian. 31 de março de 1998. Consultado em 18 de dezembro de 2021
- «The apt - Advanced Package Tool Open Source Project on Open Hub: Languages Page». Open Hub. Consultado em 15 de dezembro de 2025
- «apt-get(8)». Debian Manpages. Consultado em 18 de dezembro de 2021
- Byfield, Bruce (9 de dezembro de 2004). «An apt-get primer». Consultado em 18 de dezembro de 2021
- «From the archives: the best distros of 2000». Tux radar. Arquivado do original em 26 de julho de 2020
- Dorgan, David (19 de janeiro de 2004). «Migrating to Debian». linux.ie. Arquivado do original em 13 de maio de 2006
- «Mobile Linux development with Familiar and a minimal Debian». Mobile Tux. Arquivado do original em 15 de setembro de 2008
- «Why Debian». Consultado em 18 de dezembro de 2021
- «Debian policy manual». Consultado em 18 de dezembro de 2021
- «Discussion on dist-upgrade vs. full-upgrade». Consultado em 18 de dezembro de 2021
- «apt-config(8)». Debian Manpages. Consultado em 18 de dezembro de 2021
- «Query APT configuration using apt-config - Debian admin». 2 de dezembro de 2006. Consultado em 18 de dezembro de 2021
- «SourcesList». Debian Wiki. Consultado em 18 de dezembro de 2021
- «Debian 11 "bullseye" released». www.debian.org. Consultado em 11 de maio de 2022. Arquivado do original em 14 de agosto de 2021
- «apt-cdrom(8)». Debian Manpages. Consultado em 27 de dezembro de 2021
- e.g. deb file:/mnt/install stable main contrib non-free
- «AptConfiguration». Debian Wiki. Consultado em 18 de maio de 2020
- «How to install software in Ubuntu Linux: A complete guide for newbie». 17 de junho de 2018. Consultado em 27 de dezembro de 2021
- Jurick, David (2009). iPhone hacks: Pushing the iPhone and iPod touch beyond their limits. [S.l.]: O'Reilly Media, Inc. p. 20. ISBN 9780596516642. Consultado em 27 de dezembro de 2021
- Adhikari, Richard (20 de março de 2008). «Android, Schmandroid: Linux on the iPhone». LinuxInsider. Consultado em 27 de dezembro de 2021
- Mullikin, Glenn (dezembro de 2001). «The evolution of Debian package management systems». AUUGN. 22 (4). 50 páginas. ISSN 1035-7521.
gnome-apt was written by Havoc Pennington
- White, Brian C. (11 de abril de 1997). «"dselect" replacement project ("deity")». deity@lists.debian.org (Lista de grupo de correio)
- Gunthorpe, Jason (2 de março de 1998). «It's working». deity@lists.debian.org (Lista de grupo de correio)
- Gunthorpe, Jason (19 de março de 1998). «Re: 2 things (!)». deity@lists.debian.org (Lista de grupo de correio)
- «A brief history of Debian» (em inglês). debian.org. Arquivado do original em 24 de agosto de 2003
- «Secure APT». Debian Wiki. Consultado em 27 de dezembro de 2021
- «APT-RPM». apt-rpm.org. Consultado em 27 de dezembro de 2021. Cópia arquivada em 21 de abril de 2008
- «Fink - About». www.finkproject.org. Consultado em 27 de dezembro de 2021. Cópia arquivada em 11 de maio de 2008
- «Inspecting and extracting Debian package contents». Packagecloud blog. 13 de outubro de 2015. Consultado em 27 de dezembro de 2021
Remove ads
Ligações externas
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads
