APT.CONF(5) APT APT.CONF(5) NOME apt.conf - Ficheiro de configuracao para o APT DESCRICAO /etc/apt/apt.conf e o ficheiro de configuracao principal partilhado por todas as ferramentas na suite de ferramentas do APT, no entanto nao e de maneira nenhuma o unico local onde se pode definir opcoes. A suite tambem partilha um analisador comum de linha de comandos para disponibilizar um ambiente uniforme. Quando a ferramenta APT arranca ira ler os ficheiros de configuracao pela seguinte ordem: 1. o ficheiro especificado pela variavel de ambiente APT_CONFIG (se existir) 2. todos os ficheiros em Dir::Etc::Parts em ordem ascendente alfa-numerica nao tem extensao ou tem "conf" como extensao do nome de ficheiro e que apenas contem caracteres alfa-numericos, tracos (-), underscores (_) e pontos (.). Caso contrario o APT ira escrever um aviso de que ignorou um ficheiro, a menos que o ficheiro corresponda a um padrao na lista de configuracao de Dir::Ignore-Files-Silently - que entao nesse caso sera ignorado em silencio. 3. o ficheiro de configuracao principal especificado por Dir::Etc::main 4. todas as opcoes definidas na sub-arvore de configuracao especifica de binario sao movidas para a raiz da arvore. 5. as opcoes de linha de comandos sao aplicadas para sobrepor as directivas de configuracao ou para carregar mais ficheiros de configuracao. SINTAXE O ficheiro de configuracao e organizado numa arvore com as opcoes organizadas em grupos de funcionamento. A especificacao das opcoes e dada com um sinal de dois pontos duplo , por exemplo APT::Get::Assume-Yes e uma opcao dentro do grupo de ferramentas do APT, para a ferramenta Get. A opcoes nao herdam dos seus grupos parentes. Sintaticamente a linguagem de configuracao e modelada apos o que as ferramentas ISC usam, como o bind e o dhcp. As linhas que comecam com // sao tratadas como comentarios (ignoradas), assim como todo o texto entre /* e */, tal como os comentarios de C/C++. As linhas comecadas com # sao tambem tratadas como comentarios. Cada linha e do formato APT::Get::Assume-Yes "true";. As aspas e o ponto-e-virgula final sao necessarios. O valor deve estar em uma linha, e nao existe nenhum tipo de concatenacao de string. Os valores nao podem incluir barras invertidas ou aspas extras. Os nomes das opcoes sao feitos de caracteres alfa-numericos e os caracteres "/-:._+". Um novo scope pode ser aberto com chavetas, assim: APT { Get { Assume-Yes "true"; Fix-Broken "true"; }; }; com novas linhas colocadas para o tornar mais legivel. As listas podem ser criadas ao abrir um scope e incluindo uma string unica entre aspas seguida por um ponto e virgula. Podem ser incluidas multiplas entradas, separadas por um ponto e virgula (;). DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";}; Em geral o exemplo de ficheiro de configuracao /usr/share/doc/apt/examples/configure-index e um bom guia de como deve ficar. Maiusculas e minusculas nao sao significativas nos nomes dos items de configuracao, portanto no exemplo previo voce poderia usar dpkg::pre-install-pkgs. Os nomes dos items de configuracao sao opcionais se uma lista for definida com pode ser vista no exemplo DPkg::Pre-Install-Pkgs acima. Se voce nao especificar um nome, uma nova entrada ira simplesmente adicionar uma nova opcao a lista. Se voce especificar um nome, voce pode sobrepor a opcao como qualquer outra opcao ao re-atribuir um novo valor a opcao. Estao definidos dois comandos especiais, #include (a qual esta obsoleto e nao e suportado por implementacoes alternativas) e #clear: #include ira incluir o ficheiro fornecido, a menos que o nome do ficheiro termine numa barra (/), que no caso todo o directorio e incluido. #clear e usado para apagar uma parte da arvore de configuracao. O elemento especificado e os seus descendentes sao apagados. (Note que estas linhas tambem precisam de acabar com um 'ponto e virgula' (;) .) O comando #clear e a unica maneira de apagar uma lista ou um scope completo. Reabrindo um scope (ou usando a sintaxe descrita em baixo com um :: acrescentado) nao ira sobrepor entradas escritas anteriormente. As opcoes podem apenas ser sobrepostas ao atribuir um novo valor a elas - listas e scopes nao podem ser sobrepostos, apenas limpos. Todas as ferramentas do APT recebem uma opcao -o que permite uma directiva de configuracao arbitraria para ser especificada na linha de comandos. A sintaxe e um nome de opcao completo (APT::Get::Assume-Yes por exemplo) seguido por um igual (=) e depois o valor da opcao. Para acrescentar um novo elemento a uma lista, adicione um :: ao final do nome da lista. (Como deve suspeitar, a sintaxe de scope nao pode ser usada na linha de comandos.) Note que acrescentar itens a uma lista usando :: so funciona para um item por linha, e que nao o devera usar em combinacao com a sintaxe scope (a qual adiciona :: implicitamente). Usar ambas as sintaxes juntamente ira disparar um bug de que infelizmente alguns utilizadores dependem: uma opcao com o nome pouco usual "::" o qual actua como qualquer outra opcao com um nome. Isto introduz muitos problemas: por um lado, os utilizadores que escrevem multiplas linhas nesta sintaxe errada na esperanca de acrescentarem numa lista irao obter o oposto, pois apenas sera usada a ultima atribuicao para esta opcao "::". Versoes futuras do APT irao dar erros e parar de funcionar se encontrarem esta ma utilizacao, portanto, por favor, corrija tais declaracoes agora enquanto o APT ainda nao se queixa explicitamente delas. O GRUPO APT Este grupo de opcoes controla o comportamento geral do APT assim como mantem as opcoes para todas as ferramentas. Architecture System Architecture; define a arquitectura a usar quando procura ficheiros e analisa listas de pacotes. A predefinicao interna e a arquitectura para a qual o APT foi compilado. Architectures Todas as arquitecturas que o sistema suporta. Por exemplo, CPUs que implementam o conjunto de instrucoes amd64 (tambem chamada x86-64) sao tambem capazes de executar binarios compilados para o conjunto de instrucoes i386 (x86). Esta lista e usada quando se busca ficheiros e analisa listas de pacotes. A predefinicao inicial e sempre a arquitectura nativa do sistema (APT::Architecture), e as arquitecturas alienigenas sao adicionadas a lista predefinida quando sao registadas via dpkg --add-architecture. Color This scope defines colors and styles. The basic colors supported are red, green, yellow, blue, magenta, cyan, and white. The subscope action defines the colors for package lists in install and similar commands. The following options may be set: APT::Color::Action::Upgrade, APT::Color::Action::Install, APT::Color::Action::Install-Dependencies, APT::Color::Action::Downgrade, APT::Color::Action::Remove; corresponding to their lists in the apt(8) output. Each color may reference one or more other color options by name, relative to APT::Color. Their escape sequences will be combined. APT::Color::Bold "\x1B[1m"; APT::Color::Action::Install "cyan"; APT::Color::Action::Upgrade "bold action::install"; Colors may be turned on or off completely by setting APT::Color to yes or no, by utilizing NO_COLOR or APT_NO_COLOR environment variables, or using the --color, --no-color command-line options. Compressor Este escopo define quais formatos de compressao sao suportados, como a compressao e descompressao pode ser executada se o suporte para este formato nao esta compilado directamente no apt e um valor de custo que indica o custo de se comprimir algo neste formato. Como um exemplo a seguinte estrofe de configuracao iria permitir ao apt descarregar e descomprimir assim como criar e armazenar ficheiros com a extensao .reversed de baixo custo os quais ira passar ao comando rev sem parametros adicionais de linha de comandos para a compressao e descompressao. APT::Compressor::rev { Name "rev"; Extension ".reversed"; Binary "rev"; CompressArg {}; UncompressArg {}; Cost "10"; }; Build-Profiles Lista todos os perfis de compilacao activos para resolucao de dependencias de compilacao, sem o prefixo "profile." no espaco do nome. Por predefinicao esta lista esta vazia. O DEB_BUILD_PROFILES usado pelo dpkg-buildpackage(1) sobrepoe a notacao da lista. Default-Release Lancamento predefinido de onde instalar pacotes se existir mais de uma versao disponivel. Contem o nome do lancamento, nome de codigo ou versao de lancamento. Exemplos: 'stable', 'testing', 'unstable', 'bookworm', 'trixie', '4.0', '5.0*'. Veja tambem apt_preferences(5). Snapshot Instantaneo a usar para todos os repositorios configurados com Snapshot: yes. Veja tambem sources.list(5), a opcao --snapshot que define este valor, e Acquire::Snapshots::URI em baixo. Ignore-Hold Ignore held packages; Esta opcao global faz com que ao resolver problemas, os pacotes segurados sejam ignorados na sua decisao de marcacao. Clean-Installed A predefinicao e ligada. Quando ligada, a funcionalidade autoclean ira remover quaisquer pacotes que ja nao possam ser descarregados a partir da cache. Se desligada, entao os pacotes que estao instalados localmente sao tambem excluidos da limpeza - mas note que o APT nao disponibiliza um meio direto de os reinstalar. Immediate-Configure A predefinicao e ligada, o que ira fazer com que o APT instale pacotes essenciais e importantes assim que possivel numa operacao de instalacao/actualizacao, de modo a limitar o efeito de uma chamada ao dpkg(1) falhada. Se esta opcao for desactivada, o APT trata um pacote importante do mesmo modo que um pacote extra: entre o desempacotamento do pacote A e a sua configuracao podem existir muitas outras chamadas de desempacotamento ou configuracao para outros pacotes B, C, etc nao relacionados. Se eles causarem a falha da chamada do dpkg(1) (ex. porque os scripts do maintainer do pacote B geram um erro), isto resulta num estado do sistema em que o pacote A fica desempacotado mas nao configurado - entao nao fica garantido o funcionamento de qualquer pacote que dependa de A, porque a sua dependencia de A nao esta mais satisfeita. O marcador de configuracao imediata tambem e aplicado no caso potencialmente problematico de dependencias circulares, pois uma dependencia com a bandeira de imediato e equivalente a uma Pre-Dependencia. Em teoria isto permite ao APT reconhecer uma situacao na qual esta incapaz de executar configuracao imediata, abortar, e sugerir ao utilizador que a opcao devera ser desactivada temporariamente de modo a permitir que a operacao prossiga. Note o uso da palavra "teoria" aqui; no mundo real este problema tem sido raramente encontrado, em versoes nao-estavel da distribuicao, e foram causados por dependencias erradas do pacote em questao ou por um sistema ja no estado corrompido; portanto voce nao deve desactivar esta opcao as cegas. porque em primeiro lugar o cenario mencionado em cima nao e o unico problema que pode ajudar a prevenir. Antes de uma grande operacao como dist-upgrade ser executada com esta opcao desactivada voce deve tentar explicitamente um install ao pacote que o APT nao e capaz de configurar imediatamente; mas por favor certifique-se que tambem reporta o seu problema a sua distribuicao e a equipa do APT com o link de bug em baixo, para que eles possa trabalhar em melhorar ou corrigir o processo de actualizacao. Force-LoopBreak Nunca active esta opcao a menos que realmente saiba o que esta a fazer. Ela permite que o APT remova temporariamente um pacote essencial para quebrar um ciclo infinito de Conflito/Conflito ou Conflito/Pre-Dependencia entre dois pacotes essenciais. Tal ciclo nunca deveria existir e e um bug grave.. Esta opcao ira funcionar se os pacotes essenciais nao forem tar, gzip, libc, dpkg, dash ou nada de que esses pacotes dependam. Cache-Start, Cache-Grow, Cache-Limit O APT usa desde a versao 0.7.26 um ficheiro de cache com mapa de memoria de tamanho ajustavel para armazenar a informacao disponivel. Cache-Start actua como uma dica do tamanho que a cache ira crescer, e e por isso a quantidade de memoria que o APT ira requerer no arranque. O valor predefinido e 20971520 bytes (~20 MB). Note que esta quantidade de espaco precisa estar disponivel para o APT; caso contrario ele ira com certeza falhar, portanto para dispositivos com pouca memoria este valor deve ser diminuido enquanto que em sistemas com muitas fontes configuradas este deve ser aumentado. Cache-Grow define em bytes com a predefinicao de 1048576 (~1 MB) em quanto o tamanho da Cache sera aumentado no caso do espaco definido por Cache-Start nao ser suficiente. Este valor sera aplicado varias vezes ate que a cache seja suficientemente grande para armazenar toda a informacao ou que o tamanho da cache alcance o Cache-Limit. O valor predefinido de Cache-Limit e 0 o que significa nenhum limite. Se Cache-Grow for definido para 0, o crescimento automatico da cache e desactivado. Build-Essential Define quais pacotes sao considerados dependencias essenciais de compilacao. Get A subseccao Get controla a ferramenta apt-get(8), por favor veja a sua documentacao para mais informacao acerca das opcoes daqui. Cache A subseccao Cache controla a ferramenta apt-cache(8), por favor veja a sua documentacao para mais informacao acerca das opcoes daqui. CDROM A subseccao CDROM controla a ferramenta apt-cdrom(8), por favor veja a sua documentacao para mais informacao acerca das opcoes de aqui. NeverAutoRemove Never autoremove packages that match the regular expression(s). Protect-Kernels This option tells apt autoremove that kernels are protected and defaults to true. In case kernels are not protected they are treated as any other package. VersionedKernelPackages Define the regular expression(s) for versioned kernel packages. Based on these expressions a rule set is injected into apt similar to APT::NeverAutoRemove regular expressions. NeverAutoRemove::KernelCount Keep a custom amount of kernels when autoremoving and defaults to 2, meaning two kernels are kept. Apt will always keep the running kernel and the latest one. If the latest kernel is the same as the running kernel, the second latest kernel is kept. Because of this, any value lower than 2 will be ignored. If you want only the latest kernel, you should set APT::Protect-Kernels to false. O GRUPO ACQUIRE O grupo de opcoes Acquire controla a descarga de pacotes assim como os varios "metodos de obtencao" responsaveis pela propria descarga (veja tambem sources.list(5)). Check-Date Opcao relacionada com seguranca que predefine para verdadeira, activando as verificacoes relativas a hora. Desactiva-la significa que a hora da maquina nao pode ser confiada,e o APT ira entao desactivar todos as verificacoes relacionadas com horas, tais como Check-Valid-Until e verificar que o campo Date de um ficheiro release nao esta no futuro. Max-FutureTime O tempo maximo (em segundos) antes da sua criacao (como indicado pelo cabecalho Date) que o ficheiro Release deve ser considerado como valido. O valor predefinido e 10. Podem ser criadas definicoes especificas de arquivo ao acrescentar a etiqueta do arquivo ao nome da opcao. Preferencialmente, o mesmo pode ser conseguido para entradas sources.list(5) especificas ao usar la a opcao Date-Max-Future. Check-Valid-Until Opcao relacionada com seguranca com predefinicao a 'verdadeiro', como dar a ficheiros Release uma data de expiracao previne ataques repetidos durante longo tempo e pode, por exemplo, ajudar os utilizadores a identificar mirrors que nao sao actualizados a muito tempo - mas a funcionalidade depende da precisao de hora no sistema do utilizador. Os responsaveis do arquivo sao encorajados a criar ficheiros Release com o cabecalho Valid-Until, mas se nao o fizerem ou se preferir-se um valor mais rigoroso pode-se usar a opcao Max-ValidTime seguinte. A opcao Check-Valid-Until das entradas sources.list(5) deve ser preferida para desactivar a verificacao seletiva em vez de usar esta sobreposicao global. Max-ValidTime O tempo maximo (em segundos) apos a sua criacao (como indicado pelo cabecalho Date) que o ficheiro Release deve ser considerado como valido. Se o proprio ficheiro Release incluir um cabecalho Valid-Until e usada como data de expiracao a data que expira mais cedo. O valor predefinido e 0 o que significa "valido para sempre". Podem ser criadas definicoes especificas de arquivo ao acrescentar a etiqueta do arquivo ao nome da opcao. Preferencialmente, o mesmo pode ser conseguido para entradas sources.list(5) especificas ao usar aqui a opcao Valid-Until-Max. Min-ValidTime O tempo minimo (em segundos) apos a sua criacao (como indicado no cabecalho Date) que o ficheiro Release deve ser considerado como valido. Utilize isto se voce necessitar de usar um mirror raramente actualizado (local) de um arquivo actualizado mais frequentemente com um cabecalho Valid-Until em vez de desactivar completamente a verificacao de data de expiracao. Podem e devem ser usadas definicoes especificas do arquivo ao acrescentar a etiqueta do arquivo ao nome da opcao. Preferencialmente, pode ser conseguido o mesmo para entradas sources.list(5) especificas ao usar aqui a opcao Valid-Until-Min AllowTLS Permite o uso do suporte TLS interno no metodo http. Se definido para falso, isto desactiva completamente o suporte para TLS nos metodos proprios do apt (excluindo o metodo https baseado em curl). Nao serao mais chamadas funcoes relacionadas com TLS. PDiffs Tenta descarregar deltas chamados PDiffs para indices (como os ficheiros Packages) em vez de os descarregar por inteiro. Verdadeiro por predefinicao. Preferencialmente, isto pode ser definido para entradas sources.list(5) especificas ou ficheiros index ao usar aqui a opcao PDiffs. Estao tambem disponiveis duas sub-opcoes para limitar o uso de PDiffs: FileLimit pode ser usada para especificar um numero maximo de ficheiros PDiff que devem ser descarregados para actualizar um ficheiro. Por outro lado SizeLimit e a percentagem maxima do tamanho de todas as patches comparadas com o tamanho do ficheiro de destino. Se um destes limites for excedido, e descarregado o ficheiro completo em vez das patches. By-Hash Tenta descarregar indices via um URL construido a partir de um sumario "hashsum" do ficheiro esperado, em vez de descarregar via um nome de ficheiro bem conhecido como estavel. Verdadeiro por predefinicao, mas desactivado automaticamente se a fonte indicar que nao tem suporte para tal. A utilizacao pode ser forcada com o valor especial "force". Preferencialmente, isto pode ser definido para entradas sources.list(5) especificas ou ficheiros index ao usar aqui a opcao By-Hash. Queue-Mode Modo de fila; Queue-Mode pode ser um de host ou access que determina como o APT paraleliza ligacoes de saida. host significa que sera aberta uma ligacao por maquina destino, access significa que sera aberta uma ligacao por tipo de URI. Retries Numero de tentativas a executar. Se isto for diferente de zero o APT ira tentar, no numero fornecido de vezes, obter ficheiros falhados. Source-Symlinks Usa links simbolicos para arquivos fonte. Se definido para verdadeiro, entao os arquivos fonte serao links simbolicos, quando possivel, em vez de copias. A predefinicao e verdadeiro. http https As opcoes nesses scopes configuram a obtencao de transportes do APT para os protocolos HTTP e HTTPS e estao documentadas nos manuais apt-transport-http(1) e apt-transport-https(1) respetivamente. ftp ftp::Proxy define o proxy predefinido a usar para URIs FTP. Esta no formato standard de ftp://[[user][:pass]@]host[:port]/. Os proxies por maquina podem tambem ser especificados ao usar o formato ftp::Proxy:: com a palavra chave especial DIRECT que significa nao usar nenhum proxy. Se nenhuma das definicoes acima for especificada, sera usada a variavel de ambiente ftp_proxy. Para usar um proxy FTP voce tem que definir o script ftp::ProxyLogin no ficheiro de configuracao. Esta entrada especifica os comandos a enviar para dizer ao servidor proxy ao que se ligar. Por favor veja /usr/share/doc/apt/examples/configure-index para um exemplo de como fazer isto. As variaveis de substituicao que representam o componente URI correspondente sao $(PROXY_USER) $(PROXY_PASS) $(SITE_USER) $(SITE_PASS) $(SITE) e $(SITE_PORT). A opcao timeout define o tempo limite usado por este metodo, este valor aplica-se a ligacao assim como os tempos de limite de dados. Sao disponibilizadas varias definicoes para controlar o modo passivo. Geralmente e seguro deixar o modo passivo ligado, funciona em quase todos ambientes. No entanto algumas situacoes requerem que o modo passivo seja desactivado e em vez disso usar o modo port FTP. Isto pode ser feito globalmente ou para ligacoes que passam por um proxy ou para uma maquina especifica (veja a amostra de ficheiro de configuracao para exemplos). E possivel usar proxy FTP sobre HTTP ao definir a variavel de ambiente ftp_proxy para um URL HTTP - veja a discussao do metodo http em cima para a sintaxe. Voce nao pode definir isto no ficheiro de configuracao e nao e recomendado usar FTP sobre HTTP devido a sua baixa eficiencia. A definicao ForceExtended controla o uso de comandos RFC2428 EPSV e EPRT. A predefinicao e falso, o que significa que estes comandos apenas sao usados se a ligacao de controle for IPv6. Definir isto para verdadeiro forca o seu uso mesmo em ligacoes IPv4. Note que a maioria dos servidores FTP nao suporta RFC2428. cdrom Para URIs que usam o metodo cdrom, a unica opcao configuravel e ponto de montagem, cdrom::Mount, o qual deve ser o ponto de montagem para o leitor de CD-ROM (ou DVD, etc.) como especificado em /etc/fstab.E possivel fornecer comandos de montar e desmontar alternativos se o seu ponto de montagem nao puder ser listado na fstab. A sintaxe e colocar /cdrom/::Mount "foo"; dentro do bloco cdrom. E importante ter a barra final. Comandos para desmontar podem ser especificados usando o UMount. gpgv Para URIs de GPGV a unica opcao configuravel e gpgv::Options, a qual passa parametros adicionais ao gpgv. CompressionTypes Lista dos tipos de compressao que sao compreendidos pelos metodos de aquisicao. Ficheiros como Packages podem estar disponiveis em varios formatos de compressao. Por predefinicao os metodos de aquisicao podem descomprimir e re-comprimir muitos formatos comuns como xz e gzip; com este scope os formatos suportados podem ser consultados, modificados assim como pode ser adicionado suporte para mais formatos (veja tambem APT::Compressor). A sintaxe para isto e: Acquire::CompressionTypes::Extensao de Ficheiro "Nome de metodo"; Tambem o subgrupo Order pode ser usado para definir em que ordem o sistema de aquisicao ira tentar descarregar os ficheiros comprimidos. O sistema de aquisicao ira tentar com o primeiro e prosseguir com o proximo tipo de compressao na lista em caso de erro, portanto para preferir um sobre outro tipo, simplesmente adicione o tipo preferido em primeiro lugar - tipos nao ja adicionados serao acrescentados implicitamente ao fim da lista, entao, ex. Acquire::CompressionTypes::Order:: "gz"; pode ser usado para preferir ficheiros comprimidos em gzip sobre todos os outros formatos de compressao. Se o xz deve ser preferido sobre o gzip e o bzip2 a definicao de configuracao devera parecer-se com isto: Acquire::CompressionTypes::Order { "xz"; "gz"; }; . Nao e necessario adicionar explicitamente bz2 a lista pois isso sera adicionado automaticamente. Note que o Dir::Bin::nome de metodo sera verificado em tempo de execucao. Se esta definicao estiver definida e o suporte para este formato nao esta compilado directamente no apt, o metodo apenas sera usado se este ficheiro existir; ex. para o metodo bzip2 (o embutido) a definicao e: Dir::Bin::bzip2 "/bin/bzip2"; . Note tambem que as entradas na lista especificadas na linha de comandos serao adicionadas no fim da lista especificada nos ficheiros de configuracao, mas antes das entradas predefinidas. Para preferir um tipo neste caso sobre aqueles especificados nos ficheiros de configuracao voce pode definir a opcao directamente - nao em estilo de lista. Isto nao ira sobrepor a lista definida, ira apenas prefixar a lista com este tipo. O tipo especial uncompressed pode ser usado para dar preferencia a ficheiros nao comprimidos, mas note que a maioria dos arquivos nao disponibiliza ficheiros nao comprimidos, portanto isto e usado maioritariamente apenas para mirrors locais. GzipIndexes Quando descarrega indices comprimidos em gzip (Pacotes, Fontes ou Traducoes), mantem-os localmente comprimidos em gzip em vez de os desempacotar. Isto poupa imenso espaco no disco a custa de mais pedidos a CPU quando constroi as caches de pacotes locais. Falso por predefinicao. Languages A subseccao Languages controla quais ficheiros Translation sao descarregados e em que ordem o APT tenta mostrar as traducoes das descricoes. O APT ira tentar mostrar a primeira descricao disponivel para a linguagem que esta listada em primeiro. As linguagens podem ser definidas com os seus codigos de linguagem curtos ou longos. Note que nem todos os arquivos disponibilizam ficheiros Translation para todas as linguagens - os codigos de linguagem longos sao especialmente raros. A lista predefinida inclui "environment" e "en". "environment" tem um significado especial aqui: sera substituida em tempo de execucao por codigos de linguagem extraidos a partir da variavel de ambiente LC_MESSAGES. Tambem ira assegurar que estes codigos nao sao incluidos duas vezes na lista. Se LC_MESSAGES estiver definida para "C" apenas o ficheiro Translation-en sera usado (se disponivel). Para forcar o APT a nao usar nenhum ficheiro de traducao use a definicao Acquire::Languages=none. "none" e outro codigo de significado especial que ira parar a procura por um ficheiro Translation apropriado. Isto diz ao APT para tambem descarregar estes ficheiros sem realmente os usar a menos que o ambiente especifique as linguagens. Portanto o seguinte exemplo de configuracao ira resultar na ordem "en, de" num ambiente em Ingles e "de, en" num ambiente em Alemao. Note que o "fr" e descarregado, mas nao e usado a menos que o APT seja usado num ambiente em Frances (onde a ordem deveria ser "fr, de, en". Acquire::Languages { "environment"; "de"; "en"; "none"; "fr"; }; Nota: Para prevenir problemas resultantes do APT ser executado em ambientes diferentes (ex. por diferentes utilizadores ou por outros programas) todos os ficheiros de Traducao que se encontram em /var/lib/apt/lists/ serao adicionados ao final da lista (apos um "none" implicito). ForceIPv4 Ao descarregar, forca o uso exclusivo do protocolo IPv4. ForceIPv6 Ao descarregar, forca o uso exclusivo do protocolo IPv6. MaxReleaseFileSize O tamanho maximo dos ficheiros Release/Release.gpg/InRelease. A predefinicao e 10MB. EnableSrvRecords Esta opcao controla se o apt ira usar o registo do servidor DNS SRV como especificado em RFC 2782 para selecionar um servidor alternativo a onde ligar: A predefinicao e "true". AllowInsecureRepositories Permite as operacoes de actualizacao carregarem ficheiros de dados a partir de repositorios se informacao se seguranca suficiente. O valor predefinido e false". O conceito, implicacoes assim como alternativas estao detalhados em apt-secure(8). AllowWeakRepositories Permite as operacoes de actualizacao carregarem ficheiros de dados a partir de repositorios que disponibilizam informacao de seguranca, mas estes ja nao sao considerados suficiente fortes criptograficamente. O valor predefinido e false". O conceito, implicacoes assim como alternativas estao detalhados em apt- secure(8). AllowDowngradeToInsecureRepositories Permite que um repositorio anteriormente assinado com gpg se torne em nao-assinado durante uma operacao de actualizacao. Quando nao existe uma assinatura valida para um repositorio anteriormente de confianca, o apt ira recusar a actualizacao. Esta opcao pode ser usada para ultrapassar esta protecao. Certamente voce nunca vai querer activar isto. A predefinicao e false. O conceito, implicacoes assim como alternativas estao detalhadas em apt- secure(8). Changelogs::URI scope Adquirir changelogs so pode ser feito se for conhecido um URL de onde os obter. De preferencia o ficheiro Release indica isto num campo 'Changelogs'. Se isto nao estiver disponivel, e usado o campo Label/Origin do ficheiro Release para verificar se uma opcao Acquire::Changelogs::URI::Label::LABEL ou Acquire::Changelogs::URI::Origin::ORIGIN existem e se sim e utilizado este valor. Este valor no ficheiro Release pode ser sobreposto com Acquire::Changelogs::URI::Override::Label::LABEL ou Acquire::Changelogs::URI::Override::Origin::ORIGIN. O valor deve ser um URI normal para um ficheiro de texto, excepto se os dados desse pacote especifico for substituido pelo marcador de posicao @CHANGEPATH@. O valor para isto e: 1. se o pacote pertence a um componente (ex. main) esta e a primeira parte, caso contrario e omitida. 2. a primeira letra do nome do pacote fonte, excepto se o nome do pacote fonte comecar com 'lib' e neste caso sera as primeiras quatro letras. 3. O nome completo do pacote fonte. 4. O nome completo outra vez e 5. a versao da fonte. A primeira (se presente), segunda, terceira e quarta partes sao separadas por uma barra ('/') e entre a quarta e quinta partes fica um underscore ('_'). O valor especial 'no' esta disponivel para esta opcao e indica que esta fonte nao pode ser usada para adquirir ficheiros changelog a partir dela. Neste caso sera tentada outra fonte se estiver disponivel. Snapshots::URI scope Like changelogs, snapshots can only be acquired if an URI is known from where to get them. Preferable the Release file indicates this in a 'Snapshots' field. If this isn't available the Label/Origin field of the Release file is used to check if a Acquire::Snapshots::URI::Label::LABEL or Acquire::Snapshots::URI::Origin::ORIGIN option exists and if so this value is taken. The value in the Release file can be overridden with Acquire::Snapshots::URI::Override::Label::LABEL or Acquire::Snapshots::URI::Override::Origin::ORIGIN. The value should be a normal URI to a directory, except that the snapshot ID replaced with the placeholder @SNAPSHOTID@. The special value 'no' is available for this option indicating that this source cannot be used to acquire snapshots from. Another source will be tried if available in this case. CONFIGURACAO ESPECIFICA DE BINARIO Especialmente com a introducao do binario apt pode ser util para definir certas opcoes apenas para um binario especifico mesmo como opcoes que parecessem apenas afectar um certo binario como APT::Get::Show-Versions afecta apt-get assim como apt. Definir uma opcao para apenas um binario especifico so pode ser conseguido ao definir a opcao dentro escopo Binary::specific-binary. Definir a opcao APT::Get::Show-Versions apenas para o apt pode, por exemplo, ser feito de outra maneira definindo Binary::apt::APT::Get::Show-Versions. Note que como visto na seccao DESCRICAO mais acima, voce nao pode definir opcoes binario-especificas na propria linha de comandos nem em ficheiros de configuracao carregados via linha de comandos. DIRECTORIOS A seccao Dir::State tem directorios que pertencem a informacao de estado local. lists e o directorio para colocar listas de pacotes descarregadas e status e o nome do ficheiro de estado do dpkg(1). preferences e o nome do ficheiro preferences do APT. Dir::State contem o directorio predefinido para pre-fixar em todos os sub-items que nao comecam com / ou ./. Dir::Cache contem localizacoes pertencentes a informacao da cache local, como as caches de dois pacotes srcpkgcache e pkgcache assim como a localizacao onde colocar arquivos descarregados, Dir::Cache::archives. A geracao de caches pode ser desligada ao definir pkgcache ou srcpkgcache para "". Isto ira abrandar o arranque mas poupar espaco em disco. Provavelmente e preferivel desligar o pkgcache em vez do srcpkgcache. Tal como Dir::State o directorio predefinido e contido em Dir::Cache Dir::Etc contem a localizacao dos ficheiros de configuracao, sourcelist fornece a localizacao da sourcelist e main e o ficheiro da configuracao predefinida (definicao nao tem efeito, a menos que seja feita a partir do ficheiro de configuracao especificado por APT_CONFIG). A definicao Dir::Parts le todos os fragmentos de configuracao em ordem lexica a partir do directorio especificado. Apos isto estar feito entao e carregado o ficheiro de configuracao principal. Programas binarios sao apontados por Dir::Bin. Dir::Bin::Methods especifica a localizacao dos manipuladores do metodo e de gzip, bzip2, lzma, dpkg, apt-get dpkg-source dpkg-buildpackage e apt-cache especifica a localizacao dos respectivos programas. O item de configuracao RootDir tem um significado especial. Se definido, todos os caminhos serao relativos a RootDir, mesmo caminhos que estao absolutamente especificados. Entao, por exemplo, se RootDir estiver definido para /tmp/staging e Dir::State::status estiver definido para /var/lib/dpkg/status, entao o ficheiro status sera procurado em /tmp/staging/var/lib/dpkg/status. Se desejar usar como prefixo apenas caminhos relativos, defina antes Dir. A lista Ignore-Files-Silently pode ser usada para especificar quais os ficheiros que o APT deve ignorar em silencio enquanto analisa os ficheiros nos directorios de fragmento. Por predefinicao que termine com .disabled, ~, .bak ou .dpkg-[a-z]+ e ignorado em silencio. Como visto no ultimo valor predefinido, estes padroes podem usar sintaxe de expressao regular. APT EM DSELECT Quando o APT e usado com um metodo dselect(1), varias directivas de configuracao controlam o comportamento predefinido. Estas estao na seccao DSelect. Clean Modo Cache Clean: este valor deve ser um de always, prompt, auto, pre-auto e never. always e prompt irao remover todos os pacotes da cache apos a actualizacao, prompt (a predefinicao) fa-lo condicionalmente. auto apenas aqueles pacotes que ja nao podem ser descarregados (por exemplo, substituidos por uma nova versao). pre-auto executa esta accao antes de descarregar novos pacotes. options O conteudo desta variavel e passado ao apt-get(8) como opcoes de linha de comandos quando e corrido para a fase de instalacao. Updateoptions O conteudo desta variavel e passado ao apt-get(8) como opcoes de linha de comandos quando e executado para a fase de actualizacao. PromptAfterUpdate Se for verdadeira a operacao [U]pdate no dselect(1) ira sempre avisar para continuar. A predefinicao e avisar apenas em caso de erro. COMO O APT CHAMA O DPKG(1) Varias directivas de configuracao controlam como o APT invoca o invokes dpkg(1). Estas estao na seccao DPkg. options Isto e uma lista de opcoes para passar ao dpkg(1). As opcoes tem de ser especificadas usando a notacao de lista e cada item da lista e passado como um argumento unico ao dpkg(1). Path Esta e uma string que define a variavel de ambiente PATH usada quando se corre o dpkg. Pode ser definida para qualquer valor valido dessa variavel de ambiente, ou para string vazia, e neste caso a variavel nao e alterada. Pre-Invoke, Post-Invoke Isto e uma lista de comandos shell para executar antes/apos invocar o dpkg(1). Tal como as opcoes isto tem que ser especificado em notacao listada. Os comandos sao invocados em ordem usando /bin/sh, caso algum deles falhe, o APT ira abortar. Pre-Install-Pkgs Isto e uma lista de comandos shell para executar antes de invocar o dpkg(1). Tal como as opcoes isto tem que ser especificado em notacao listada. Os comandos sao invocados em ordem usando /bin/sh, caso algum deles falhe, o APT ira abortar. O APT ira passar para os comandos os nomes de ficheiros de todos os ficheiros .deb que vai instalar, um por cada linha no descritor de ficheiro requisitado, usando por predefinicao a entrada standard. A versao 2 deste protocolo envia mais informacao atraves do descritor de ficheiro requerido: uma linha com o texto VERSION 2, o espaco de configuracao do APT, e uma lista de accoes de pacote com informacao de nome de ficheiro e versao. Cada linha directiva de configuracao tem a forma chave=valor. Caracteres especiais (sinais de igual, novas-linhas, caracteres nao imprimiveis, aspas, e sinais de percentagem na chave e novas-linhas, caracteres nao imprimiveis, e sinais de percentagem no value) sao %-codificados. As listas sao representadas por multiplas linhas chave=valor com a mesma chave. A seccao de configuracao termina com uma linha vazia. As linhas de accao de pacotes consistem de cinco campos na Versao 2: nome do pacote (sem a qualificacao da arquitectura mesmo que alienigena), versao anterior, direccao da alteracao de versao (< para actualizacoes, > para regresses (downgrades), = para nenhuma alteracao), nova versao, accao. Os campos da versao sao "-" para nenhuma versao (por exemplo quando se instala um pacote pela primeira vez; nenhuma versao e tratada como anterior a nenhuma versao real, entao isso e uma actualizacao, indicada como - < 1.23.4). O campo de accao e "**CONFIGURE**" se o pacote esta a ser configurado, "**REMOVE**" se esta a ser removido, ou o nome de ficheiro de um ficheiro .deb se estiver a ser desempacotado. Na versao 3 apos cada campo de versao segue-se a arquitectura dessa versao, a qual e "-" se nao existir nenhuma versao, e um campo que mostra o tipo de MultiArch "same", "foreign", "allowed" ou "none". Note que "none" e um nome de tipo incorreto o qual e apenas mantido para permanecer compativel, deve ser lido como "no" e os utilizadores sao encorajados a suportar ambos. A versao do protocolo a ser usado para o comando cmd pode ser escolhida ao definir DPkg::Tools::options::cmd::Version correctamente, sendo a predefinicao a versao 1. Se o APT nao suportar a versao requisitada ira entao enviar a informacao na versao mais alta que suporta. O descritor de ficheiro a ser usado para enviar a informacao pode ser requisitado com DPkg::Tools::options::cmd::InfoFD o qual usa 0 por predefinicao para a saida standard e esta disponivel desde a versao 0.9.11. como confirmacao pode ser detetado o suporte para a opcao ao observar a variavel de ambiente APT_HOOK_INFO_FD que contem o numero do descritor de ficheiro usado. Run-Directory O APT muda para este directorio (chdir) antes de invocar o dpkg(1), a predefinicao e /. Build-options Estas opcoes sao passadas ao dpkg-buildpackage(1) quando compila pacotes, a predefinicao e desactivar a assinatura e produzir todos os binarios. DPkg::ConfigurePending Se esta opcao for definida, o APT ira chamar dpkg --configure --pending para permitir ao dpkg(1) lidar como todas as configuracoes e triggers requisitados. Esta opcao e activada por predefinicao, mas desactiva-la pode ser util se deseja correr o APT multiplas vezes numa sequencia - ex. numa instalacao. Neste cenario voce pode desactivar esta opcao em todas excepto na ultima execucao. OPCOES PERIODIC E ARCHIVES Os grupos de opcoes APT::Periodic e APT::Archives configuram o comportamento das actualizacoes periodicas do APT, o que e feito pelo script /usr/lib/apt/apt.systemd.daily. Veja o cabecalho deste script para uma breve documentacao das suas opcoes. OPCOES DE DEPURACAO Activar opcoes na seccao Debug:: ira causar o envio de informacao de depuracao para o fluxo de erros standard do programa utilizando as bibliotecas do apt, ou activar modos especiais do programa que sao principalmente uteis para depurar o comportamento do apt. A maioria destas opcoes nao tem interesse para o utilizador normal, mas algumas podem ter: o Debug::pkgProblemResolver activa mensagens na saida acerca das decisoes tomadas por dist-upgrade, upgrade, install, remove, purge. o Debug::NoLocking desactiva o bloqueio de todos os ficheiros. Isto pode ser usado para executar algumas operacoes (por exemplo, apt-get -s install) como um utilizador nao root. o Debug::pkgDPkgPM escreve a linha de comandos actual de cada vez que o apt invoca o dpkg(1). o Debug::IdentCdrom desactiva a inclusao de dados statfs em IDs de CD-ROM. Segue-se uma lista completa de opcoes de depuracao para o apt. Debug::Acquire::cdrom Escreve informacao relacionada com o acesso a fontes de cdrom://. Debug::Acquire::ftp Escreve informacao relacionada com o descarregamento de pacotes usando FTP. Debug::Acquire::http Escreve informacao relacionada com o descarregamento de pacotes usando HTTP. Debug::Acquire::https Escreve informacao relacionada com o descarregamento de pacotes usando HTTPS. Debug::Acquire::gpgv Escreve informacao relacionada com a verificacao de assinaturas criptograficas usando gpg. Debug::aptcdrom Escreve informacao acerca do processo de aceder a colecoes de pacotes armazenados em CD-ROMs. Debug::Hashes Escreve cada hash criptografico que e gerado pelas bibliotecas do apt. Debug::IdentCDROM Nao inclui informacao de statfs, nomeadamente o numero de blocos usados e livres no sistema de ficheiros do CD-ROM, quando gera um ID para um CD-ROM. Debug::NoLocking Desactiva o bloqueio de todos os ficheiros. Por exemplo, isto ira permitir o funcionamento de duas instancias do "apt-get update" ao mesmo tempo. Debug::pkgAcquire Regista no log quando os items sao adicionados ou removidos da fila de download global. Debug::pkgAcquire::Auth Escreve mensagens de estado e erros relacionados com a verificacao de checksums e assinaturas criptograficas dos ficheiros descarregados. Debug::pkgAcquire::Diffs Escreve informacao acerca do download e aplicacao de diffs de lista de indice do pacote, e erros relacionados com as diffs de lista de indice do pacote. Debug::pkgAcquire::RRed Escreve informacao relacionada com a aplicacao de patch na lista de pacotes do apt quando se descarrega diffs de indice em vez de indices completos. Debug::pkgAcquire::Worker Regista todas as interacoes com os sub-processos que realmente executam os downloads. Debug::pkgAutoRemove Regista no log eventos relacionados com o estado instalado-automaticamente de pacotes e com a remocao de pacotes nao utilizados. Debug::pkgDepCache::AutoInstall Gera mensagens de depuracao descrevendo quais pacotes estao a ser instalados automaticamente para resolver dependencias. Isto corresponde ao passo de instalacao-automatica inicial executado em, ex, apt-get install, e nao ao solucionador de dependencias total do apt; veja Debug::pkgProblemResolver para isso. Debug::pkgDepCache::Marker Gera mensagens de depuracao descrevendo qual pacote esta marcado como manter/instalar/remover enquanto o "solucionador-de-problemas" faz o seu trabalho. Cada adicao ou remocao pode activar accoes adicionais; elas sao mostradas indentadas dois espacos adicionais sob da entrada original. O formato de cada linha e MarkKeep, MarkDelete ou MarkInstall seguido por package-name d.e.f | x.y.z> (seccao) onde a.b.c e a versao actual do pacote, d.e.f e a versao considerada para instalacao e x.y.z e a versao mais recente, mas nao considerada para instalacao (devido a baixa pontuacao). Os dois ultimos podem ser omitidos se nao existir nenhum ou for a mesma versao que aquela instalada. section e o nome da seccao onde o pacote aparece. Debug::pkgDPkgPM Ao invocar o dpkg(1), escreve com precisao a linha de comandos com a qual esta a ser invocado, com argumentos separados por um caractere de espaco unico. Debug::pkgDPkgProgressReporting Escreve todos os dados recebidos do dpkg(1) no descritor de ficheiro de estado e quaisquer erros encontrados enquanto os analisa. Debug::pkgOrderList Gera um rastro do algoritmo que decide a ordem na qual o apt deve passar os pacotes ao dpkg(1). Debug::pkgPackageManager Escreve mensagens de estado seguindo os passos executados quando invoca o dpkg(1). Debug::pkgPolicy Escreve a prioridade da cada lista de pacote no arranque. Debug::pkgProblemResolver Rastreia a execucao do solucionador de dependencias (isto so se aplica ao que acontece quando e encontrado um problema de dependencias complexo). Debug::pkgProblemResolver::ShowScores Mostra uma lista de todos os pacotes instalados com as suas pontuacoes calculadas usadas pelo pkgProblemResolver. A descricao do do pacote e a mesma que e descrita em Debug::pkgDepCache::Marker Debug::sourceList Escreve informacao acerca dos fornecedores lida de /etc/apt/vendors.list. Debug::RunScripts Mostra os comandos externos que sao chamados por hooks do apt. Isto inclui por exemplo as opcoes de configuracao DPkg::{Pre,Post}-Invoke ou APT::Update::{Pre,Post}-Invoke. EXEMPLOS /usr/share/doc/apt/examples/configure-index e um ficheiro de configuracao que mostra valores exemplo para todas as opcoes possiveis. FICHEIROS /etc/apt/apt.conf Ficheiro de configuracao do APT. Item de Configuracao: Dir::Etc::Main. /etc/apt/apt.conf.d/ Ficheiros de configuracao fragmentados do APT. Item de Configuracao: Dir::Etc::Parts. VEJA TAMBEM apt-cache(8), apt-config(8), apt_preferences(5). BUGS pagina de bugs do APT[1]. Se deseja reportar um bug no APT, por favor veja /usr/share/doc/debian/bug-reporting.txt ou o comando reportbug(1). TRADUCAO A traducao Portuguesa foi feita por Americo Monteiro de 2009 a 2012. A traducao foi revista pela equipa de traducoes portuguesas da Debian . Note que este documento traduzido pode conter partes nao traduzidas. Isto e feito propositadamente, para evitar perdas de conteudo quando a traducao esta atrasada relativamente ao conteudo original. AUTORES Jason Gunthorpe Equipa do APT Daniel Burrows Documentacao inicial do Debug::*. NOTAS 1. pagina de bugs do APT https://bugs.debian.org/src:apt APT 2.9.5 30 Maio 2024 APT.CONF(5)