Se o armazenamento estiver 100% cheio, a compactação não funcionará, pois não há espaço para um arquivo temporário.
Copie os registros para outro armazenamento. scp -r /var/log/ otherhost:
Revise e exclua arquivos de log antigos. find /var/log -mtime +7
Expanda o sistema de arquivos, se necessário.
Comprima alguns arquivos grandes. Recarregue os serviços para abrir um novo arquivo de log. gzip /var/log/httpd/access_log ; systemctl reload httpd.service
Implemente logrotate ou script equivalente para gerenciá-los automaticamente. O padrão usual é mover o arquivo atual para um novo nome e reabrir um novo arquivo de log.
Considere a implementação de um servidor de log remoto e o envio de logs do host em vez disso.
O envio de um sinal a um serviço ou a sua reposição é aceitável depende de você. Claro, você pode tentar em um sistema de teste se isso te deixa nervoso.
Se você não disser ao serviço para abrir um novo arquivo, há outra opção: truncar no lugar. cp /dev/null file.log
ou opção logrotate copytruncate
. No entanto, tome cuidado com o aviso sobre isso não ser atômico na página de manual da taxa de registro:
Note that there is a very small time slice between copying the file and truncating it, so some logging data might be lost.