É seguro excluir arquivos de log?

2

Descobri que poucos arquivos parecem se acumular em tamanho usando este comando:

find / -size +50M

A maioria deles são arquivos de log, então eu gostaria de saber se é seguro excluir os arquivos de log. os arquivos de log em questão são:

/var/log/httpd/mySite.com-access.log.1
/var/log/httpd/access_log.1
/var/log/httpd/mySite.com-access.log
/var/log/maillog.4.gz
/var/log/maillog 

A versão do servidor é:     cat / etc / centos-release     Lançamento do CentOS 6.2 (Final)

E se estiver tudo bem para deletar - como faço isso? Acabei de excluir o arquivo com rm ou devo "limpar seu conteúdo" fazendo, por exemplo:

cat /dev/null > access_log.1 
    
por Nikola 19.06.2012 / 13:07

4 respostas

7

É seguro excluí-los? Muito provavelmente sim. Alguns arquivos, como o log de e-mail, talvez você queira apenas concat-los via cat /dev/null > somefile . Na maioria das vezes, os arquivos terminados em .1 foram alternados por rotação de log, verifique seu arquivo de configuração e, com freqüência, a rotação de log também excluirá os arquivos mais antigos. Assim, frequentemente, os arquivos de log que terminam em .1 podem ser excluídos.

Tempo ou não, é uma boa idéia para apagar os arquivos de log é um problema diferente todos juntos. Dependendo de quem é o servidor, e assim por diante, pode haver potenciais ramificações legais para a exclusão de arquivos que você é obrigado a manter por períodos de tempo específicos. Se for o seu servidor, é bom manter os arquivos pelo tempo que achar necessário. No entanto, antes de excluir os arquivos, é sempre bom dar uma olhada em alguns deles, procurando por mensagens comumente repetidas e / ou as frases "error", "deny" e "abort".

    
por 19.06.2012 / 13:14
2

logrotate é normalmente configurado por padrão para alternar semanalmente e manter 4 registros antigos. Você pode obter um uso de espaço mais consistente alterando isso para diário e mantendo 28 logs antigos. Você ainda está mantendo o mesmo período de tempo, mas agora 26 dos últimos 28 dias serão sempre compactados, em vez de variar entre 27 e 21 dias à medida que a semana passa. Você pode fazer isso 27 dos últimos 28 dias removendo a opção delaycompress na configuração do logrotate.

As configurações para logrotate estão em /etc/logrotate.d/ . Geralmente, há um arquivo para cada serviço que produz logs.

No que se refere à exclusão, não importa muito para arquivos de log antigos que já foram girados (aqueles que terminam em .1 ou .4.gz ), mas para arquivos de log que estão sendo gravados, usando rm pode causar uma situação estranha em que o arquivo não existe mais nesse diretório, mas o processo ainda o mantém aberto e está gravando nele. Você não terá liberado espaço em disco e não poderá acessar os registros que estão sendo gravados. Cada serviço tem um método diferente para notificá-lo que deve iniciar um novo arquivo de log e estes são geralmente codificados na seção postrotate dos arquivos de configuração do logrotate.

    
por 19.06.2012 / 13:29
0

Se você não precisar deles (verifique muito bem se o fizer, pode ter havido erros, violações de segurança, etc.), você pode excluí-los. Depois de excluir (ou ecoar "" neles), por segurança, reinicie o serviço que produz os arquivos de log.

Se você tiver problemas constantes com os tamanhos dos arquivos de log, considere a instalação de uma implementação "logrotate", que fecha, arquiva e exclui os arquivos de log após um período de tempo especificado.

    
por 19.06.2012 / 13:18
0

Por que excluir arquivos de log?

Se você está com falta de espaço, grave-os em CD ou DVD ou redirecione-os para uma unidade flash USB, para que você, pelo menos, os tenha em algum lugar, se precisar deles.

    
por 19.06.2012 / 14:35