/var/spool/mail/vmail/로 변경해도 postfix가 메일을 $HOME/var/spool/mail/vmail에 저장하는 이유는 무엇입니까?

/var/spool/mail/vmail/로 변경해도 postfix가 메일을 $HOME/var/spool/mail/vmail에 저장하는 이유는 무엇입니까?

내 메일 클라이언트가 새 이메일을 검색하므로 /var/spool/mail/vmail/trest/Maildir메일 저장 위치를 ​​해당 위치로 변경했습니다. 그런데도 이메일이 왔다 $HOME/var/spool/mail/vmail/trest/Maildir. 경로를 변경하는 방법은 무엇입니까 /var/spool...? 아니면 이메일 클라이언트에게 확인하도록 지시하는 방법은 무엇입니까 $HOME/...?

내 구성

$ postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
home_mailbox = /var/spool/mail/vmail/trest/Maildir/
inet_interfaces = all
inet_protocols = all
mail_spool_directory = ~/Maildir
mailbox_command =
mailbox_size_limit = 0
mydestination = $myhostname, localhost.$mydomain, localhost
mydomain = hkunst.com
myhostname = hkunst.com
mynetworks = 10.10.0.0/24, 127.0.0.0/8
mynetworks_style = hkunst.com
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter =
relayhost =
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_path = private/auth
smtpd_sasl_type = dovecot
smtpd_tls_auth_only = no
smtpd_tls_cert_file = /etc/ssl/certs/hkunst.com.crt.pem
smtpd_tls_key_file = /etc/ssl/private/hkunst.com.key.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_session_cache_timeout = 3600s
smtpd_use_tls = yes
virtual_mailbox_base = /
virtual_transport = dovecot

그리고

$ dovecot -n
# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.16.0-4-amd64 x86_64 Debian 8.4 
auth_debug = yes
auth_debug_passwords = yes
auth_mechanisms = plain login
auth_username_format = %Ln
auth_verbose = yes
auth_verbose_passwords = plain
mail_privileged_group = vmail
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    auto = create
    special_use = \Drafts
  }
  mailbox Junk {
    auto = create
    special_use = \Junk
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    auto = create
    special_use = \Sent
  }
  mailbox Spam {
    auto = create
    special_use = \Junk
  }
  mailbox Trash {
    auto = create
    special_use = \Trash
  }
  mailbox virtual/All {
    auto = no
    special_use = \All
  }
  prefix = 
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
passdb {
  args = username_format=%u scheme=ssha512 /etc/dovecot/passwd.db
  driver = passwd-file
}
plugin {
  sieve = ~/.dovecot.sieve
  sieve_after = /var/mail/vmail/sieve-after
  sieve_before = /var/mail/vmail/sieve-before
  sieve_dir = ~/sieve
}
protocols = imap lmtp
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
  unix_listener /var/spool/postfix/private/dovecot-auth {
    group = postfix
    mode = 0660
    user = postfix
  }
}
ssl_cert = </etc/ssl/certs/hkunst.com.crt.pem
ssl_cipher_list = ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AES:RSA+3DES:!ADH:!AECDH:!MD5:!DSS
ssl_client_ca_dir = /etc/ssl/certs
ssl_key = </etc/ssl/private/hkunst.com.key.pem
ssl_protocols = !SSLv2 !SSLv3
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
userdb {
  args = uid=5000 gid=5000 home=/var/mail/vmail/%d/%n
  driver = static
}
protocol lda {
  deliver_log_format = msgid=%m: %$
  mail_plugins = sieve
  postmaster_address = [email protected]
  quota_full_tempfail = yes
  rejection_reason = Your message to <%t> was automatically rejected:%n%r
}
protocol imap {
  imap_client_workarounds = delay-newmail tb-extra-mailbox-sep
  mail_max_userip_connections = 80
  mail_plugins = 
}
protocol pop3 {
  mail_max_userip_connections = 80
  mail_plugins = 
}

답변1

나는 당신 virtual_mailbox_base = /home_mailbox = /var/spool/mail/vmail/trest/Maildir/둘 다 틀렸다고 생각합니다. 당신은 읽을 수있다여기:

home_mailbox (기본값: 비어 있음) 메일함 파일에 대한 선택적 경로 이름 local(8) 사용자의 홈 디렉토리에 상대적입니다.

로컬 사용자가 아니라 "가상 사용자"가 있으므로 사용하지 마십시오 home_mailbox.


나는 보통 다음을 사용합니다.

  • mydomain = domain.eu,
  • virtual_mailbox_domains = domain.eu
  • virtual_mailbox_base = /var/mail/,
  • virtual_mailbox_domains = domain.eu&
  • virtual_mailbox_maps = hash:/etc/postfix/virtual_mailboxes

그런 다음 폴더를 만들고 그 안에 /var/mail/domain.eu"가상 사용자"와 해당 사서함(을 기준으로 virtual_mailbox_base) 을 정의합니다 /etc/postfix/virtual_mailboxes.

[email protected]       domain.eu/info/ 

그런 다음 명령을 사용하여 postmap /etc/postfix/virtual_mailboxes데이터베이스를 다시 만듭니다 /etc/postfix/virtual_mailboxes.db.

따라서 이메일이 [email protected]도착 하면 /var/mail/domain.eu/info.

관련 정보