Como posso configurar o logrotate sem ter '/etc/logrotate.d/rsyslog'?

0

Estou tentando configurar a rotação de log na minha máquina Ubuntu para que os logs sejam rotacionados todos os dias e mantidos por 14 dias. A maioria dos tutoriais que eu acho, como este , mencionam que eu deveria modificar /etc/logrotate.d/rsyslog , mas esse arquivo não existe na minha máquina. Como posso saber onde as configurações de logrotation estão armazenadas? Que arquivo eu preciso modificar no Ubuntu 16.04 para configurar a rotação diária de logs?

Quando olho para man logrotate , parece que a configuração está em /etc/logrotate.conf . Aqui está o conteúdo desse arquivo:

# see "man logrotate" for details
# rotate log files weekly
weekly

# use the syslog group by default, since this is the owning group
# of /var/log/syslog.
su root syslog

# keep 4 weeks worth of backlogs
rotate 4

# create new (empty) log files after rotating old ones
create

# uncomment this if you want your log files compressed
#compress

# packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp, or btmp -- we'll rotate them here
/var/log/wtmp {
    missingok
    monthly
    create 0664 root utmp
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0660 root utmp
    rotate 1
}

# system-specific logs may be configured here

Isso é tudo o que está lá. Tentei alterar weekly para daily e rotate 4 para rotate 10 , mas agora não aparecem registros em /var/log/syslog

O que estou perdendo? Preciso adicionar uma configuração para /var/log/syslog neste arquivo?

    
por Aras 06.07.2017 / 18:08

1 resposta

1

Você não precisa do arquivo /etc/logrotate.d/rsyslog para girar os registros. Qualquer arquivo criado no diretório /etc/logrotate.d pode ser usado para girar logs. os arquivos são geralmente criados com propriedade root e permissões 644 (rx-r - r -).

Eu tenho um arquivo /etc/logrotate.d/rsyslog no meu servidor 14.04 e estes são os conteúdos.

/var/log/syslog
{
        rotate 7
        daily
        missingok
        notifempty
        delaycompress
        compress
        postrotate
                reload rsyslog >/dev/null 2>&1 || true
        endscript
}

/var/log/mail.info
/var/log/mail.warn
/var/log/mail.err
/var/log/mail.log
/var/log/daemon.log
/var/log/kern.log
/var/log/auth.log
/var/log/user.log
/var/log/lpr.log
/var/log/cron.log
/var/log/debug
/var/log/messages
{
        rotate 4
        weekly
        missingok
        notifempty
        compress
        delaycompress
        sharedscripts
        postrotate
                reload rsyslog >/dev/null 2>&1 || true
        endscript
}

Pode não haver registros em seu arquivo syslog se ele foi criado após a rotação com as permissões e propriedade incorretas. os meus são configurados para 640 permissões (rw-r -----) e syslog: adm como proprietário e grupo.

    
por Arronical 06.07.2017 / 18:38