Debian package manager O dpkg é o gerenciador de pacotes utilizado pelo Debian. Seu formato é um pacote ("archive") ar, contendo um arquivo debian-binary, indicando a versão do formato e arquivos control.tar e data.tar, eventualmente comprimidos com gzip, mas recentemente também com bzip2 e lzma. O pacote ("archive") de controle contém os scripts de pré e pós instalação e remoção, "hashes", o arquivo control, com meta-dados, entre outros. A base de dados do dpkg fica em /var/lib/dpkg e é um arquivo texto, chamado status, com os meta-dados dos vários pacotes, instalados ou não no sistema, em formato RFC-822. O sub-diretório info contém arquivos para cada pacote, contendo os scripts, "hashes", lista de arquivos, entre outros. A base de dados pode conter informações sobre pacotes não-instalados, no caso de terem sido removidos, mas não completamente, por exemplo. Ou no caso da instalação não ter sido completada. Vários outros arquivos estão no diretório também, incluindo o arquivo available, que contém a lista de pacotes disponíveis, geralmente atualizada por um gerenciador de atualizações. Veremos mais sobre eles na próxima seção. O dpkg é bastante poderoso para manipular pacotes, gerenciar o estado dos pacotes instalados no sistema ou pacotes disponíveis ou ainda simplesmente comparar versões ou mesmo gerar pacotes binários a partir dos fontes. Veremos apenas seu uso mais básico, no entanto.