Como adicionar pacotes a um cache squid-deb-proxy?

9

Para economizar largura de banda e dados no meu plano de Internet, eu instalei o squid-deb-proxy em um desktop, e o cliente nele e em algumas outras máquinas que eu tenho. No entanto, com base na o post que me colocou nisso, parece que se eu levar meu laptop * para uma rede diferente e atualizá-lo lá, as atualizações baixadas NÃO serão automaticamente copiadas de volta para o servidor squid-deb-proxy quando eu voltar à minha rede.

Assumindo que isso está correto (irei testar mais tarde), existe uma maneira de colocar esses pacotes no cache para que eu não tenha que baixá-los mais uma vez para outras máquinas na rede?

* Como observado nos comentários, eu poderia simplesmente tornar o laptop o servidor proxy, mas no meu caso específico, o laptop é na verdade 1) uma VM que não está em execução o tempo todo, 2) em um laptop que não é abra o tempo todo. Como tal, essa solução, embora boa, não funciona no meu caso.

    
por zpletan 10.03.2012 / 22:45

3 respostas

2

Você pode usar apt-move (do pacote com o mesmo nome) para criar um repositório apt local a partir dos arquivos no cache do apt do seu laptop. Em seguida, use rsync para manter uma cópia sincronizada deste repositório na sua LAN. Finalmente, aponte outras máquinas LAN para sua cópia de LAN do repositório local no início de sources.list , para que o apt prefira o repositório local sobre os remotos.

    
por Robie Basak 16.07.2012 / 01:04
0

Esta ainda é uma resposta incompleta, mas pode ser a melhor resposta possível, então continue a ler se estiver curioso sobre possíveis soluções parciais / feias / complicadas.

Pergunta intrigante, eu encontrei o mesmo problema, mas eu nunca consertei, ao invés disso eu tentei limitar meu apt-getting fora da minha lan local. Realmente não valia a pena o incômodo, no máximo eu desperdicei 20MB ao longo do ano passado. Minha iso torrente semeando compensa isso. Mas!

  1. você pode configurar um túnel / proxy entre seu laptop e sua casa para utilizar o cache da sua casa (é uma boa ideia, por motivos de privacidade), mas dependerá da velocidade do upload. Não só isso seria lento, mas você usaria 2x a largura de banda para baixar a mesma coisa. 1x indo para a sua lan dos espelhos do Ubuntu e 1x para a cafeteria.

  2. Proponho que seja possível executar o servidor de cache em seu laptop e, em seguida, usar o rsync para mantê-lo em sincronia com seu servidor doméstico. Isso apresenta um problema, no entanto, quando você está em casa, esse servidor no seu laptop ainda estará em execução. Para lidar com isso, pude ver duas possibilidades. 1. parar o servidor de cache em seu laptop enquanto em casa 2. manter todas as cópias em cache que existem em seu servidor doméstico em seu laptop também (requisitos de espaço extra) e fazer isso, não só empurrando dados em cache para o servidor com quando chegar casa com rsync, mas também regularmente puxando os dados em cache para o seu servidor de laptop. Ao sugerir isso, assumi que o cache squid-deb-proxy em um servidor é compatível com outro e que você pode trocar e retirar arquivos assim. Essas opções também certamente exigirão alguns scripts. O cache para mim está localizado em / var / cache / squid-deb-proxy / e abaixo disso não é imediatamente compreensível para humanos.

por David A 03.07.2012 / 23:57
0

Nós usamos uma abordagem simples e estúpida: o squid-deb-proxy pode se usar como proxy. Portanto, eu apenas faço:

  1. Eu instalo o software cliente no servidor squid-deb-proxy:

    apt-get instala o squid-deb-proxy-client

  2. Eu criei um script simples que lista todos os pacotes instalados - e baixe novamente cada pacote:

    #!/bin/bash  
    # Create temp dir & change into it
    tmpdir=$(mktemp -d) 
    pushd $tmpdir   
    # Get all installed packages and re-download them
    for package in $(dpkg --get-selections | cut -f 1); do apt-get download $package; done;
    popd
    # Delete tmp dir
    

Dessa forma, já temos um cache básico não tão ruim.

Se quisermos adicionar todos os pacotes de um servidor existente ao cache, basta executar o mesmo procedimento 1) e 2)

    
por Tom 28.09.2015 / 15:08