# Настройка Frost `frost init` проводит вас по настройке, задавая вопросы по одному. Запускайте его снова всякий раз, когда захотите просмотреть или изменить настройки. ## Экраны мастера настройки В терминале `frost init` открывает полноэкранный мастер настройки. Окну нужна ширина не меньше 56 столбцов и высота не меньше 18 строк. В нижней строке всегда видны доступные клавиши: `[esc]` возвращает на шаг назад, `[q]` выходит без сохранения. ### Хранилище Выберите, где будут лежать копии: - **Permafrost**, рекомендуемый вариант. Нужен только ключ доступа, больше ничего, а если ключа ещё нет, Frost откроет getfro.st/perma, где его можно получить. Подробнее в разделе [Permafrost](#permafrost). - **S3-compatible** (S3-совместимое хранилище) открывает второй список: **Amazon S3**, **Backblaze B2**, **Cloudflare R2**, **Wasabi** или **Other S3-compatible** (другой S3-совместимый сервис) для Ceph, SeaweedFS и других сервисов, работающих по протоколу S3. Мастер спрашивает только то, что нужно этому сервису, и подсказывает, где найти каждый ответ. Подробнее в разделах [Облачные провайдеры](#cloud-providers) и [Другие S3-совместимые хранилища](#other-s3). - **Self-hosted** (собственный сервер) подходит для папки на вашем сервере, доступном по SSH. Мастер спрашивает адрес сервера и папку и помогает добавить на сервер SSH-ключ Frost. Подробнее в разделе [Собственный сервер](#self-hosted). - **Local drive** (локальный диск) подходит для папки на внутреннем или внешнем диске. Мастер спрашивает полный путь к папке. Подробнее в разделе [Локальный диск](#local-drive). Когда вы вставляете секретный ключ, `[tab]` показывает или скрывает его. Когда вы ответите на вопросы, Frost подключится к хранилищу и проверит, что может записать, прочитать, перечислить и удалить небольшой тестовый объект и что хранилище поддерживает условную запись. Если что-то не так, мастер простыми словами объяснит причину и вернёт вас к ответу, который скорее всего в ней виноват. Всё остальное, что вы ввели, сохранится. ### Папки Введите полный путь к папке, которую нужно копировать, и нажмите `[enter]`. `~` обозначает домашнюю папку, так что `~/Documents` тоже подойдёт. Добавляйте сколько угодно папок; сам Frost ничего не выбирает. - Frost копирует папки целиком. Чтобы скопировать один файл, добавьте папку, в которой он лежит. - Папка, которая уже есть в списке или лежит внутри папки из списка, повторно не добавляется. Папка, внутри которой есть папки из списка, заменяет их. - Папка, которой пока нет, остаётся в списке и пропускается, пока не появится. Так бывает, например, с неподключённым диском. Нажмите `[↑]`, чтобы перейти в список, и `[x]`, чтобы удалить выбранную папку. Нажмите `[enter]` в пустом поле, чтобы перейти дальше. ### Исключения На этом шаге перечислены имена и шаблоны, которые Frost не включает ни в одну копию. Сначала в списке значения Frost по умолчанию: `.DS_Store`, `Thumbs.db`, `*.tmp`, `*.swp`, `node_modules` и `.cache`. Удалите те, что всё-таки хотите копировать. Как устроены шаблоны, рассказано в разделе [Исключение файлов](#excluding-files). ### Расписание Выберите, как часто Frost будет делать копии сам: каждый час, каждые 6 или 12 часов, ежедневно или еженедельно. Выберите "Off" (выключено), чтобы копировать только тогда, когда вы запускаете `frost backup`. Другие интервалы и время копирования можно задать через `frost config set`. Подробнее в разделе [Автоматическое резервное копирование](#scheduling). ### Фраза восстановления Для нового хранилища Frost создаёт ключ и показывает его в виде 24 слов. Слова скрыты, пока вы не нажмёте `[v]`, чтобы сначала можно было убедиться, что ваш экран никто не видит. Запишите их, нажмите `[enter]`, а затем введите два слова, которые попросит мастер, чтобы проверить запись. Если в хранилище уже есть копии Frost, мастер вместо этого спросит их фразу восстановления. Если копии открываются ключом, который уже есть на этом компьютере, шаг пропускается. ### Проверка На экране проверки видны все настройки сразу. Выберите строку клавишами `[↑]` и `[↓]`, измените её клавишей `[e]`, а затем нажмите `[s]`, чтобы сохранить. `[v]` показывает отпечаток ключа: короткий идентификатор, по которому ключ можно узнать, не раскрывая его. При сохранении записываются настройки и ключ и создаётся задание по расписанию. Когда мастер закончит работу, выполните `frost backup --dry-run`, чтобы посмотреть первую копию заранее, или `frost backup`, чтобы её запустить. ## Хранилище, в котором уже есть копии Мастер ищет копии Frost сразу после подключения: - Если их открывает ключ этого компьютера, мастер подключается, и все снимки остаются при вас. - Если они сделаны другим ключом, мастер спрашивает фразу восстановления этого ключа. Дальше Frost использует этот ключ на этом компьютере. - Если хранилище пустое, а копии этого компьютера лежат в другом месте, мастер предупредит вас, прежде чем начать там отдельный набор копий. Старые копии останутся на месте, но Frost будет показывать только новые. Чтобы перенести уже существующие копии, см. раздел [Перенос резервных копий](#moving-backups). ## Повторный запуск мастера Запускайте `frost init` когда угодно. Он открывается с текущими настройками, так что можно поменять что-то одно и сохранить. Полноэкранный мастер не спрашивает о двух редко используемых настройках и оставляет их значения как есть: - Собственный сервер Permafrost: `storage.permafrost.url`. - Папка внутри бакета S3, по умолчанию `frost`: `storage.s3.prefix`. Для нового места хранения используйте `frost config edit`, подтвердите предупреждение, сохраните изменения и снова выполните `frost init`. Для `frost config set` в новом месте уже должен быть репозиторий. Первоначальная настройка собственного сервера описана в разделе [Permafrost](#permafrost). См. раздел [Настройки](#settings). ## Без полноэкранного терминала Если Frost запущен не в интерактивном терминале, например с перенаправленным вводом, `frost init` задаёт простые вопросы, по одному в строке. Он предлагает Permafrost, обычный S3-совместимый бакет, Self-hosted и Local drive, без списка S3-сервисов, а также спрашивает папку внутри бакета. Списки вводятся через запятую, а `-` оставляет список исключений пустым. В этом режиме Frost тоже открывает getfro.st/perma, если нужен ключ Permafrost, и может добавить свой SSH-ключ на ваш сервер: ssh спросит ваш пароль, или Frost выведет строку, чтобы вы добавили её сами.