Error /etc/aliases.db No such file or directory in Proxmox VE: Guide to Regenerating Postfix Aliases

By Jose FYS

While checking error logs on my main Proxmox node, I came across this error:

The error in Proxmox VE 9.1 logs indicates that Postfix cannot open the /etc/aliases.db mail alias database, which is either missing or corrupt. This problem arises when services like SMART or backups try to send email alerts to “root,” but Postfix cannot correctly resolve the aliases.

Cause

Postfix uses /etc/aliases.db (a hash file generated from /etc/aliases) to map users like “root” to email destinations. If the .db file doesn’t exist, it generates these repeated warnings in /var/log/syslog or /var/log/mail.log, although it doesn’t affect Proxmox’s core functionality.

Solution

Run newaliases as root to automatically regenerate the file:

newaliases

Verify that it has been created (it should be owned by root:root with 644 permissions) with the following command:

ls -l /etc/aliases.db

With these two simple steps, the problem will be solved. Now we just need to restart the service and check the logs:

systemctl restart postfix

Optionally, edit /etc/aliases to redirect root to your email:

nano /etc/aliases

Troubleshooting and Technical Considerations

Error returns after rebooting Ensure you don’t have an automation script or configuration manager (like Ansible) overwriting the /etc/aliases file with incorrect permissions or without executing newaliases afterwards.

Not receiving Proxmox alert emails The aliases.db error prevents local mail routing. Once resolved, you must configure postfix as an internet site or use a relayhost in /etc/postfix/main.cf for root emails to reach your actual inbox.

With these simple steps, we will have one less error/warning on our Proxmox node, keeping everything cleaner. If this post has helped you, share it with other administrators and engineers who can benefit. And follow me for more real experiences from the homelab trenches.