Proxy Squid3 Não é possível gravar o arquivo de log

1

Eu instalei o Squid3 no Rasbian e fiz algumas configurações menores. Então eu configuro para armazenar em cache uma unidade USB de montagem automática.

Eu estava pesquisando os logs e encontrei apenas TCP_MISS . Eu estava esperando depois de um pouco de usar o Squid com o que eu veria alguns hits. Eu olhei no cache (a árvore do ufs está lá) e parece estar armazenando arquivos em cache.

Corri squid -X -d9 e recebi erros de que os arquivos de log não puderam ser gravados:

FATAL: Cannot open '/var/log/squid3/access.log' for writing.
The parent directory must be writeable by the
user 'proxy', which is the cache_effective_user
set in squid.conf.
Squid Cache (Version 3.1.20): Terminated abnormally.

as permissões para /var/log/squid3 são:

drwxrwxr-x  2 proxy proxy   4096 Apr 29 14:13 squid3

e dentro:

-rwxrwx--- 1 proxy proxy      0 Apr 29 06:25 access.log
-rwxrwx--- 1 proxy proxy 303469 Apr 28 23:41 access.log.1
-rwxrwxrwx 1 proxy proxy  14730 Apr 29 14:47 cache.log
-rwxrwx--- 1 proxy proxy  79626 Apr 28 22:00 cache.log.1
-rwxrwx--- 1 root  root       0 Apr 27 14:09 store.log.1

Permissões para o cache montado em /cache0

drwxrwxr-x  19 root proxy  4096 Apr 29 14:47 cache0

Como posso resolver esses erros? Obrigado antecipadamente.

    
por jason 30.04.2013 / 03:13

2 respostas

2

O usuário padrão do squid proxy precisa de permissão de escrita do pai para todos os diretórios aos quais ele grava; incluindo o diretório de cache ( cache_dir ) e arquivos de log.

Eu não queria alterar as permissões de /var ou /var/log , então criei um novo diretório /squid3_logs e configurei os locais do log em squid.conf .

access_log /squid3_logs/access.log squid
cache_store_log /squid3_logs/store.log
cache_log /squid3_logs/cache.log

Eu também me certifiquei de que todos os arquivos e subdiretórios no meu cache ( /cache0 ) tivessem as permissões adequadas. Quando eu executei o comando de depuração squid -X -d9 como meu usuário, acho que eu mudei automaticamente o proprietário swap.state para mim.

sudo chown proxy:proxy /cache0/swap.state
sudo chmod -R 775 /cache0

Agora tudo parece estar funcionando. Eu não estou encontrando nenhum erro quando eu executo o comando debug, ou quando eu analisar o arquivo de configuração ( squid3 -k parse ).

    
por 30.04.2013 / 11:35
-1

Primeiro, altere o proprietário para o proxy e adicione o usuário no squid.conf conforme indicado abaixo proxy chown sudo: proxy / usr / local / squid -R

por erro de permissão você acabou de definir o cache_effective_user no squid.conf e reiniciar o squid. /usr/local/squid/etc/squid.conf

proxy cache_effective_user

Esta configuração resolveu meu problema

    
por 25.10.2017 / 18:38