Esse problema, pelo menos no Ubuntu 12.04, é causado pela pasta / etc / postfix não ser de propriedade do usuário postfix. (como inferido acima).
A mensagem de erro é causada porque você não deve criar diretamente o arquivo .db. Se você fez, exclua-o.
postmap: fatal: cannot remove zero-length database file /etc/postfix/sasl_passwd.db: Permission denied.
A correção simples para o problema original é:
sudo chown postfix /etc/postfix
Depois disso, você pode executar este
sudo postmap sasl_passwd
Onde é assumido que suas senhas de texto não criptografado estão no arquivo sasl_passwd