Home Машинное обучение Как делать резервные копии S3 с помощью DejaDup в Ubuntu 20.10 | DeepTech

Как делать резервные копии S3 с помощью DejaDup в Ubuntu 20.10 | DeepTech

0
Как делать резервные копии S3 с помощью DejaDup в Ubuntu 20.10
 | DeepTech
  • 18 октября 2020 г.
  • Василис Вриниотис
  • . 3 комментария

DejaDup — приложение резервного копирования по умолчанию для Gnome. Это графический интерфейс для дублирования, ориентированный на простоту, поддерживающий инкрементное зашифрованное резервное копирование и до недавнего времени поддерживавший большое количество облачных провайдеров. К сожалению, начиная с версии 42.0, все основные облачные провайдеры были удалены. Таким образом, учитывая, что Ubuntu 20.10 поставляется с определенной версией, любой пользователь, который обновится и создаст резервные копии на Amazon S3, не сможет получить к ним доступ. В этом сообщении блога мы предложим решение, которое позволит вам продолжать создавать резервные копии на AWS S3 с помощью DejaDup.

Обязательная тирада (можно пропустить)

Удаление облачных провайдеров не должно вызывать удивления. Я не совсем уверен, какая версия DejaDup устарела, но это было примерно в выпуске Ubuntu 17.10, когда все они были скрыты в качестве опции. Таким образом, в течение 3 долгих лет люди, у которых были резервные копии на Amazon S3, Google Cloud Storage, Openstack Swift, Rackspace и т. д., все еще могли использовать устаревшую функцию и готовиться к неизбежному удалению.

Так зачем жаловаться, спросите вы? Ну, во-первых, когда вы обновляетесь с более ранней версии Ubuntu до 20.10, вы действительно не знаете, что все облачные провайдеры удалены из DejaDup. Следовательно, если во время обновления что-то пойдет не так, вы не сможете легко получить доступ к своим резервным копиям и восстановить систему.

Еще одна большая проблема — отсутствие вариантов хранения в последней версии DejaDup. Они решили изменить свою политику и поддерживать только «облачные сервисы, ориентированные на потребителя», но в настоящее время они поддерживают только Google Диск. Поэтому они убрали все экономичные варианты для хранения данных и оставили только один очень дорогой вариант. Я не совсем уверен, насколько это хорошо для пользователей приложения. В Linux всегда был выбор (во многих случаях его было слишком много), так почему бы не поддерживать несколько вариантов хранения, чтобы обслуживать как опытных, так и неопытных пользователей? К счастью, поскольку мы работаем в Linux, у нас есть возможность это исправить.

Как использовать Deja Dup v42+ с AWS S3

ВНИМАНИЕ: я не проверял полностью следующую настройку, поэтому используйте ее на свой страх и риск. Если компьютер взорвется у вас перед носом, вы потеряете свои данные или ваш супруг заберет ваших детей и бросит вас, не вините меня.

Установка предохранителя s3fs

С этим покончено, давайте приступим к исправлению. Мы будем использовать предохранитель s3fs, программа, которая позволяет смонтировать корзину S3 через FUSE и сделать ее похожей на локальный диск. К счастью, вам не нужно компилировать его из исходного кода, так как он находится в репозиториях Ubuntu. Чтобы установить его, введите в терминале следующее:

sudo apt install s3fs

Настройка файла учетных данных AWS

Далее нам нужно настроить ваши учетные данные. s3fs поддерживает два метода аутентификации: Файл учетных данных AWS или пользовательский файл пароля. В этом уроке мы будем использовать первый метод, но если вы заинтересованы в последнем, не стесняйтесь просматривать документация по s3fs на Гитхабе. Чтобы настроить свои учетные данные, убедитесь, что файл ~/.aws/credentials содержит ваш идентификатор доступа к AWS и секретный ключ. Это должно выглядеть так:


(default)
aws_access_key_id=YOUR_ACCESS_KEY_ID
aws_secret_access_key=YOUR_SECRET_ACCESS_KEY

