Unix инструмент для извлечения и резервного копирования писем из Gmail

Вопрос или проблема

Прочитав этот отличный пост из HN, я сейчас рассматриваю варианты резервного копирования своей учетной записи Gmail.

Я хотел бы иметь систему, которая позволит мне

  • Автоматизировать резервное копирование с помощью cron job
  • Шифровать мои резервные копии (не совсем часть самого процесса резервного копирования)
  • Хранить резервные копии таким образом, чтобы я мог отправить их в Amazon S3 (т.е. в виде tarball)
  • Иметь инкрементные резервные копии (т.е. скрипт резервного копирования должен уметь принимать дату ‘резервное копирование с’)
  • Иметь возможность восстановить свои электронные письма до текущего состояния (т.е. сохранить метки)

Пока что мне не удалось найти ничего, что бы удовлетворяло вышеперечисленным требованиям, но я думаю, что для любого обладателя учетной записи Gmail очень важно делать хорошие резервные копии своих писем (и я бы рекомендовал прочитать упомянутую статью для всех, кто этого не сделал).

Кто-нибудь может предложить хорошее решение для вышеизложенного?

BaGoMa может быть тем, что вам нужно. Это скрипт на Python для резервного копирования/восстановления вашей почты Gmail. Он использует IMAP, но умный и загружает каждое сообщение только один раз, независимо от того, сколько меток на него применено, при этом он сохранит метки и флажки (прочитано, помечено и т.д.) для восстановления.

Никогда не удаляет сообщения из вашей учетной записи Gmail. Восстановление загружает только отсутствующие сообщения из локального хранилища, оно не пытается синхронизировать вашу учетную запись с её содержимым. Кроме того, резервное копирование также не удаляет сообщения из локального хранилища. Существует отдельная команда compact, которая удалит сообщения из локального хранилища, если их не существует на сервере Gmail.

Поскольку он только создает резервные копии почты через IMAP, он не может/не получает определенные вещи: Контакты, Чаты, Фильтры (и другие настройки), Суперзвезды, Метки, которые вы решили скрыть от IMAP (представьте себе!), и Корзина/Спам.

BaGoMa выглядит лучше, но я использую getmail и правило в gmail, чтобы добавить метку к письмам, которые я хочу резервировать.

Он также использует IMAP, хранит данные в формате mbox на локальном диске и может быть легко зашифрован.

Ответ или решение

Инструменты Unix для извлечения и резервного копирования электронных писем из Gmail

Резервное копирование ваших электронных писем из Gmail является важной задачей для обеспечения сохранности данных. Ниже приведены инструкции по использованию различных инструментов Unix, которые помогут вам автоматизировать процесс резервного копирования и обеспечить его безопасность.

Выбор инструмента для резервного копирования

  1. BaGoMa:

    • Описание: BaGoMa – это скрипт на Python, который позволяет резервировать и восстанавливать электронные письма из Gmail через IMAP. Он обеспечивает сохранение меток и флагов (прочитано, отмеченное) при восстановлении.
    • Преимущества:
      • Не удаляет сообщения из вашей учетной записи Gmail.
      • Поддержка меток и флагов при восстановлении.
      • Избегает дублирования сообщений благодаря интеллектуальному подходу к загрузке.
    • Недостатки: BaGoMa не резервирует контакты, чаты, фильтры и некоторые другие настройки.
  2. GetMail:

    • Описание: GetMail – это еще один инструмент, который, подобно BaGoMa, использует IMAP для резервного копирования электронной почты. Он может быть настроен с использованием правил для присвоения меток в Gmail.
    • Формат хранения: Сообщения сохраняются в формате mbox на локальном диске, что облегчает их шифрование.

Шаги по настройке автоматизированного резервного копирования

  1. Установка необходимого программного обеспечения:
    Для работы с вышеуказанными инструментами вам может потребоваться установить Python и pip.

    sudo apt-get install python3 python3-pip
    pip3 install bagoma  # или ваш инструмент по предпочтению
  2. Настройка скрипта резервного копирования:
    Создайте скрипт, который будет выполнять резервное копирование ваших писем. Например, для BaGoMa:

    #!/bin/bash
    bagoma backup --username your_email@gmail.com --password your_password --backup_dir /path/to/backup
  3. Шифрование резервных копий:
    Используйте gpg для шифрования ваших резервных копий:

    tar -czf backup.tar.gz /path/to/backup
    gpg -c backup.tar.gz
  4. Настройка crontab для автоматизации:
    Добавьте задачу в crontab для автоматического запуска вашего скрипта резервного копирования. Например, для ежедневного запуска в 2:00:

    crontab -e

    Затем добавьте:

    0 2 * * * /path/to/your_backup_script.sh
  5. Инкрементальное резервное копирование:
    Измените ваш скрипт для поддержки инкрементального резервного копирования путем добавления параметра ‘backup from’:

    bagoma backup --from 'YYYY-MM-DD' --username your_email@gmail.com --password your_password --backup_dir /path/to/backup
  6. Хранение резервных копий в Amazon S3:
    Установите AWS CLI и настройте доступ:

    sudo apt-get install awscli
    aws configure  # Введите свои учетные данные AWS

    Для загрузки резервных копий на S3 добавьте в свой скрипт:

    aws s3 cp /path/to/backup s3://your-bucket-name/ --recursive

Заключение

Резервное копирование ваших электронных писем из Gmail с использованием инструментов Unix, таких как BaGoMa и GetMail, обеспечивает надежность и безопасность ваших данных. Установив автоматизацию с помощью cron и шифрование ваших резервных копий, вы можете быть уверены, что ваши важные сообщения будут защищены и легко восстановимы в любое время. Не забывайте регулярно проверять состояние резервных копий и обновлять скрипты по мере необходимости.

Оцените материал
Добавить комментарий

Капча загружается...