错误:通道gmail-sent:slave发送无法打开

时间:2016-03-01 08:35:52

标签: email gmail-imap mbsync

我可以同步我的Gmail收件箱,但发送的文件夹不起作用。

这是我的 .mbsyncrc

IMAPStore martinstabenfeldt-remote
    Account martinstabenfeldt

MaildirStore martinstabenfeldt-local
    Path ~/.mail/martinstabenfeldt/           
    INBOX ~/.mail/martinstabenfeldt/INBOX

Channel martinstabenfeldt
    Master :martinstabenfeldt-remote:
    Slave :martinstabenfeldt-local:
    Patterns *
    # Automatically create missing mailboxes, both locally and on the server
    Create Both
    # Save the synchronization state files in the relevant directory
    SyncState *

Channel martinstabenfeldt-inbox
    Master ":martinstabenfeldt-remote:INBOX"
    Slave  ":martinstabenfeldt-local:INBOX"

Channel martinstabenfeldt-sent
    Master ":martinstabenfeldt-remote:[Gmail]/Sent Mail"
    Slave  ":martinstabenfeldt-local:sent"

这是我得到的错误:

$ mbsync --verbose  martinstabenfeldt-sent
Logging in...
Opening master box [Gmail]/Sent Mail...
Opening slave box sent...
Error: channel martinstabenfeldt-sent: slave sent cannot be opened.
C: 1/1  B: 1/1  M: +0/0 *0/0 #0/0  S: +0/0 *0/0 #0/0

知道为什么会失败吗? 我创建了〜/ .mail / martinstabenfeldt / sent 文件夹。这个文件夹是空的。

3 个答案:

答案 0 :(得分:3)

尝试使用[Google Mail]代替[Gmail]。它应该工作。 我相信有[星号邮件],垃圾邮件,已发邮件,重要邮件,草稿,垃圾邮件和所有邮件都可以与[Google Mail] /一起使用。

这是我的配置文件:

IMAPAccount gmail
Host imap.gmail.com
User <your email address>
Pass <your password>
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt

IMAPStore gmail-remote
Account gmail

MaildirStore gmail-local
Path ~/mail/gmail/
Inbox ~/mail/gmail/inbox

Channel gmail-default
Master :gmail-remote:
Slave  :gmail-local:
Patterns INBOX

Channel gmail-sent
Master ":gmail-remote:[Google Mail]/Sent Mail"
slave  :gmail-local:sent

Channel gmail-trash
Master :gmail-remote:"[Google Mail]/Bin"
slave  :gmail-local:trash

Channel gmail-archive
Master :gmail-remote:"[Google Mail]/All Mail"
slave  :gmail-local:all

Channel gmail-drafts
Master :gmail-remote:"[Google Mail]/Drafts"
Slave :gmail-local:drafts

# Automatically create missing mailboxes, both locally and on the server
Create slave # Only create locally for now
SyncState *

Group gmail
Channel gmail-default
Channel gmail-trash
Channel gmail-archive
Channel gmail-sent
Channel gmail-drafts

如果您仍然遇到问题,可以尝试以下配置:

IMAPAccount gmail
Host imap.gmail.com
User <your email address>
Pass <your password>
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt

IMAPStore gmail-remote
Account gmail

MaildirStore gmail-local
Path ~/mail/gmail/
Inbox ~/mail/gmail/inbox

Channel gmail-default
Master :gmail-remote:
Slave  :gmail-local:
Patterns "[Gmail]/Sent Mail"

# Automatically create missing mailboxes, both locally and on the server
Create slave # Only create locally for now
SyncState *

Group gmail
Channel gmail-default

运行以下命令后: mbsync -Dmn gmail

你应该看到一些输出:

* NAMESPACE (("" "/")) NIL NIL
4 OK Success
>>> 5 LIST "" "*"
* LIST (\HasNoChildren) "/" "Deleted Items"
* LIST (\HasNoChildren) "/" "Drafts"
* LIST (\HasNoChildren) "/" "INBOX"
* LIST (\HasNoChildren) "/" "Junk"
* LIST (\HasNoChildren) "/" "Notes"
* LIST (\HasNoChildren) "/" "Personal"
* LIST (\HasNoChildren) "/" "Receipts"
* LIST (\HasNoChildren) "/" "Sent"
* LIST (\HasNoChildren) "/" "Trash"
* LIST (\HasNoChildren) "/" "Unwanted"
* LIST (\HasNoChildren) "/" "Work"
* LIST (\HasChildren \Noselect) "/" "[Google Mail]"
* LIST (\All \HasNoChildren) "/" "[Google Mail]/All Mail"
* LIST (\HasNoChildren \Trash) "/" "[Google Mail]/Bin"
* LIST (\Drafts \HasNoChildren) "/" "[Google Mail]/Drafts"
* LIST (\HasNoChildren \Important) "/" "[Google Mail]/Important"
* LIST (\HasNoChildren \Sent) "/" "[Google Mail]/Sent Mail"
* LIST (\HasNoChildren \Junk) "/" "[Google Mail]/Spam"
* LIST (\Flagged \HasNoChildren) "/" "[Google Mail]/Starred"
5 OK Success
>>> 6 LOGOUT
* BYE LOGOUT Requested
6 OK 73 good day (Success)

从这里,您可以看到各自的远程文件夹名称。

答案 1 :(得分:0)

我很确定这是由你的报价引起的;而不是:

Channel martinstabenfeldt-sent
    Master ":martinstabenfeldt-remote:[Gmail]/Sent Mail"
    Slave  ":martinstabenfeldt-local:sent"

尝试:

Channel martinstabenfeldt-sent
    Master :martinstabenfeldt-remote:"[Gmail]/Sent Mail"
    Slave  :martinstabenfeldt-local:sent

答案 2 :(得分:0)

不是OP的情况,但是如果您忘记了Path的{​​{1}}配置变量中的斜杠,则会得到此确切的错误消息。

手册页中确实说需要在末尾加斜杠,但这很容易忽略。