Como os pacotes do Ubuntu são estruturados? [duplicado]

0

Quando eu baixo um pacote no Ubuntu, quais arquivos ele instala no meu sistema e onde? Estou apenas curioso sobre a estrutura do pacote em geral (eu procurei e não parece que alguém perguntou isso aqui antes). Obviamente, diferirá em certa medida de pacote para pacote, mas acredito que deve haver algumas diretrizes 'padrão' que são seguidas?

Além disso, os pacotes no Centro de Software são os mesmos que os pacotes disponíveis através do apt-get? Se não, como posso ver quais pacotes estão disponíveis no apt-get e o que eles fazem?

    
por Time4Tea 18.12.2014 / 03:21

2 respostas

2
  • Depois de ter instalado um pacote, é possível ver quais arquivos esse pacote foi instalado em seu sistema. Você pode fazer isso:

    1. com o gerenciador de pacotes gráficos synaptic:

      • instale o synaptic (ele não é instalado por padrão). Use o apt-get install synaptic ou instale-o através do Software Center. Eu gosto mais do que o Centro de Software, mas YMMV.

      • encontrar o pacote em questão (tente digitar o nome ou uma palavra-chave na barra de pesquisa)

      • clique com o botão direito do mouse em um pacote instalado (quadrado verde ao lado do pacote),

      • selecione Propriedades

      • clique na guia "Arquivos instalados"

    2. com ferramentas de linha de comando (veja esta questão )

      • (uma vez) instale o apt-file : sudo apt-get install apt-file
      • (uma vez) atualização do apt-file
      • (para qualquer pacote) lista de arquivos apt
  • Sim, os pacotes no centro de software são ( edit : principalmente) iguais aos do apt-get. Os repositórios dos quais o Ubuntu obtém software são configurados em um local comum (Configurações do Sistema - > Software & Atualizações). apt-get, synaptic, o Ubuntu Software Center, etc ... todos usam esse sistema.

    • Editar : O subsistema dpkg é o responsável pela instalação e remoção de pacotes. Synaptic, o Centro de Software e apt-get usam tudo isso para realmente executar operações. Isso significa que esses três métodos são todos exibições no mesmo conjunto de dados sobre pacotes instalados.

    • a única ressalva: o Centro de Software pode ter aplicativos que custam dinheiro, e o synaptic e o apt-get não poderão instalar esses pacotes, pois não possuem mecanismo de pagamento. Existem, portanto, aplicativos disponíveis no Centro de Software que não estão disponíveis no synaptic ou apt-get. Acredito (mas não sou 100% positivo) que o Centro de Software ainda usa o dpkg para instalar esses pacotes depois de terem sido pagos, o que significa que as ferramentas do apt e o synaptic os verão nesse ponto.

    • Apenas para esclarecer, é claro que é possível, com o acesso root, modificar o sistema da maneira que desejar, incluindo a instalação manual de software que não esteja contido em um arquivo de pacote .deb. O software instalado fora do sistema dpkg desta forma não será visível por nenhuma das ferramentas de gerenciamento de pacotes que mencionei.

por stochastic 18.12.2014 / 05:09
1

Eu sugiro usar dpkg da linha de comando (shell). O bom disso é que ele já está instalado em seu sistema, porque o apt-get é apenas uma extensão construída em torno do dpkg. O apt-get manipula a verificação dos pacotes disponíveis, a verificação de atualizações, o download dos pacotes, mas o dpkg é o comando que realmente lida com as instalações, remoções, etc.

Para obter uma lista de todos os pacotes instalados, você pode executar dpkg -l . E para listar todos os arquivos em um determinado pacote, você executa dpkg -L <pkg_name> , por exemplo:

dpkg -L zerofree
/.
/usr
/usr/share
/usr/share/man
/usr/share/man/man8
/usr/share/man/man8/zerofree.8.gz
/usr/share/doc
/usr/share/doc/zerofree
/usr/share/doc/zerofree/copyright
/usr/share/doc/zerofree/changelog.Debian.gz
/usr/sbin

Como já explicado por @stochastic, as fontes de pacotes em seu sistema são as mesmas, independentemente de você usar as ferramentas da GUI ou da linha de comandos. Os arquivos de configuração reais estão em /etc/apt/sources.list e /etc/apt/sources.list.d/* .

Note que o dpkg não entende repositórios online, ele pode trabalhar com pacotes que já estão instalados no sistema ou pacotes (.deb) que você baixou manualmente.

    
por BostonHiker 18.12.2014 / 07:03