/var/log
geralmente tem permissões de drwxrwxr-x
, portanto, não é gravável pelo usuário, a menos que o usuário seja root ou pertença a um grupo privilegiado. Isso significa que novos arquivos de log não podem ser criados por usuários sem privilégios.
Os aplicativos que esperam registrar em um ponto dentro de /var/log
geralmente inserem um arquivo em algum lugar na hierarquia /var/log
durante o tempo de instalação (o que geralmente ocorre com privilégios elevados) e chmod
e possivelmente chown
nesse momento para permissões apropriadas para os usuários sem privilégios que usarão o aplicativo.
Os logs do Apache, por exemplo, geralmente são gravados por nobody
, que é um usuário com o menor número de privilégios possível para o Apache realizar seu trabalho sem colocar o sistema em risco indevido. Mas até mesmo um aplicativo mais comum geralmente espera poder gravar em um arquivo de log em /var/log
.
Então, o que acontece se o arquivo de log e o caminho para o arquivo de log não existirem? Isso é totalmente até o aplicativo. Alguns aplicativos silenciosamente ignoram o log. Outros criarão muitos avisos. E outros simplesmente irão salvar. Não há regra rígida; depende da vigilância do desenvolvedor do aplicativo e da importância do desenvolvedor considerar sua capacidade de registro. Na melhor das hipóteses, o aplicativo tentará gravar ou possivelmente criar e, em seguida, gravar em um arquivo de log em um destino dentro de /var/log
, e não conseguirá fazê-lo porque está sendo executado por um usuário que não tem privilégios para escrever nessa parte do sistema de arquivos.
Portanto, a resposta curta é não, não exclua tudo em /var/log
- ela divide os usuários do contrato com privilégios suficientes para fazer essas coisas com os aplicativos que são executados em seu sistema e causará algum ruído, alguns falha silenciosa para registrar e alguma quebra total.
A ação apropriada a ser tomada é configurar logrotate
com os arquivos de configuração apropriados. Normalmente, a rotação será associada a uma tarefa cron. A rotação pode ser baseada em intervalo ou baseada em tamanho, ou em ambos. É até possível configurar regras que evitem a rotação baseada em intervalo se o arquivo de log ainda estiver vazio quando o intervalo expirar. A rotação pode incluir o envio de arquivos de registro, a compactação, a exclusão, a fragmentação e assim por diante.
O usuário comum não precisaria se preocupar muito com a rotação de logs. Os desenvolvedores provavelmente desejariam garantir que os logs que eles usam tivessem regras de rotação estabelecidas. Na verdade, é provável que as boas maneiras da parte dos desenvolvedores configurem a rotação de logs no momento da instalação para qualquer registro específico de software que o software esteja criando e gravando.