Estou tentando alterar temporariamente as permissões de uma pasta cujas permissões iniciais são
user@ubuntu:/var/log$ ls -l squid*
squid3:
total 4
-rw-r----- 1 proxy proxy 0 Jan 16 14:43 access.log
-rw-r----- 1 proxy proxy 1359 Jan 16 14:43 cache.log
ls: cannot open directory squid-deb-proxy: Permission denied
para alguma coisa a seguir
user@ubuntu:/var/log$ sudo chmod -R 644 squid*
user@ubuntu:/var/log$ ls -l squid*
squid3:
ls: cannot access squid3/cache.log: Permission denied
ls: cannot access squid3/access.log: Permission denied
total 0
-????????? ? ? ? ? ? access.log
-????????? ? ? ? ? ? cache.log
squid-deb-proxy:
ls: cannot access squid-deb-proxy/store.log: Permission denied
ls: cannot access squid-deb-proxy/cache.log: Permission denied
ls: cannot access squid-deb-proxy/access.log: Permission denied
total 0
-????????? ? ? ? ? ? access.log
-????????? ? ? ? ? ? cache.log
-????????? ? ? ? ? ? store.log
Você notará que após a alteração das permissões, há pontos de interrogação em todos os lugares. Por que isso está acontecendo? Basicamente, eu quero ler o log de acesso para ver se o servidor squid-deb-proxy está recebendo solicitações do cliente ou não.
fonte
chmod -R 644 squid*
rw-r--r--
adequado para arquivos, mas não para diretórios. Os diretórios também precisam ter a permissão de execução definida, como esta:rwxr-xr-x
ou 755. O comando que você mencionou desabilita a permissão de execução em todos os arquivos e diretórios recursivamente, o que causa esses erros.Eu tive esse problema também. Eu não poderia fazer chmod ou chown no arquivo. Eu tentei excluí-lo. Acontece que tentar excluí-lo (comando rm) causou o problema. O kicker é que o arquivo é compartilhado entre dois sistemas diferentes . Depois que fechei o arquivo no outro sistema, o arquivo desapareceu. Aqui estão mais detalhes da minha configuração. sistema 1: VM convidada do Ubuntu. Foi aqui que eu fiz o comando rm. sistema 2: host do Windows 7. Foi aqui que abri o arquivo usando o comando less (no cygwin, não que seja necessariamente relevante).
fonte
Como você afirmou que seu objetivo é ler
/var/log/squid/access.log
, sua melhor solução é digitarsudo less /var/log/squid/access.log
, o que poupa o trabalho de repetir repetições.fonte