
Ao executar logrotate
mostra o seguinte:
error: error creating output file /var/log/remote/172.29.202.29/contrail-vrouter-agent.log.1: File exists
error: error creating output file /var/log/remote/172.29.207.139/swift-object-server.log.1: File exists
...
Existem cerca de 1000 desses log.1
arquivos existentes. Gostaria de renomear todos eles para ***log.2
que possa executar novamente logrotate
com êxito.
Como eu faço isso?
Responder1
Se você está apenas procurando uma solução única, isso deve resolver:
find /var/log/remote/ -maxdepth 2 -type f -name *.log.1 | sed -e 's/log\.1/log\./g' | xargs -i mv {}1 {}2
No entanto, observe que isso renomearáTODOS *.log.1
arquivos em/var/log/remote/*/
Portanto, se houver alguns diretórios que você deseja pular /var/log/remote/
, você deve usar a -not -path <path>
opção após localizar (vejaesta resposta em outro tópico para um exemplo)