Onde estão armazenados os arquivos apt-get?


26

Existem várias máquinas virtuais executando o Ubuntu e todas são atualizadas pelo seguinte comando:

apt-get update
apt-get upgrade

Mas atualizar cada VM separadamente leva muito tempo para baixar os pacotes necessários e também usa grande quantidade de largura de banda (da qual estou ficando sem). É possível transferir os arquivos atualizados apt-getdiretamente para as VMs?

Eu sei que os pacotes estão armazenados, /var/cache/apt/archivesmas preciso dos arquivos de banco de dados apt-get (lista de espelhos, índices, pacotes disponíveis em espelhos, ...)


Atualização: Existem muitas soluções

  1. apt-cacher-ng conforme mencionado nas respostas.
  2. Imagens do Docker criadas para armazenar em cache arquivos apt (na verdade, eles executam o squid)
  3. Simplesmente usando Lula

Além disso, como mencionado nas respostas, consulte Melhor maneira de armazenar em cache os downloads apt em uma LAN?

Respostas:


15

Não é uma resposta explícita à sua pergunta, mas você já pensou em configurar um proxy apt? Eu uso o apt-cacher-ng (apt-get install apt-cacher-ng: D). Talvez configure isso no host da VM e diga às VMs (e ao host) para usá-lo como proxy (tão simples como adicionar um arquivo (por exemplo 02proxy) a /etc/apt/apt.conf.d/ conter

Acquire::http { Proxy "http://vm host ip:3142"; };

Dessa forma, você pode fazer isso apt-get upgradesem ter que copiar manualmente o arquivo. Quando um computador baixa os debs, eles serão armazenados no proxy para o próximo computador que solicitar. Pode lidar com vários lançamentos e arquiteturas diferentes, etc.

Apenas um pouco: D


1
Você pode até instalar squid-deb-proxyno servidor proxy e squid-deb-proxy-clientem outros; isso fará com que a detecção de proxy funcione de forma transparente (usando o Avahi), sem a necessidade de configuração do lado do cliente. Como bônus, se o servidor proxy não for encontrado na rede local, o cliente se conectará diretamente aos repositórios (tornando-o adequado mesmo para laptops).
— Piskvor

Segundo o uso do Squid-deb-proxy sobre o Apt-cacher. Relevante P: Melhor maneira de armazenar em cache os downloads apt em uma LAN?
— gertvdijk

36

Os arquivos .deb dos quais você já baixou são armazenados /var/cache/apt/archives/.


Oooh, me bater por 26 segundos :)
— Naftuli Kay

6
É por isso que tenho reputação duas vezes maior ;-P
— turbo

1
Oooooohhhh, burrrrn. :)
— Naftuli Kay


0

Você pode fazer backup de todo o * .deb, copiá-lo para o vmware e copiá-lo /root/sw_backup. A pasta não pode ser /var/cache/apt/archives/.

Em seguida, você pode instalá-lo localmente com o synaptic. Menu "arquivo" $ synaptic para encontrar a instalação local. mas também precisa de rede, só precisa atualizar um pequeno pacote.


Por favor note que este deve ser .deb não .dep
— Malfist
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.