Установка корзины в локальную файловую систему

Когда у вас есть файл учетных данных, вы готовы смонтировать корзину резервного копирования. Если вы не помните название ведра, вы можете найти его, посетив Аккаунт AWS. Чтобы смонтировать и размонтировать ведро в/из определенного типа местоположения:


# mount
s3fs BUCKET_NAME /path/to/location

# размонтировать
fusermount -u /путь/к/местоположению

Подобное монтирование корзины является временным и не сохраняется после перезагрузки. Вы можете добавить его в /etc/fstab, но я считаю, что это работает только с файлом passwd. Если вы хотите использовать файл учетных данных AWS, вы можете легко обойти его, создав ярлык в настройках запускаемых приложений.

Обратите внимание, что вы можете добавить небольшую 10-секундную задержку, чтобы убедиться, что Wi-Fi подключен, прежде чем пытаться смонтировать корзину. Доступ в Интернет, очевидно, необходим для его успешного монтажа. Если вы находитесь за VPN или имеете другие сложные настройки, вы также можете создать сценарий bash, который выполняет необходимые проверки перед выполнением команды монтирования.

Настройка DejaDup

Теперь, когда ведро смонтировано как локальный диск, мы можем легко настроить DejaDup для его использования. Прежде всего, нам нужно изменить бэкэнд на локальный. Это можно сделать либо с помощью такой программы, как dconfig, либо с помощью консоли с помощью следующей команды:

gsettings set org.gnome.DejaDup backend 'local'

Наконец, мы открываем DejaDup, переходим в настройки и указываем место хранения в каталоге, в котором находятся ваши файлы резервных копий S3. Убедитесь, что вы выбрали подкаталог, содержащий файлы резервных копий; обычно это подкаталог в вашей точке монтирования, имя которого совпадает с именем хоста вашего компьютера. И последнее, но не менее важное: убедитесь, что каталог монтирования S3 исключен из DejaDup! Для этого проверьте игнорируемые папки в настройках.

Вот и все! Теперь перейдите на вкладку восстановления, и DejaDup сможет прочитать ваши предыдущие резервные копии. Можно и новые взять.

Гочки

В этой настройке следует помнить несколько вещей:

  1. Прежде всего, вы должны быть подключены к Интернету, когда монтируете ведро. Если вы не ведро не будет установлено. Итак, я советую вам вместо простого вызова команды mount написать bash-скрипт, который выполняет необходимые проверки перед монтированием (подключение к Интернету, брандмауэр разрешает внешние запросы и т. д.).
  2. Создание таких резервных копий кажется медленнее, чем использование старой встроенной поддержки S3, и, вероятно, генерирует больше сетевого трафика (помните о расходах на трафик AWS!). Это ожидаемо, поскольку DejaDup считает, что обращается к локальной файловой системе, поэтому нет необходимости в агрессивном кэшировании или минимизации операций, вызывающих сетевой трафик.
  3. Следует ожидать проблем со стабильностью. Как мы уже говорили ранее, DejaDup не знает, что записывает данные по сети, поэтому многие функции, которые обычно существуют в таких настройках (например, повторная попытка при сбое), отсутствуют. И, очевидно, если вы потеряете соединение во время резервного копирования, вам придется удалить его и запустить новое, чтобы не повредить ваши будущие резервные копии.
  4. Наконец, имейте в виду, что это очень экспериментальная установка, и если вы действительно хотите иметь надежное решение, вам следует провести собственное исследование и выбрать то, что соответствует вашим потребностям.

Если у вас есть рекомендации по решению для резервного копирования с открытым исходным кодом, которое позволяет создавать добавочные резервные копии с локальным шифрованием, поддерживает S3 и имеет простой в использовании пользовательский интерфейс, пожалуйста, оставьте комментарий, так как я более чем счастлив попробовать его.

LEAVE A REPLY

Please enter your comment!
Please enter your name here