Steven Chamberlain a écrit :
grep -R '/mail' /etc/logrotate.*
throws :
/etc/logrotate.d/syslog-ng:/var/log/mail.log /var/log/mail.err 
/var/log/mail.info /var/log/mail.warn /var/log/amavis.log {

What do permissions of /var/log/mail.* look like if you stop syslog-ng
before rotating, like so:

# ls -l /var/log/mail.*
this is the state, after I have run
chmod o+r /var/log/mail.*
like every morning

here are only the 2 fisrt line of each logfile

-rw-r--r-- 1 root adm       0  4 sept. 06:26 /var/log/mail.err
-rw-r--r-- 1 root adm     121  3 sept. 13:16 /var/log/mail.err.1.gz
-rw-r--r-- 1 root adm 2449519  4 sept. 14:01 /var/log/mail.info
-rw-r--r-- 1 root adm  690109  4 sept. 06:26 /var/log/mail.info.1.gz
-rw-r--r-- 1 root adm 3106655  4 sept. 14:01 /var/log/mail.log
-rw-r--r-- 1 root adm  774561  4 sept. 06:26 /var/log/mail.log.1.gz
-rw-r--r-- 1 root adm   76576  4 sept. 14:00 /var/log/mail.warn
-rw-r--r-- 1 root adm   21008  4 sept. 06:22 /var/log/mail.warn.1.gz

also amavis logfile but this one doesn't need chmod to be world readable

-rw-r--r-- 1 amavis amavis 2489175  4 sept. 14:02 /var/log/amavis.log
-rw-r--r-- 1 amavis amavis  882165  4 sept. 06:26 /var/log/amavis.log.1.gz
# /etc/init.d/syslog-ng stop
[ ok ] Stopping system logging: syslog-ng.
# /usr/sbin/logrotate -v -f /etc/logrotate.conf
the lines concerning mail logs in the result :

renaming /var/log/mail.log to /var/log/mail.log.1
creating new /var/log/mail.log mode = 0644 uid = 0 gid = 4
renaming /var/log/mail.info to /var/log/mail.info.1
creating new /var/log/mail.info mode = 0644 uid = 0 gid = 4
renaming /var/log/mail.warn to /var/log/mail.warn.1
creating new /var/log/mail.warn mode = 0644 uid = 0 gid = 4

so it seems that the new files are created with the good permissions
and it's confirmed by
# ls -l /var/log/mail.*
-rw-r--r-- 1 root adm       0  4 sept. 06:26 /var/log/mail.err
-rw-r--r-- 1 root adm     121  3 sept. 13:16 /var/log/mail.err.1.gz
-rw-r--r-- 1 root adm       0  4 sept. 14:09 /var/log/mail.info
-rw-r--r-- 1 root adm  285568  4 sept. 14:08 /var/log/mail.info.1.gz
-rw-r--r-- 1 root adm       0  4 sept. 14:09 /var/log/mail.log
-rw-r--r-- 1 root adm  329472  4 sept. 14:08 /var/log/mail.log.1.gz
-rw-r--r-- 1 root adm       0  4 sept. 14:09 /var/log/mail.warn
-rw-r--r-- 1 root adm    9173  4 sept. 14:05 /var/log/mail.warn.1.gz
# /etc/init.d/syslog-ng start
[ ok ] Starting system logging: syslog-ng.
# sleep 10

# ls -l /var/log/mail.*
-rw-r--r-- 1 root adm       0  4 sept. 06:26 /var/log/mail.err
-rw-r--r-- 1 root adm     121  3 sept. 13:16 /var/log/mail.err.1.gz
-rw-r--r-- 1 root adm       0  4 sept. 14:09 /var/log/mail.info
-rw-r--r-- 1 root adm  285568  4 sept. 14:08 /var/log/mail.info.1.gz
-rw-r--r-- 1 root adm       0  4 sept. 14:09 /var/log/mail.log
-rw-r--r-- 1 root adm  329472  4 sept. 14:08 /var/log/mail.log.1.gz
-rw-r--r-- 1 root adm       0  4 sept. 14:09 /var/log/mail.warn
-rw-r--r-- 1 root adm    9173  4 sept. 14:05 /var/log/mail.warn.1.gz

So it seems that my problem is linked to syslog-ng.
It is confirmed because when I run once again

/usr/sbin/logrotate -v -f /etc/logrotate.conf

While syslog-ng is running, I get

renaming /var/log/mail.log to /var/log/mail.log.1
creating new /var/log/mail.log mode = 0640 uid = 0 gid = 4
renaming /var/log/mail.info to /var/log/mail.info.1
creating new /var/log/mail.info mode = 0640 uid = 0 gid = 4
renaming /var/log/mail.warn to /var/log/mail.warn.1
creating new /var/log/mail.warn mode = 0640 uid = 0 gid = 4
renaming /var/log/amavis.log to /var/log/amavis.log.1
creating new /var/log/amavis.log mode = 0644 uid = 113 gid = 108

The thing that is strange is that the permissions aren't modified when starting syslog-ng, but when running logrotate, while syslog-ng is running.


--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to