On Fri, Oct 24, 2014 at 03:55:55PM +0200, Jan P. Kessler wrote:

> 
> # find /var/spool/postfix/defer -type f|wc -l
>     13532

These are not mail messages (those would be in "deferred" not
"defer").  These are "defer logs", used to construct the per-recipient
error reasons in bounce messages.

They are best left alone, but can be deleted with care, something
along the lines of:

        # postfix stop
        # postsuper -s
        # cd /var/spool/postfix
        # (find defer -type f -print;
           find deferred -type f -print) | 
          perl -lne '
                if (m{^defer/(?:.*/)?(.*)$}) {
                    $defer{$1} = $_;
                } elsif (m{^deferred/(?:.*/)?(.*)$}) {
                    delete $defer{$1};
                }
                END {
                    while (($id, $path) = each(%defer)) {
                        if (unlink($path)) {
                            printf "%s defer log deleted\n", $id;
                        } else {
                            warn "unlink: $path: $!\n";
                        }
                    }
                }
            '

-- 
        Viktor.

Reply via email to