Como obter o apt para criar arquivos em / var / cache / apt / archives sempre legíveis por todos?

3

Eu quero que os arquivos em /var/cache/apt/archives sempre tenham permissões de leitura para todos. Ou seja, sempre que apt fizer o download de um novo arquivo para esse diretório, ele deverá torná-lo legível para o mundo. Este não é o caso atualmente, uma entrada de exemplo de ls -l /var/cache/apt/archives se parece com isto:

-rw------- 1 root root 26928 2009-05-03 20:34 /var/cache/apt/archives/sl_3.03-16_amd64.deb

O que devo fazer para que os arquivos fiquem sempre legíveis?

(Além: eu quero isso porque eu tenho alguns laptops Ubuntu em uma LAN e usando scp ou rsync eu ocasionalmente copio /var/cache/apt/archives de um laptop para o outro. Eu não uso o apt-cacher ou squid-deb-proxy etc, porque a qualquer momento qualquer subconjunto dos laptops pode estar conectado à rede, não tenho servidor central.)

    
por Prateek 08.11.2011 / 16:34

1 resposta

1

O APT é afetado pelo umask da raiz que é herdada da configuração global de /etc/profile . Você provavelmente tem uma linha com umask 077 . Para tornar os arquivos legíveis por padrão, você terá que alterá-los para:

umask 022

Para alterar as permissões dos arquivos existentes, execute:

sudo chmod 644 /var/cache/apt/archives/*

Para copiar arquivos de uma máquina para outra, você pode usar netcat . Na máquina de origem (ip = 10.0.0.2 ) que tem .deb arquivos a serem distribuídos, você precisa instalar netcat-traditional e executar:

cd /var/cache/apt/archives
tar c * | nc.traditional -l -p 1234

Substitua * pelos arquivos que você deseja copiar.

Na máquina de destino, execute:

nc 10.0.0.2 1234 | sudo tar xv -C /var/cache/apt/archives
    
por Lekensteyn 08.11.2011 / 17:46