# 设置 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**,或者适用于 Ceph、SeaweedFS 以及其他支持 S3 协议的服务的 **Other S3-compatible**(其他 S3 兼容存储)。设置程序只会问这个服务需要的信息,并告诉你每一项答案在哪里找。参见[云服务商](#cloud-providers)和[其他 S3 兼容存储](#other-s3)。 - **Self-hosted**(自托管),用于通过 SSH 访问的你自己服务器上的文件夹。设置程序会询问服务器的地址和文件夹,并帮你把 Frost 的 SSH 密钥添加到服务器上。参见[自托管](#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]` 会显示你的密钥指纹,这是一个简短的 ID,可以标识你的密钥而不会泄露它。 保存时会写入你的设置和密钥,并创建计划任务。设置完成后,运行 `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` 会改为一行一个地提出简单的问题。它不会显示 S3 服务列表,而是让你在 Permafrost、通用的 S3 兼容存储桶、Self-hosted 和 Local drive 之间选择,选择存储桶时还会询问其中的文件夹。列表用逗号分隔,输入 `-` 表示跳过列表为空。在这种模式下,如果你需要 Permafrost 密钥,Frost 同样会打开 getfro.st/perma,并且可以把它的 SSH 密钥添加到你的服务器:由 ssh 询问你的密码,或者由 Frost 显示那一行让你自己添加。