📝 Preliminary Checks
👀 What Happened?
With a clean new install, newly built container, and one user created, Postfix fails to start, with a permissions error on the master.lock file:
/var/lib/postfix/master.lock: cannot create file exclusively: Permission denied
$ date
Wed May 21 09:50:55 AM NZST 2025
DMS_GITHUB_URL="https://raw.githubusercontent.com/docker-mailserver/docker-mailserver/master"
wget "${DMS_GITHUB_URL}/compose.yaml"
wget "${DMS_GITHUB_URL}/mailserver.env"
docker-compose up -d --force-recreate
docker exec -it mailserver setup email add [email protected] secret
The directory in question is a symlink to /var/mail-state/lib-postfix, which is owned by amavis with 755 permissions:
root@mail:/var/mail-state/lib-postfix# ls -lrtd .
drwxr-xr-x 2 amavis root 0 Mar 7 2024 .
To try and minimise the problem, the only changes I've made are in compose.yaml
- To set the domain, set
LOG_LEVEL=debug, and on first start, I ran exec setup to create a single email user.
- I've used
example.org for this troubleshooting, but I previously tried it with my real domain, and had the same result.
- After creating the email user, the logs show the daemons starting, and Postfix fails with a permissions error on the lock file.
This seems like the same error message from 2017 in issue #545 but that was solved years ago.. and yet.. this seems to happen now, on :latest, reliably, and with a clean install. I'm hesitant to go poking around inside the image's filesystem and making permissions changes there, because it shouldn't be doing this to begin with.
Also there's a typo in the debug log message: "Ensuring /var/log/mail owneership + permissions are correct" in start-mailserver.sh
👟 Reproduction Steps
As above
🐋 DMS Version
v15.0.2
💻 Operating System and Architecture
Ubuntu 22.04 LTS
⚙️ Container configuration files
services:
mailserver:
image: ghcr.io/docker-mailserver/docker-mailserver:latest
container_name: mailserver
# Provide the FQDN of your mail server here (Your DNS MX record should point to this value)
hostname: mail.example.com
env_file: mailserver.env
# More information about the mail-server ports:
# https://docker-mailserver.github.io/docker-mailserver/latest/config/security/understanding-the-ports/
ports:
- "25:25" # SMTP (explicit TLS => STARTTLS, Authentication is DISABLED => use port 465/587 instead)
# - "143:143" # IMAP4 (explicit TLS => STARTTLS)
# - "465:465" # ESMTP (implicit TLS)
# - "587:587" # ESMTP (explicit TLS => STARTTLS)
# - "993:993" # IMAP4 (implicit TLS)
volumes:
- ./docker-data/dms/mail-data/:/var/mail/
- ./docker-data/dms/mail-state/:/var/mail-state/
- ./docker-data/dms/mail-logs/:/var/log/mail/
- ./docker-data/dms/config/:/tmp/docker-mailserver/
- /etc/localtime:/etc/localtime:ro
restart: always
stop_grace_period: 1m
# Uncomment if using `ENABLE_FAIL2BAN=1`:
# cap_add:
# - NET_ADMIN
healthcheck:
test: "ss --listening --tcp | grep -P 'LISTEN.+:smtp' || exit 1"
timeout: 3s
retries: 0
📜 Relevant log output
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Handling general environment variable setup
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Exporting environment variables now (creating '/etc/dms-settings')
mailserver | 2025-05-21 09:52:34+12:00 INFO start-mailserver.sh: Welcome to docker-mailserver v15.0.2
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Registering functions
mailserver | 2025-05-21 09:52:34+12:00 INFO start-mailserver.sh: Checking configuration
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Checking that hostname/domainname is provided or overridden
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Domain has been set to example.com
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Hostname has been set to mail.example.com
mailserver | 2025-05-21 09:52:34+12:00 INFO start-mailserver.sh: Configuring mail server
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Setting up Dovecot
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Enabling IMAP services
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Setting up Dovecot dhparam
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Setting up Dovecot quota
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Spam subject is not set - no prefix will be added to spam e-mails
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Spam emails will be moved to the Junk folder
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Spam emails will not be marked as read
mailserver | 2025-05-21 09:52:34+12:00 DEBUG start-mailserver.sh: Setting up Dovecot Local User
mailserver | 2025-05-21 09:52:34+12:00 WARN start-mailserver.sh: You need at least one mail account to start Dovecot (120s left for account creation before shutdown)
mailserver | 2025-05-21 09:52:44+12:00 WARN start-mailserver.sh: You need at least one mail account to start Dovecot (110s left for account creation before shutdown)
mailserver | 2025-05-21 09:52:54+12:00 WARN start-mailserver.sh: You need at least one mail account to start Dovecot (100s left for account creation before shutdown)
mailserver | 2025-05-21 09:53:04+12:00 WARN start-mailserver.sh: You need at least one mail account to start Dovecot (90s left for account creation before shutdown)
mailserver | 2025-05-21 09:53:14+12:00 WARN start-mailserver.sh: You need at least one mail account to start Dovecot (80s left for account creation before shutdown)
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Creating user 'user' for domain 'example.org'
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Configuring DKIM
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: OpenDKIM enabled but no DKIM key(s) provided
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Configuring OpenDMARC
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Configuring policyd-spf
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Setting up Security Stack
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Postgrey is disabled
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Configuring Postscreen
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Disabling Postscreen DNSBLs
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: SpamAssassin is disabled
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Disabling ClamAV
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Fail2Ban is disabled
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Configuring Amavis
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Rspamd is disabled
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Setting up SSL
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: TLS configured with 'modern' ciphers
mailserver | 2025-05-21 09:53:24+12:00 WARN start-mailserver.sh: !! INSECURE !! SSL configured with plain text access - DO NOT USE FOR PRODUCTION DEPLOYMENT
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Setting up PERMIT_DOCKER option
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Setting up mailname and creating '/etc/mailname'
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Configuring Postfix (early setup)
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: '/tmp/docker-mailserver/postfix-virtual.cf' not provided - no mail alias/forward created
mailserver | 2025-05-21 09:53:24+12:00 DEBUG start-mailserver.sh: Setting up Postfix dhparam
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Spoof protection is disabled
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Configuring Postfix (late setup)
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Setting up Postfix Relay Hosts
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: (Postfix setup) Overriding / adjusting configuration with user-supplied values
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Fetchmail is disabled
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Fetchmail parallel is disabled
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Getmail is disabled
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Setting up logrotate
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Postfix log summary reports disabled
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Logwatch reports disabled.
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Consolidating all state onto /var/mail-state
mailserver | mv: cannot create symbolic link '/var/mail-state/lib-amavis/.razor/identity': Operation not supported
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Checking /var/mail permissions
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Removing files and directories from older versions
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Ensuring /var/log/mail owneership + permissions are correct
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Setting up configuration checksum file
mailserver | 2025-05-21 09:53:25+12:00 DEBUG print-environment: Printing environment variables. Make sure no sensitive data is copied.
mailserver | ACCOUNT_PROVISIONER='FILE'
mailserver | AMAVIS_LOGLEVEL='0'
mailserver | CLAMAV_MESSAGE_SIZE_LIMIT='25M'
mailserver | DEFAULT_RELAY_HOST=''
mailserver | DMS_VMAIL_GID='5000'
mailserver | DMS_VMAIL_UID='5000'
mailserver | DOVECOT_INET_PROTOCOLS='all'
mailserver | DOVECOT_MAILBOX_FORMAT='maildir'
mailserver | DOVECOT_TLS='no'
mailserver | ENABLE_AMAVIS='1'
mailserver | ENABLE_CLAMAV='0'
mailserver | ENABLE_DNSBL='0'
mailserver | ENABLE_FAIL2BAN='0'
mailserver | ENABLE_FETCHMAIL='0'
mailserver | ENABLE_GETMAIL='0'
mailserver | ENABLE_IMAP='1'
mailserver | ENABLE_MANAGESIEVE='0'
mailserver | ENABLE_OAUTH2='0'
mailserver | ENABLE_OPENDKIM='1'
mailserver | ENABLE_OPENDMARC='1'
mailserver | ENABLE_POLICYD_SPF='1'
mailserver | ENABLE_POP3='0'
mailserver | ENABLE_POSTGREY='0'
mailserver | ENABLE_QUOTAS='1'
mailserver | ENABLE_RSPAMD='0'
mailserver | ENABLE_RSPAMD_REDIS='0'
mailserver | ENABLE_SASLAUTHD='0'
mailserver | ENABLE_SPAMASSASSIN='0'
mailserver | ENABLE_SPAMASSASSIN_KAM='0'
mailserver | ENABLE_SRS='0'
mailserver | ENABLE_UPDATE_CHECK='1'
mailserver | FAIL2BAN_BLOCKTYPE='drop'
mailserver | FETCHMAIL_PARALLEL='0'
mailserver | FETCHMAIL_POLL='300'
mailserver | GETMAIL_POLL='5'
mailserver | LOGROTATE_COUNT='4'
mailserver | LOGROTATE_INTERVAL='weekly'
mailserver | LOGWATCH_INTERVAL='none'
mailserver | LOGWATCH_RECIPIENT='[email protected]'
mailserver | LOGWATCH_SENDER='[email protected]'
mailserver | LOG_LEVEL='debug'
mailserver | MARK_SPAM_AS_READ='0'
mailserver | MOVE_SPAM_TO_JUNK='1'
mailserver | NETWORK_INTERFACE='eth0'
mailserver | OVERRIDE_HOSTNAME=''
mailserver | PERMIT_DOCKER='none'
mailserver | PFLOGSUMM_RECIPIENT='[email protected]'
mailserver | PFLOGSUMM_SENDER='[email protected]'
mailserver | PFLOGSUMM_TRIGGER='none'
mailserver | POSTFIX_DAGENT=''
mailserver | POSTFIX_INET_PROTOCOLS='all'
mailserver | POSTFIX_MAILBOX_SIZE_LIMIT='0'
mailserver | POSTFIX_MESSAGE_SIZE_LIMIT='10240000'
mailserver | POSTFIX_REJECT_UNKNOWN_CLIENT_HOSTNAME='0'
mailserver | POSTGREY_AUTO_WHITELIST_CLIENTS='5'
mailserver | POSTGREY_DELAY='300'
mailserver | POSTGREY_MAX_AGE='35'
mailserver | POSTGREY_TEXT='Delayed by Postgrey'
mailserver | POSTMASTER_ADDRESS='[email protected]'
mailserver | POSTSCREEN_ACTION='enforce'
mailserver | RELAY_HOST=''
mailserver | REPORT_RECIPIENT='[email protected]'
mailserver | REPORT_SENDER='[email protected]'
mailserver | RSPAMD_CHECK_AUTHENTICATED='0'
mailserver | RSPAMD_GREYLISTING='0'
mailserver | RSPAMD_HFILTER='1'
mailserver | RSPAMD_HFILTER_HOSTNAME_UNKNOWN_SCORE='6'
mailserver | RSPAMD_LEARN='0'
mailserver | RSPAMD_NEURAL='0'
mailserver | SA_KILL='10.0'
mailserver | SA_TAG2='6.31'
mailserver | SA_TAG='2.0'
mailserver | SMTP_ONLY='0'
mailserver | SPAMASSASSIN_SPAM_TO_INBOX='1'
mailserver | SPAM_SUBJECT=''
mailserver | SPOOF_PROTECTION='0'
mailserver | SRS_DOMAINNAME='example.com'
mailserver | SRS_EXCLUDE_DOMAINS=''
mailserver | SRS_SECRET=''
mailserver | SRS_SENDER_CLASSES='envelope_sender'
mailserver | SSL_TYPE=''
mailserver | SUPERVISOR_LOGLEVEL='warn'
mailserver | TLS_LEVEL='modern'
mailserver | TZ=''
mailserver | UPDATE_CHECK_INTERVAL='1d'
mailserver | VIRUSMAILS_DELETE_DELAY='7'
mailserver | 2025-05-21 09:53:25+12:00 INFO start-mailserver.sh: Starting daemons
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Starting cron
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Starting rsyslog
mailserver | 2025-05-21 09:53:25+12:00 DEBUG start-mailserver.sh: Starting dovecot
mailserver | 2025-05-21 09:53:26+12:00 DEBUG start-mailserver.sh: Starting update-check
mailserver | 2025-05-21 09:53:26+12:00 DEBUG start-mailserver.sh: Starting opendkim
mailserver | 2025-05-21 09:53:26+12:00 DEBUG start-mailserver.sh: Starting opendmarc
mailserver | 2025-05-21 09:53:26+12:00 DEBUG start-mailserver.sh: Starting postfix
mailserver | 2025-05-21 09:53:26+12:00 DEBUG start-mailserver.sh: Starting amavis
mailserver | 2025-05-21 09:53:27+12:00 DEBUG start-mailserver.sh: Starting changedetector
mailserver | 2025-05-21 09:53:27+12:00 INFO start-mailserver.sh: mail.example.com is up and running
mailserver | 2025-05-21T09:53:26.067474+12:00 mail dovecot: master: Dovecot v2.3.19.1 (9b53102964) starting up for imap, lmtp
mailserver | 2025-05-21T09:53:26.471567+12:00 mail opendkim[884]: OpenDKIM Filter v2.11.0 starting (args: -f)
mailserver | 2025-05-21T09:53:26.671097+12:00 mail opendmarc[895]: OpenDMARC Filter v1.4.2 starting (args: -f -p inet:8893@localhost -P /var/run/opendmarc/opendmarc.pid)
mailserver | 2025-05-21T09:53:26.671117+12:00 mail opendmarc[895]: additional trusted authentication services: mail.example.com
mailserver | 2025-05-21T09:53:27.161284+12:00 mail postfix/postfix-script[987]: warning: not owned by root: /var/spool/postfix/.
mailserver | 2025-05-21T09:53:27.164611+12:00 mail postfix/postfix-script[988]: warning: not owned by root: /var/spool/postfix/pid
mailserver | 2025-05-21T09:53:27.174586+12:00 mail postfix/postfix-script[999]: warning: not owned by postfix: /var/lib/postfix/.
mailserver | 2025-05-21T09:53:27.187613+12:00 mail postfix/postfix-script[1005]: warning: not owned by postfix: /var/spool/postfix/active
mailserver | 2025-05-21T09:53:27.193229+12:00 mail postfix/postfix-script[1006]: warning: not owned by postfix: /var/spool/postfix/bounce
mailserver | 2025-05-21T09:53:27.198934+12:00 mail postfix/postfix-script[1007]: warning: not owned by postfix: /var/spool/postfix/corrupt
mailserver | 2025-05-21T09:53:27.204580+12:00 mail postfix/postfix-script[1008]: warning: not owned by postfix: /var/spool/postfix/defer
mailserver | 2025-05-21T09:53:27.210371+12:00 mail postfix/postfix-script[1009]: warning: not owned by postfix: /var/spool/postfix/deferred
mailserver | 2025-05-21T09:53:27.216034+12:00 mail postfix/postfix-script[1010]: warning: not owned by postfix: /var/spool/postfix/flush
mailserver | 2025-05-21T09:53:27.221606+12:00 mail postfix/postfix-script[1011]: warning: not owned by postfix: /var/spool/postfix/hold
mailserver | 2025-05-21T09:53:27.227218+12:00 mail postfix/postfix-script[1012]: warning: not owned by postfix: /var/spool/postfix/incoming
mailserver | 2025-05-21T09:53:27.232960+12:00 mail postfix/postfix-script[1013]: warning: not owned by postfix: /var/spool/postfix/private
mailserver | 2025-05-21T09:53:27.238652+12:00 mail postfix/postfix-script[1014]: warning: not owned by postfix: /var/spool/postfix/public
mailserver | 2025-05-21T09:53:27.244272+12:00 mail postfix/postfix-script[1015]: warning: not owned by postfix: /var/spool/postfix/saved
mailserver | 2025-05-21T09:53:27.250083+12:00 mail postfix/postfix-script[1016]: warning: not owned by postfix: /var/spool/postfix/trace
mailserver | 2025-05-21T09:53:27.256542+12:00 mail postfix/postfix-script[1018]: warning: not owned by postfix: /var/spool/postfix/maildrop
mailserver | 2025-05-21T09:53:27.261160+12:00 mail postfix/postfix-script[1020]: warning: not owned by group postdrop: /var/spool/postfix/public
mailserver | 2025-05-21T09:53:27.264633+12:00 mail postfix/postfix-script[1021]: warning: not owned by group postdrop: /var/spool/postfix/maildrop
mailserver | 2025-05-21T09:53:27.275745+12:00 mail postfix/postfix-script[1025]: starting the Postfix mail system
mailserver | 2025-05-21T09:53:27.281681+12:00 mail postfix/master[1026]: fatal: open lock file /var/lib/postfix/master.lock: cannot create file exclusively: Permission denied
mailserver | 2025-05-21T09:53:27.741869+12:00 mail amavis[966]: starting. /usr/sbin/amavisd at mail.example.com amavis-2.13.0 (20230106), Unicode aware, LC_CTYPE="C.UTF-8"
mailserver | 2025-05-21T09:53:27.741899+12:00 mail amavis[966]: perl=5.036000, user=, EUID: 999 (999); group=(), EGID: 999 999 (999 999)
mailserver | 2025-05-21T09:53:27.758760+12:00 mail amavis[966]: Net::Server: Group Not Defined. Defaulting to EGID '999 999'
mailserver | 2025-05-21T09:53:27.758796+12:00 mail amavis[966]: Net::Server: User Not Defined. Defaulting to EUID '999'
mailserver | 2025-05-21T09:53:27.766821+12:00 mail amavis[966]: No ext program for .zoo, tried: zoo
mailserver | 2025-05-21T09:53:27.766884+12:00 mail amavis[966]: No ext program for .doc, tried: ripole
mailserver | 2025-05-21T09:53:27.767220+12:00 mail amavis[966]: No ext program for .zst, tried: unzstd
mailserver | 2025-05-21T09:53:27.767243+12:00 mail amavis[966]: No decoder for .F
mailserver | 2025-05-21T09:53:27.767254+12:00 mail amavis[966]: No decoder for .doc
mailserver | 2025-05-21T09:53:27.767265+12:00 mail amavis[966]: No decoder for .zoo
mailserver | 2025-05-21T09:53:27.767284+12:00 mail amavis[966]: No decoder for .zst
mailserver | 2025-05-21T09:53:33.231568+12:00 mail postfix/postfix-script[1132]: warning: not owned by root: /var/spool/postfix/.
mailserver | 2025-05-21T09:53:33.234539+12:00 mail postfix/postfix-script[1133]: warning: not owned by root: /var/spool/postfix/pid
mailserver | 2025-05-21T09:53:33.243644+12:00 mail postfix/postfix-script[1144]: warning: not owned by postfix: /var/lib/postfix/.
mailserver | 2025-05-21T09:53:33.283742+12:00 mail postfix/postfix-script[1155]: warning: not owned by postfix: /var/spool/postfix/active
mailserver | 2025-05-21T09:53:33.289226+12:00 mail postfix/postfix-script[1156]: warning: not owned by postfix: /var/spool/postfix/bounce
mailserver | 2025-05-21T09:53:33.294730+12:00 mail postfix/postfix-script[1157]: warning: not owned by postfix: /var/spool/postfix/corrupt
mailserver | 2025-05-21T09:53:33.300584+12:00 mail postfix/postfix-script[1160]: warning: not owned by postfix: /var/spool/postfix/defer
mailserver | 2025-05-21T09:53:33.305922+12:00 mail postfix/postfix-script[1161]: warning: not owned by postfix: /var/spool/postfix/deferred
mailserver | 2025-05-21T09:53:33.311143+12:00 mail postfix/postfix-script[1162]: warning: not owned by postfix: /var/spool/postfix/flush
mailserver | 2025-05-21T09:53:33.316458+12:00 mail postfix/postfix-script[1163]: warning: not owned by postfix: /var/spool/postfix/hold
mailserver | 2025-05-21T09:53:33.321808+12:00 mail postfix/postfix-script[1164]: warning: not owned by postfix: /var/spool/postfix/incoming
mailserver | 2025-05-21T09:53:33.326974+12:00 mail postfix/postfix-script[1165]: warning: not owned by postfix: /var/spool/postfix/private
mailserver | 2025-05-21T09:53:33.332182+12:00 mail postfix/postfix-script[1166]: warning: not owned by postfix: /var/spool/postfix/public
mailserver | 2025-05-21T09:53:33.337540+12:00 mail postfix/postfix-script[1167]: warning: not owned by postfix: /var/spool/postfix/saved
mailserver | 2025-05-21T09:53:33.342835+12:00 mail postfix/postfix-script[1168]: warning: not owned by postfix: /var/spool/postfix/trace
mailserver | 2025-05-21T09:53:33.349002+12:00 mail postfix/postfix-script[1170]: warning: not owned by postfix: /var/spool/postfix/maildrop
mailserver | 2025-05-21T09:53:33.352878+12:00 mail postfix/postfix-script[1172]: warning: not owned by group postdrop: /var/spool/postfix/public
mailserver | 2025-05-21T09:53:33.355791+12:00 mail postfix/postfix-script[1173]: warning: not owned by group postdrop: /var/spool/postfix/maildrop
mailserver | 2025-05-21T09:53:33.366174+12:00 mail postfix/postfix-script[1177]: starting the Postfix mail system
mailserver | 2025-05-21T09:53:33.371054+12:00 mail postfix/master[1178]: fatal: open lock file /var/lib/postfix/master.lock: cannot create file exclusively: Permission denied
mailserver | 2025-05-21T09:53:39.288679+12:00 mail postfix/postfix-script[1236]: warning: not owned by root: /var/spool/postfix/.
mailserver | 2025-05-21T09:53:39.291551+12:00 mail postfix/postfix-script[1237]: warning: not owned by root: /var/spool/postfix/pid
mailserver | 2025-05-21T09:53:39.300589+12:00 mail postfix/postfix-script[1248]: warning: not owned by postfix: /var/lib/postfix/.
mailserver | 2025-05-21T09:53:39.313462+12:00 mail postfix/postfix-script[1254]: warning: not owned by postfix: /var/spool/postfix/active
mailserver | 2025-05-21T09:53:39.318838+12:00 mail postfix/postfix-script[1255]: warning: not owned by postfix: /var/spool/postfix/bounce
mailserver | 2025-05-21T09:53:39.324069+12:00 mail postfix/postfix-script[1256]: warning: not owned by postfix: /var/spool/postfix/corrupt
mailserver | 2025-05-21T09:53:39.329541+12:00 mail postfix/postfix-script[1257]: warning: not owned by postfix: /var/spool/postfix/defer
mailserver | 2025-05-21T09:53:39.334762+12:00 mail postfix/postfix-script[1258]: warning: not owned by postfix: /var/spool/postfix/deferred
mailserver | 2025-05-21T09:53:39.340041+12:00 mail postfix/postfix-script[1259]: warning: not owned by postfix: /var/spool/postfix/flush
mailserver | 2025-05-21T09:53:39.345352+12:00 mail postfix/postfix-script[1260]: warning: not owned by postfix: /var/spool/postfix/hold
mailserver | 2025-05-21T09:53:39.350830+12:00 mail postfix/postfix-script[1261]: warning: not owned by postfix: /var/spool/postfix/incoming
mailserver | 2025-05-21T09:53:39.356090+12:00 mail postfix/postfix-script[1262]: warning: not owned by postfix: /var/spool/postfix/private
mailserver | 2025-05-21T09:53:39.361738+12:00 mail postfix/postfix-script[1263]: warning: not owned by postfix: /var/spool/postfix/public
mailserver | 2025-05-21T09:53:39.366951+12:00 mail postfix/postfix-script[1264]: warning: not owned by postfix: /var/spool/postfix/saved
mailserver | 2025-05-21T09:53:39.372399+12:00 mail postfix/postfix-script[1265]: warning: not owned by postfix: /var/spool/postfix/trace
mailserver | 2025-05-21T09:53:39.378983+12:00 mail postfix/postfix-script[1267]: warning: not owned by postfix: /var/spool/postfix/maildrop
mailserver | 2025-05-21T09:53:39.382757+12:00 mail postfix/postfix-script[1269]: warning: not owned by group postdrop: /var/spool/postfix/public
mailserver | 2025-05-21T09:53:39.385728+12:00 mail postfix/postfix-script[1270]: warning: not owned by group postdrop: /var/spool/postfix/maildrop
mailserver | 2025-05-21T09:53:39.396145+12:00 mail postfix/postfix-script[1274]: starting the Postfix mail system
mailserver | 2025-05-21T09:53:39.401181+12:00 mail postfix/master[1275]: fatal: open lock file /var/lib/postfix/master.lock: cannot create file exclusively: Permission denied
📝 Preliminary Checks
👀 What Happened?
With a clean new install, newly built container, and one user created, Postfix fails to start, with a permissions error on the
master.lockfile:The directory in question is a symlink to
/var/mail-state/lib-postfix, which is owned byamaviswith755permissions:To try and minimise the problem, the only changes I've made are in
compose.yamlLOG_LEVEL=debug, and on first start, I ran exec setup to create a single email user.example.orgfor this troubleshooting, but I previously tried it with my real domain, and had the same result.This seems like the same error message from 2017 in issue #545 but that was solved years ago.. and yet.. this seems to happen now, on
:latest, reliably, and with a clean install. I'm hesitant to go poking around inside the image's filesystem and making permissions changes there, because it shouldn't be doing this to begin with.Also there's a typo in the debug log message: "Ensuring /var/log/mail owneership + permissions are correct" in
start-mailserver.sh👟 Reproduction Steps
As above
🐋 DMS Version
v15.0.2
💻 Operating System and Architecture
Ubuntu 22.04 LTS
⚙️ Container configuration files
📜 Relevant log output