Настройка MRA (fetchmail/getmail) для извлечения всех папок из Gmail через POP/IMAP
Я хотел бы настроить fetchmail или getmail, чтобы получать почту из Gmail. Я бы предпочел, чтобы это был IMAP, но я могу жить и с POP. Проблема, с которой я сталкиваюсь, заключается в том, что все они, кажется, требуют, чтобы вы указали точный список папок, которые вы хотите проверить (в IMAP это чище, чем в POP).
Это хлопотно, так как я часто меняю свой список папок, и когда я это делаю, я не хочу менять свой конфигурационный файл для добавления / удаления папок. Когда что-то меняется, я автоматически хочу, чтобы каталог mbox или maildir "отображался" с содержимым моей новой папки. Я также предпочел бы, чтобы у mbox было то же имя, что и у папки на сервере.
Самым близким, что я мог найти, была опция -r в fetchmail, но, похоже, она тоже этого не делает. Я уверен, что я что-то упускаю, так как каждый почтовый клиент может это сделать, и я надеюсь, что эта функциональность находится внутри MRA, а не в MUA.
Обновление: я хотел бы переместить эту тему в Serverfault, и я согласен с голосованием, чтобы закрыть это и перенести. К сожалению, у меня пока нет представителя, чтобы сделать это самому
3 ответа
С getmail вы можете использовать следующую строку в вашей конфигурации, чтобы получить всю вашу почту:
mailboxes = ("[Google Mail]/All Mail",)
С IMAP вы можете перечислять папки на сервере, таким образом почтовые клиенты могут делать все, что им нужно. В getmail это зависит от того, как пишутся почтовые программы. Если эта конфигурация не работает, вы можете проверить код извлечения IMAP и написать конкретный, который соответствует вашим потребностям;-)
мои 2 цента
PS: У меня нет установки getmail, чтобы проверить, справятся ли с этим...
Вы можете посмотреть в imapsync. Он предназначен для рекурсивной синхронизации учетных записей IMAP. Вам понадобится учетная запись IMAP для пункта назначения. Я не проверял его с помощью gmail, но если gmail - это сервер IMAP с хорошим поведением, он должен работать.
getmail --all
получит всю почту (возможно, придется запускать повторно)