Isso foi editado pelo menos duas vezes para melhorar a clareza - do jeito que está, pode valer a pena mantê-lo aberto (desde que não seja uma duplicata), porque gerou pelo menos uma boa resposta.
Como já foi dito, dpkgé uma ferramenta de sistema de baixo nível para extrair, analisar, descompactar e instalar ou remover arquivos .deb. No entanto, é melhor usar Software Centreou Gdebiinstalar ou remover arquivos .deb que foram obtidos de outras fontes, porque esses dois programas têm resolução de dependência.
No entanto, o que não foi explicado é a anatomia de uma atualização usando dpkge apt-get. Se, por exemplo, chamamos apt-geta instalação cheese, a árvore de dependência é analisada e os arquivos necessários são buscados apt-get, os quais os transmitem dpkgpara extrair, analisar e instalar nos locais corretos e configurá-los de acordo com os scripts dentro deles.
Os scripts lidos dpkgdentro de cada arquivo .deb são importantes, pois fornecem informações ao programa sobre a instalação, remoção e configuração dos pacotes. Portanto, quando você olha para dentro, /var/log/dpkg.loghá muitos detalhes detalhados sobre 'gatilhos' e pacotes passando por vários estágios de descompactação e configuração. Em seu blog, Raphael Hertzog (que é o principal desenvolvedor e mantenedor do dpkgpacote Debian ) explica mais sobre os gatilhos do dpkg e sobre como dpkginspeciona e configura os pacotes.
Agora estamos chegando ao cerne do que dpkgfaz; ele habilmente lida com pacotes Debian, ao invés de suas dependências. Com dpkg-deb, por exemplo, você pode executar várias ações na análise e extração manual de arquivos dos arquivos .deb; veja man dpkg-debpara mais informações.
O status de cada pacote está listado /var/lib/dpkg/status, o qual pode ser usado greppara verificar um pacote específico. DpkgTambém pode ser chamado para reconfigurar pacotes específicos que foram configurados (consulte man dpkg-reconfigure):
sudo dpkg-reconfigure <package>
Ou faça uma configuração de todos os pacotes não configurados se houver um problema com uma atualização e a configuração de alguns pacotes ainda estiver pendente:
sudo dpkg --configure -a
Para um ótimo tutorial focado dpkge apt-get, consulte os capítulos 5 e 6 do Debian Handbook , que é a melhor discussão disponível. Entre man dpkgno seu terminal ou veja as páginas de manual do Ubuntu on-line para ver todas as opções disponíveis, como usar dpkg -lpara listar os pacotes atualmente instalados.
O dpkg é uma forma de linha de comando para instalar a partir de um .deb ou remover os pacotes já instalados. Por exemplo, se você tivesse um arquivo .deb em seu diretório pessoal, a execução dpkg -i yourpackage.debinstalará esse pacote para você. Acho isso útil para mim, porque às vezes, ao clicar em um arquivo .deb, ele carrega o Ubuntu Software Center, mas nunca o instala ou apresenta problemas.
Como sempre, o mancomando é um ótimo lugar para começar. man dpkgpode fornecer todas as opções, no entanto:
O dpkg é um gerenciador de pacotes para sistemas baseados no Debian. Ele pode instalar, remover e criar pacotes, mas, diferentemente de outros sistemas de gerenciamento de pacotes, não pode baixar e instalar automaticamente pacotes e suas dependências.
Então, basicamente, é o apt-get sem resolução de dependência e é usado para instalar arquivos .deb.
No entanto, aviso: Desinstalar pacotes usando o dpkg, na maioria dos casos, NÃO é recomendado. É melhor usar um gerenciador de pacotes que lide com dependências, para garantir que o sistema esteja em um estado consistente.
Por exemplo, usando dpkg -r zipvocê pode remover o pacote zip, mas todos os pacotes que dependem dele ainda serão instalados e podem não funcionar mais corretamente.
Respostas:
Como já foi dito,
dpkg
é uma ferramenta de sistema de baixo nível para extrair, analisar, descompactar e instalar ou remover arquivos .deb. No entanto, é melhor usarSoftware Centre
ouGdebi
instalar ou remover arquivos .deb que foram obtidos de outras fontes, porque esses dois programas têm resolução de dependência.No entanto, o que não foi explicado é a anatomia de uma atualização usando
dpkg
eapt-get
. Se, por exemplo, chamamosapt-get
a instalaçãocheese
, a árvore de dependência é analisada e os arquivos necessários são buscadosapt-get
, os quais os transmitemdpkg
para extrair, analisar e instalar nos locais corretos e configurá-los de acordo com os scripts dentro deles.Os scripts lidos
dpkg
dentro de cada arquivo .deb são importantes, pois fornecem informações ao programa sobre a instalação, remoção e configuração dos pacotes. Portanto, quando você olha para dentro,/var/log/dpkg.log
há muitos detalhes detalhados sobre 'gatilhos' e pacotes passando por vários estágios de descompactação e configuração. Em seu blog, Raphael Hertzog (que é o principal desenvolvedor e mantenedor dodpkg
pacote Debian ) explica mais sobre os gatilhos do dpkg e sobre comodpkg
inspeciona e configura os pacotes.Agora estamos chegando ao cerne do que
dpkg
faz; ele habilmente lida com pacotes Debian, ao invés de suas dependências. Comdpkg-deb
, por exemplo, você pode executar várias ações na análise e extração manual de arquivos dos arquivos .deb; vejaman dpkg-deb
para mais informações.O status de cada pacote está listado
/var/lib/dpkg/status
, o qual pode ser usadogrep
para verificar um pacote específico.Dpkg
Também pode ser chamado para reconfigurar pacotes específicos que foram configurados (consulteman dpkg-reconfigure
):Ou faça uma configuração de todos os pacotes não configurados se houver um problema com uma atualização e a configuração de alguns pacotes ainda estiver pendente:
Para um ótimo tutorial focado
dpkg
eapt-get
, consulte os capítulos 5 e 6 do Debian Handbook , que é a melhor discussão disponível. Entreman dpkg
no seu terminal ou veja as páginas de manual do Ubuntu on-line para ver todas as opções disponíveis, como usardpkg -l
para listar os pacotes atualmente instalados.fonte
O dpkg é uma forma de linha de comando para instalar a partir de um .deb ou remover os pacotes já instalados. Por exemplo, se você tivesse um arquivo .deb em seu diretório pessoal, a execução
dpkg -i yourpackage.deb
instalará esse pacote para você. Acho isso útil para mim, porque às vezes, ao clicar em um arquivo .deb, ele carrega o Ubuntu Software Center, mas nunca o instala ou apresenta problemas.fonte
Como sempre, o
man
comando é um ótimo lugar para começar.man dpkg
pode fornecer todas as opções, no entanto:O dpkg é um gerenciador de pacotes para sistemas baseados no Debian. Ele pode instalar, remover e criar pacotes, mas, diferentemente de outros sistemas de gerenciamento de pacotes, não pode baixar e instalar automaticamente pacotes e suas dependências.
Então, basicamente, é o apt-get sem resolução de dependência e é usado para instalar arquivos .deb.
No entanto, aviso: Desinstalar pacotes usando o dpkg, na maioria dos casos, NÃO é recomendado. É melhor usar um gerenciador de pacotes que lide com dependências, para garantir que o sistema esteja em um estado consistente.
Por exemplo, usando
dpkg -r zip
você pode remover o pacote zip, mas todos os pacotes que dependem dele ainda serão instalados e podem não funcionar mais corretamente.Você pode ler um pouco mais sobre isso no guia do servidor e em outros lugares .
fonte