I'm currently running out of ideas. The proftpd daemon doesn't restart if logrotate is triggered by the cron task. Logrotate rotates all the logfiles, stops proftpd, but does not start proftpd again. 

If I force the rotation with `logrotate -f /etc/logrotate.d/proftpd-basic` everything works fine..

I got the following setup. 

**cat /etc/cron.daily/logrotate**

 #!/bin/sh

 test -x /usr/sbin/logrotate || exit 0
 /usr/sbin/logrotate /etc/logrotate.conf 

**cat /etc/logrotate.conf** 

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

 # 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

**cat /etc/logrotate.d/proftpd-basic**

 /var/log/proftpd/proftpd.log
 /var/log/proftpd/controls.log
 {
 weekly
 missingok
 rotate 7
 compress
 delaycompress
 notifempty
 create 640 root adm
 sharedscripts
 postrotate
 # reload could be not sufficient for all logs, a restart is safer
 invoke-rc.d proftpd restart 2>/dev/null >/dev/null || true
 #invoke-rc.d proftpd reload 2>/dev/null >/dev/null || true
 endscript
 }

 /var/log/proftpd/xferlog
 /var/log/proftpd/xferreport
 {
 monthly
 missingok
 rotate 7
 compress
 delaycompress
 notifempty
 create 640 root adm
 sharedscripts
 prerotate
 endscript
 postrotate
 # reload could be not sufficient for all logs, a restart is safer
 invoke-rc.d proftpd restart 2>/dev/null >/dev/null || true
 #invoke-rc.d proftpd reload 2>/dev/null >/dev/null || true
 # run ftpstats on past transfer log
 ftpstats -a -r -l 2 -d -h -f /var/log/proftpd/xferlog.0 2>/dev/null >/var/log/proftpd/xferreport || true
 endscript
 }