Como meus bancos de dados são bem pequenos, eu "trapaceio" e uso logrotate para fazer meus backups postgresql. Algo parecido com isto em /etc/logrotate.d/postgresql-backup:
/var/backups/postgresql-dump.sql {
daily
nomissingok
rotate 30
compress
delaycompress
ifempty
create 640 root adm
dateext
postrotate
/usr/bin/sudo -u postgres /usr/bin/pg_dumpall --clean > /var/backups/postgresql-dump.sql
endscript
}
Isso me fornece um despejo completo convenientemente disponível, com menos de um dia de uso, e compacta e gira automaticamente as lixeiras anteriores.
Obviamente, isso não vai escalar com bancos de dados maiores, mas para o meu propósito é quase perfeito. (Eu também uso o BackupPC para lidar com backups externos que incluem os backups postgresql locais)