# 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를 열고, Frost의 SSH 키를 서버에 추가할 수도 있습니다. ssh가 비밀번호를 묻거나, Frost가 직접 추가할 줄을 보여 줍니다.