Fedora sem rsyslog e cronie
A partir do systemd 38 existe uma implementação syslog nativa, o journal. O Fedora (F17 ou superior), contudo, manteve o rsyslog na instalação padrão, passando a ter dois sistemas de log ao mesmo tempo (o systemd encaminha as mensagens para o rsyslog). Apesar de não ter todos os recursos corporativos do rsyslog, o journal pode ser o suficiente para desktops ou até mesmo servidores. Decidi testar removendo o rsyslog:
Se o Yum estiver configurado para automaticamente remover dependências órfãs, irão junto
Na verdade os demais pacotes serem removidos é um bug, pois o pacote RPM do systemd no Fedora 17 não tem um "Provides: syslog", mesmo tendo uma implementação syslog embutida. No F18, ao remover o rsyslog, o YUM não mais considerará que o cronie e turma ficaram órfãos.
Considerarei que você tenha removido o cronie (fork do cron mantido pela Red Hat) e companhia. Sem ele, as tarefas agendadas não funcionarão mais. Aqui, a única tarefa que preciso é a do logrotate, pois do contrário os logs do Samba e do Squid entupiriam o sistema de arquivos.
Uma unidade do tipo
logrotate.timer →
logrotate.service →
Para ativá-lo:
Para fazer o systemd armazenar o journal no disco:
Pronto, Fedora sem rsyslog e cronie (dois serviços a menos) e com o logrotate sendo executado diariamente. Os arquivos
# yum remove rsyslog
Se o Yum estiver configurado para automaticamente remover dependências órfãs, irão junto
cronie
, cronie-anacron
e crontabs
.Na verdade os demais pacotes serem removidos é um bug, pois o pacote RPM do systemd no Fedora 17 não tem um "Provides: syslog", mesmo tendo uma implementação syslog embutida. No F18, ao remover o rsyslog, o YUM não mais considerará que o cronie e turma ficaram órfãos.
Considerarei que você tenha removido o cronie (fork do cron mantido pela Red Hat) e companhia. Sem ele, as tarefas agendadas não funcionarão mais. Aqui, a única tarefa que preciso é a do logrotate, pois do contrário os logs do Samba e do Squid entupiriam o sistema de arquivos.
Uma unidade do tipo
.timer
nos permite ativar outra .service
em determinado intervalo de tempo. Não possui ajuste tão fino como o cronie, mas é o suficiente. Os arquivos a seguir fazem parte do tarball oficial:logrotate.timer →
/etc/systemd/system/logrotate.timer
logrotate.service →
/etc/systemd/system/logrotate.service
Para ativá-lo:
# systemctl daemon-reload # systemctl enable logrotate.timer # systemctl start logrotate.timer
Para fazer o systemd armazenar o journal no disco:
# mkdir -p /var/log/journal
Pronto, Fedora sem rsyslog e cronie (dois serviços a menos) e com o logrotate sendo executado diariamente. Os arquivos
/var/log/{messages,secure,maillog,spooler}
poderão ser excluídos, pois não serão usados. O journal é um arquivo binário que é manipulado pelo comando journalctl
.
Comentários
Postar um comentário