Настройка Frost

frost init проводит вас по настройке, задавая вопросы по одному. Запускайте его снова всякий раз, когда захотите просмотреть или изменить настройки.

#Экраны мастера настройки

В терминале frost init открывает полноэкранный мастер настройки. Окну нужна ширина не меньше 56 столбцов и высота не меньше 18 строк. В нижней строке всегда видны доступные клавиши: [esc] возвращает на шаг назад, [q] выходит без сохранения.

#Хранилище

Выберите, где будут лежать копии:

  • Permafrost, рекомендуемый вариант. Нужен только ключ доступа, больше ничего, а если ключа ещё нет, Frost откроет getfro.st/perma, где его можно получить. Подробнее в разделе Permafrost.
  • S3-compatible (S3-совместимое хранилище) открывает второй список: Amazon S3, Backblaze B2, Cloudflare R2, Wasabi или Other S3-compatible (другой S3-совместимый сервис) для Ceph, SeaweedFS и других сервисов, работающих по протоколу S3. Мастер спрашивает только то, что нужно этому сервису, и подсказывает, где найти каждый ответ. Подробнее в разделах Облачные провайдеры и Другие S3-совместимые хранилища.
  • Self-hosted (собственный сервер) подходит для папки на вашем сервере, доступном по SSH. Мастер спрашивает адрес сервера и папку и помогает добавить на сервер SSH-ключ Frost. Подробнее в разделе Собственный сервер.
  • Local drive (локальный диск) подходит для папки на внутреннем или внешнем диске. Мастер спрашивает полный путь к папке. Подробнее в разделе Локальный диск.

Когда вы вставляете секретный ключ, [tab] показывает или скрывает его.

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

#Папки

Введите полный путь к папке, которую нужно копировать, и нажмите [enter]. ~ обозначает домашнюю папку, так что ~/Documents тоже подойдёт. Добавляйте сколько угодно папок; сам Frost ничего не выбирает.

  • Frost копирует папки целиком. Чтобы скопировать один файл, добавьте папку, в которой он лежит.
  • Папка, которая уже есть в списке или лежит внутри папки из списка, повторно не добавляется. Папка, внутри которой есть папки из списка, заменяет их.
  • Папка, которой пока нет, остаётся в списке и пропускается, пока не появится. Так бывает, например, с неподключённым диском.

Нажмите [↑], чтобы перейти в список, и [x], чтобы удалить выбранную папку. Нажмите [enter] в пустом поле, чтобы перейти дальше.

#Исключения

На этом шаге перечислены имена и шаблоны, которые Frost не включает ни в одну копию. Сначала в списке значения Frost по умолчанию: .DS_Store, Thumbs.db, *.tmp, *.swp, node_modules и .cache. Удалите те, что всё-таки хотите копировать. Как устроены шаблоны, рассказано в разделе Исключение файлов.

#Расписание

Выберите, как часто Frost будет делать копии сам: каждый час, каждые 6 или 12 часов, ежедневно или еженедельно. Выберите "Off" (выключено), чтобы копировать только тогда, когда вы запускаете frost backup. Другие интервалы и время копирования можно задать через frost config set. Подробнее в разделе Автоматическое резервное копирование.

#Фраза восстановления

Для нового хранилища Frost создаёт ключ и показывает его в виде 24 слов. Слова скрыты, пока вы не нажмёте [v], чтобы сначала можно было убедиться, что ваш экран никто не видит. Запишите их, нажмите [enter], а затем введите два слова, которые попросит мастер, чтобы проверить запись.

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

#Проверка

На экране проверки видны все настройки сразу. Выберите строку клавишами [↑] и [↓], измените её клавишей [e], а затем нажмите [s], чтобы сохранить. [v] показывает отпечаток ключа: короткий идентификатор, по которому ключ можно узнать, не раскрывая его.

При сохранении записываются настройки и ключ и создаётся задание по расписанию. Когда мастер закончит работу, выполните frost backup --dry-run, чтобы посмотреть первую копию заранее, или frost backup, чтобы её запустить.

#Хранилище, в котором уже есть копии

Мастер ищет копии Frost сразу после подключения:

  • Если их открывает ключ этого компьютера, мастер подключается, и все снимки остаются при вас.
  • Если они сделаны другим ключом, мастер спрашивает фразу восстановления этого ключа. Дальше Frost использует этот ключ на этом компьютере.
  • Если хранилище пустое, а копии этого компьютера лежат в другом месте, мастер предупредит вас, прежде чем начать там отдельный набор копий. Старые копии останутся на месте, но Frost будет показывать только новые.

Чтобы перенести уже существующие копии, см. раздел Перенос резервных копий.

#Повторный запуск мастера

Запускайте frost init когда угодно. Он открывается с текущими настройками, так что можно поменять что-то одно и сохранить.

Полноэкранный мастер не спрашивает о двух редко используемых настройках и оставляет их значения как есть:

  • Собственный сервер Permafrost: storage.permafrost.url.
  • Папка внутри бакета S3, по умолчанию frost: storage.s3.prefix.

Для нового места хранения используйте frost config edit, подтвердите предупреждение, сохраните изменения и снова выполните frost init. Для frost config set в новом месте уже должен быть репозиторий. Первоначальная настройка собственного сервера описана в разделе Permafrost. См. раздел Настройки.

#Без полноэкранного терминала

Если Frost запущен не в интерактивном терминале, например с перенаправленным вводом, frost init задаёт простые вопросы, по одному в строке. Он предлагает Permafrost, обычный S3-совместимый бакет, Self-hosted и Local drive, без списка S3-сервисов, а также спрашивает папку внутри бакета. Списки вводятся через запятую, а - оставляет список исключений пустым. В этом режиме Frost тоже открывает getfro.st/perma, если нужен ключ Permafrost, и может добавить свой SSH-ключ на ваш сервер: ssh спросит ваш пароль, или Frost выведет строку, чтобы вы добавили её сами.