Відповіді:
offlineimap - популярне рішення для цього.
Після його встановлення створіть .offlineimaprc
[general]
accounts = GMail
maxsyncaccounts = 3
[Account GMail]
localrepository = Local
remoterepository = Remote
autorefresh = 10 #refresh every 10 minutes
quick = 5 #Quick-syncs do not update if the only changes were to IMAP flags
[Repository Local]
type = Maildir
localfolders = /whatever/directory
[Repository Remote]
type = IMAP
remotehost = imap.gmail.com
remoteuser = your_username@gmail.com
remotepass = your_password
ssl = yes
maxconnections = 1
#Setting realdelete = yes will Really Delete email from the server.
#Otherwise "deleting" a message will just remove any labels and
#retain the message in the All Mail folder.
realdelete = no
Потім потрібно запустити offlineimap.
У деяких випадках, коли в режимі offlineimap весь час працює об'єм пам’яті, особливо якщо у вас велика поштова скринька, тому ви можете додати offlineimap чек у cron, щоб просто перевірити його, а потім вийти, ось щоденне резервне копіювання:
@daily offlineimap -u Noninteractive.Basic
Файли будуть у тому, що ви визначаєте у рядку локальних папок як Maildir . Ви можете створити резервну копію, використовуючи будь-який метод резервного копіювання, який ви використовуєте:
Я провів декілька досліджень, як створити резервну копію акаунта IMAP, порівнюючи різні доступні інструменти wrt набір потрібних функцій та проблем. В результаті я використав offlineimap
, як уже було запропоновано вище. (Моє збережене порівняння все ще може бути корисним, щоб побачити більшу картину.) Також я підсумував (відповідаючи на пов'язане запитання) деякі моменти, що стосуються архітектури такого рішення для резервного копіювання акаунта IMAP та зберігання його в Git.