Pourrait-on m'expliquer le comportement de syslog et logrotate qui suit:
Je souhaite que les rotations des logs se fassent en fonction de la taille
des fichiers, sauf pour le mail pour lequel je souhaiterais avoir un fichier
par mois. J'ai donc dans mon /etc/logrotate.conf
#weekly
size=1M
# keep 4 weeks worth of backlogs:
rotate 4
# create new (empty) log files after rotating old ones:
create
/var/log/maillog {
monthly
rotate 6
}
La rotation des logs s'effectue via la crontab de root, que je n'ai pas
modifiée:
# Run daily cron jobs at 4:40 every day:
40 4 * * * /usr/bin/run-parts /etc/cron.daily 1> /dev/null
#
# Run weekly cron jobs at 4:30 on the first day of the week:
30 4 * * 0 /usr/bin/run-parts /etc/cron.weekly 1> /dev/null
#
# Run monthly cron jobs at 4:20 on the first day of the month:
20 4 1 * * /usr/bin/run-parts /etc/cron.monthly 1> /dev/null
Bizarrement, je constate ceci : la création du nouveau maillog a eu lieu
le 1 juin à 4h40, soit l'heure du cron.daily (?), et depuis, ce fichier
reste vide, alors que les entrées relatives au mail continuent de s'ajouter
au maillog.1.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Calimero
Gauthier wrote:
Bizarrement, je constate ceci : la création du nouveau maillog a eu lieu le 1 juin à 4h40, soit l'heure du cron.daily (?), et depuis, ce fichier reste vide, alors que les entrées relatives au mail continuent de s'ajouter au maillog.1.
A priori, il faut dire à ton daemon de mail de fermer/rouvrir son fichier de log.
Sur une Debian, le "script" de postrotate pour Debian fait un reload d'Apache par exemple pour que les fichiers de logs soient fermés/rouverts:
postrotate if [ -f /var/run/apache.pid ]; then if [ -x /usr/sbin/invoke-rc.d ]; then invoke-rc.d apache reload > /dev/null; else /etc/init.d/apache reload > /dev/null; fi; fi;
Il faut donc voir la méthode à appliquer selon ton daemon: un simple kill -s SIGUP sur le pid trouvé dans le pidfile, un reload si tu as déjà des scripts fournis pour un rechargement "propre", ...
-- @+ Calimero
Gauthier wrote:
Bizarrement, je constate ceci : la création du nouveau maillog a eu lieu
le 1 juin à 4h40, soit l'heure du cron.daily (?), et depuis, ce fichier
reste vide, alors que les entrées relatives au mail continuent de s'ajouter
au maillog.1.
A priori, il faut dire à ton daemon de mail de fermer/rouvrir son
fichier de log.
Sur une Debian, le "script" de postrotate pour Debian fait un reload
d'Apache par exemple pour que les fichiers de logs soient fermés/rouverts:
postrotate
if [ -f /var/run/apache.pid ]; then
if [ -x /usr/sbin/invoke-rc.d ]; then
invoke-rc.d apache reload > /dev/null;
else
/etc/init.d/apache reload > /dev/null;
fi;
fi;
Il faut donc voir la méthode à appliquer selon ton daemon: un simple
kill -s SIGUP sur le pid trouvé dans le pidfile, un reload si tu as
déjà des scripts fournis pour un rechargement "propre", ...
Bizarrement, je constate ceci : la création du nouveau maillog a eu lieu le 1 juin à 4h40, soit l'heure du cron.daily (?), et depuis, ce fichier reste vide, alors que les entrées relatives au mail continuent de s'ajouter au maillog.1.
A priori, il faut dire à ton daemon de mail de fermer/rouvrir son fichier de log.
Sur une Debian, le "script" de postrotate pour Debian fait un reload d'Apache par exemple pour que les fichiers de logs soient fermés/rouverts:
postrotate if [ -f /var/run/apache.pid ]; then if [ -x /usr/sbin/invoke-rc.d ]; then invoke-rc.d apache reload > /dev/null; else /etc/init.d/apache reload > /dev/null; fi; fi;
Il faut donc voir la méthode à appliquer selon ton daemon: un simple kill -s SIGUP sur le pid trouvé dans le pidfile, un reload si tu as déjà des scripts fournis pour un rechargement "propre", ...
-- @+ Calimero
gvdmoort
A priori, il faut dire à ton daemon de mail de fermer/rouvrir son fichier de log.
Merci pour cette piste ; mais un reload voire un restart de Postfix n'ont rien changé. Il a été nécessaire de faire un restart du daemon syslog, à partir de quoi les messages ont bien été dirigés vars maillog et non plus maillog.1
-- @+ Calimero
Cordialement,
G.
A priori, il faut dire à ton daemon de mail de fermer/rouvrir son
fichier de log.
Merci pour cette piste ; mais un reload voire un restart de Postfix
n'ont rien changé. Il a été nécessaire de faire un restart du
daemon syslog, à partir de quoi les messages ont bien été dirigés
vars maillog et non plus maillog.1
A priori, il faut dire à ton daemon de mail de fermer/rouvrir son fichier de log.
Merci pour cette piste ; mais un reload voire un restart de Postfix n'ont rien changé. Il a été nécessaire de faire un restart du daemon syslog, à partir de quoi les messages ont bien été dirigés vars maillog et non plus maillog.1