[{"data":1,"prerenderedAt":2515},["ShallowReactive",2],{"nav-docs-ko":3,"page-/ko/docs/cli/commands":1157,"surround-/ko/docs/cli/commands":2509,"raw-/ko/docs/cli/commands":2512},[4,67,374,775,903,1075,1085,1110],{"title":5,"tags":6,"slug":6,"path":7,"stem":8,"children":9,"page":66,"sourcePath":7},"스페이스빌더 시작하기",null,"/getting-started","00.getting-started",[10,15,20,27,34,39,45,50,55,60],{"title":11,"path":12,"stem":13,"tags":6,"slug":14,"sourcePath":12},"스페이스빌더 소개","/getting-started/overview","00.getting-started/00.overview","/getting-started/overview/",{"title":16,"path":17,"stem":18,"tags":6,"slug":19,"sourcePath":17},"SetFN 계정 생성","/getting-started/create-setfn-account","00.getting-started/05.create-setfn-account","/getting-started/create-setfn-account/",{"title":21,"path":22,"stem":23,"tags":24,"slug":26,"sourcePath":22},"Linux에 설치하기","/getting-started/install-linux","00.getting-started/10.install-linux",[25],"recommended","/getting-started/install-linux/",{"title":28,"path":29,"stem":30,"tags":31,"slug":33,"sourcePath":29},"Docker로 설치하기","/getting-started/install-docker","00.getting-started/12.install-docker",[32],"preparing","/getting-started/install-docker/",{"title":35,"path":36,"stem":37,"tags":6,"slug":38,"sourcePath":36},"Windows에 설치하기","/getting-started/install-windows","00.getting-started/14.install-windows","/getting-started/install-windows/",{"title":40,"path":41,"stem":42,"tags":43,"slug":44,"sourcePath":41},"macOS에 설치하기","/getting-started/install-macos","00.getting-started/16.install-macos",[32],"/getting-started/install-macos/",{"title":46,"path":47,"stem":48,"tags":6,"slug":49,"sourcePath":47},"초기 설정","/getting-started/initial-setup","00.getting-started/20.initial-setup","/getting-started/initial-setup/",{"title":51,"path":52,"stem":53,"tags":6,"slug":54,"sourcePath":52},"라이선스 활성화","/getting-started/license-activation","00.getting-started/30.license-activation","/getting-started/license-activation/",{"title":56,"path":57,"stem":58,"tags":6,"slug":59,"sourcePath":57},"접속 주소 확인 (로컬/내부망)","/getting-started/access-url","00.getting-started/35.access-url","/getting-started/access-url/",{"title":61,"path":62,"stem":63,"tags":64,"slug":65,"sourcePath":62},"외부 접속 방식 선택","/getting-started/access-domain","00.getting-started/40.access-domain",[25],"/getting-started/access-domain/",false,{"title":68,"tags":6,"slug":6,"path":69,"stem":70,"children":71,"page":66,"sourcePath":69},"스페이스 관리하기","/admin","10.admin",[72,92,162,197,249,274,289,299,339],{"title":73,"tags":6,"slug":6,"path":74,"stem":75,"children":76,"page":66,"sourcePath":74},"관리자 홈","/admin/home","10.admin/00.home",[77,82,87],{"title":78,"path":79,"stem":80,"tags":6,"slug":81,"sourcePath":79},"관리자 페이지 접속","/admin/home/admin-page-access","10.admin/00.home/00.admin-page-access","/admin/home/admin-page-access/",{"title":83,"path":69,"stem":84,"tags":6,"slug":85,"sourcePath":86},"관리자 메뉴 둘러보기","10.admin/00.home/00.overview","/admin/","/admin/home/overview",{"title":88,"path":89,"stem":90,"tags":6,"slug":91,"sourcePath":89},"라이선스 관리","/admin/home/license","10.admin/00.home/20.license","/admin/home/license/",{"title":93,"tags":6,"slug":6,"path":94,"stem":95,"children":96,"page":66,"sourcePath":94},"사용자 관리","/admin/user-management","10.admin/10.user-management",[97,102,107,112,117,122,127,132,137,142,147,152,157],{"title":98,"path":99,"stem":100,"tags":6,"slug":101,"sourcePath":99},"가입 정책 및 기본 권한 설정하기","/admin/user-management/signup-policy","10.admin/10.user-management/02.signup-policy","/admin/user-management/signup-policy/",{"title":103,"path":104,"stem":105,"tags":6,"slug":106,"sourcePath":104},"가입 약관 등록하기","/admin/user-management/signup-terms","10.admin/10.user-management/04.signup-terms","/admin/user-management/signup-terms/",{"title":108,"path":109,"stem":110,"tags":6,"slug":111,"sourcePath":109},"사용자 계정 만들기","/admin/user-management/invite-new-member","10.admin/10.user-management/10.invite-new-member","/admin/user-management/invite-new-member/",{"title":113,"path":114,"stem":115,"tags":6,"slug":116,"sourcePath":114},"사용자 계정 수정하기","/admin/user-management/edit-member","10.admin/10.user-management/11.edit-member","/admin/user-management/edit-member/",{"title":118,"path":119,"stem":120,"tags":6,"slug":121,"sourcePath":119},"관리자 추가하기","/admin/user-management/add-new-admin","10.admin/10.user-management/12.add-new-admin","/admin/user-management/add-new-admin/",{"title":123,"path":124,"stem":125,"tags":6,"slug":126,"sourcePath":124},"팀 관리","/admin/user-management/team","10.admin/10.user-management/22.team","/admin/user-management/team/",{"title":128,"path":129,"stem":130,"tags":6,"slug":131,"sourcePath":129},"레벨 관리","/admin/user-management/level","10.admin/10.user-management/24.level","/admin/user-management/level/",{"title":133,"path":134,"stem":135,"tags":6,"slug":136,"sourcePath":134},"접속 기록 확인하기","/admin/user-management/access-log","10.admin/10.user-management/30.access-log","/admin/user-management/access-log/",{"title":138,"path":139,"stem":140,"tags":6,"slug":141,"sourcePath":139},"활성 기기 관리하기","/admin/user-management/active-devices","10.admin/10.user-management/31.active-devices","/admin/user-management/active-devices/",{"title":143,"path":144,"stem":145,"tags":6,"slug":146,"sourcePath":144},"계정·보안 정책 설정하기","/admin/user-management/account-security","10.admin/10.user-management/32.account-security","/admin/user-management/account-security/",{"title":148,"path":149,"stem":150,"tags":6,"slug":151,"sourcePath":149},"로봇 확인(CAPTCHA) 설정하기","/admin/user-management/captcha","10.admin/10.user-management/33.captcha","/admin/user-management/captcha/",{"title":153,"path":154,"stem":155,"tags":6,"slug":156,"sourcePath":154},"안내 발송 설정하기","/admin/user-management/notice-settings","10.admin/10.user-management/34.notice-settings","/admin/user-management/notice-settings/",{"title":158,"path":159,"stem":160,"tags":6,"slug":161,"sourcePath":159},"회원에게 단체 안내 메일 보내기","/admin/user-management/bulk-mail","10.admin/10.user-management/36.bulk-mail","/admin/user-management/bulk-mail/",{"title":163,"tags":6,"slug":6,"path":164,"stem":165,"children":166,"page":66,"sourcePath":164},"서비스 구성","/admin/service-config","10.admin/20.service-config",[167,172,177,182,187,192],{"title":168,"path":169,"stem":170,"tags":6,"slug":171,"sourcePath":169},"파일 영역 설정","/admin/service-config/file-area","10.admin/20.service-config/10.file-area","/admin/service-config/file-area/",{"title":173,"path":174,"stem":175,"tags":6,"slug":176,"sourcePath":174},"웹훅 설정","/admin/service-config/webhook-settings","10.admin/20.service-config/16.webhook-settings","/admin/service-config/webhook-settings/",{"title":178,"path":179,"stem":180,"tags":6,"slug":181,"sourcePath":179},"커뮤니티 설정","/admin/service-config/community-space","10.admin/20.service-config/22.community-space","/admin/service-config/community-space/",{"title":183,"path":184,"stem":185,"tags":6,"slug":186,"sourcePath":184},"AI 챗봇 정책 설정","/admin/service-config/community-ai-chatbot","10.admin/20.service-config/24.community-ai-chatbot","/admin/service-config/community-ai-chatbot/",{"title":188,"path":189,"stem":190,"tags":6,"slug":191,"sourcePath":189},"메일 설정","/admin/service-config/email-settings","10.admin/20.service-config/30.email-settings","/admin/service-config/email-settings/",{"title":193,"path":194,"stem":195,"tags":6,"slug":196,"sourcePath":194},"브랜딩 설정","/admin/service-config/brand","10.admin/20.service-config/40.brand","/admin/service-config/brand/",{"title":198,"tags":6,"slug":6,"path":199,"stem":200,"children":201,"page":66,"sourcePath":199},"지식 서비스","/admin/knowledge","10.admin/30.knowledge",[202,207,214,219,224,229,234,239,244],{"title":203,"path":199,"stem":204,"tags":6,"slug":205,"sourcePath":206},"지식 서비스 살펴보기","10.admin/30.knowledge/00.overview","/admin/knowledge/","/admin/knowledge/overview",{"title":208,"path":209,"stem":210,"children":211,"tags":6,"slug":213,"sourcePath":209},"수집·인덱싱","/admin/knowledge/indexing","10.admin/30.knowledge/10.indexing",[212],{"title":208,"path":209,"stem":210,"tags":6,"slug":213,"sourcePath":209},"/admin/knowledge/indexing/",{"title":215,"path":216,"stem":217,"tags":6,"slug":218,"sourcePath":216},"검색 품질·언어","/admin/knowledge/search","10.admin/30.knowledge/20.search","/admin/knowledge/search/",{"title":220,"path":221,"stem":222,"tags":6,"slug":223,"sourcePath":221},"지식 저장소","/admin/knowledge/storage","10.admin/30.knowledge/30.storage","/admin/knowledge/storage/",{"title":225,"path":226,"stem":227,"tags":6,"slug":228,"sourcePath":226},"지식 저장소 운영하기","/admin/knowledge/storage-operations","10.admin/30.knowledge/32.storage-operations","/admin/knowledge/storage-operations/",{"title":230,"path":231,"stem":232,"tags":6,"slug":233,"sourcePath":231},"Qdrant 연결","/admin/knowledge/qdrant","10.admin/30.knowledge/34.qdrant","/admin/knowledge/qdrant/",{"title":235,"path":236,"stem":237,"tags":6,"slug":238,"sourcePath":236},"Qdrant 서버 준비하기","/admin/knowledge/qdrant-server-setup","10.admin/30.knowledge/35.qdrant-server-setup","/admin/knowledge/qdrant-server-setup/",{"title":240,"path":241,"stem":242,"tags":6,"slug":243,"sourcePath":241},"Milvus 연결","/admin/knowledge/milvus","10.admin/30.knowledge/36.milvus","/admin/knowledge/milvus/",{"title":245,"path":246,"stem":247,"tags":6,"slug":248,"sourcePath":246},"외부 검색·근거","/admin/knowledge/web-search","10.admin/30.knowledge/40.web-search","/admin/knowledge/web-search/",{"title":250,"tags":6,"slug":6,"path":251,"stem":252,"children":253,"page":66,"sourcePath":251},"AI 서비스","/admin/ai","10.admin/35.ai",[254,259,264,269],{"title":255,"path":251,"stem":256,"tags":6,"slug":257,"sourcePath":258},"AI 서비스 관리하기","10.admin/35.ai/00.overview","/admin/ai/","/admin/ai/overview",{"title":260,"path":261,"stem":262,"tags":6,"slug":263,"sourcePath":261},"모델·런타임 설정하기","/admin/ai/models","10.admin/35.ai/10.models","/admin/ai/models/",{"title":265,"path":266,"stem":267,"tags":6,"slug":268,"sourcePath":266},"도구·연동 설정하기","/admin/ai/integrations","10.admin/35.ai/20.integrations","/admin/ai/integrations/",{"title":270,"path":271,"stem":272,"tags":6,"slug":273,"sourcePath":271},"MCP 서버 관리하기","/admin/ai/mcp","10.admin/35.ai/30.mcp","/admin/ai/mcp/",{"title":275,"tags":6,"slug":6,"path":276,"stem":277,"children":278,"page":66,"sourcePath":276},"플러그인","/admin/plugin","10.admin/40.plugin",[279,284],{"title":280,"path":281,"stem":282,"tags":6,"slug":283,"sourcePath":281},"플러그인 관리하기","/admin/plugin/overview","10.admin/40.plugin/00.overview","/admin/plugin/overview/",{"title":285,"path":286,"stem":287,"tags":6,"slug":288,"sourcePath":286},"확장 플러그인 설정","/admin/plugin/settings","10.admin/40.plugin/10.settings","/admin/plugin/settings/",{"title":290,"path":291,"stem":292,"children":293,"page":66,"sourcePath":291},"Operations","/admin/operations","10.admin/45.operations",[294],{"title":295,"path":291,"stem":296,"tags":6,"slug":297,"sourcePath":298},"운영·감사 기록 확인하기","10.admin/45.operations/00.overview","/admin/operations/","/admin/operations/overview",{"title":300,"tags":6,"slug":6,"path":301,"stem":302,"children":303,"page":66,"sourcePath":301},"보안 관리","/admin/security","10.admin/50.security",[304,309,314,319,324,329,334],{"title":305,"path":306,"stem":307,"tags":6,"slug":308,"sourcePath":306},"보안 개요","/admin/security/overview","10.admin/50.security/00.overview","/admin/security/overview/",{"title":310,"path":311,"stem":312,"tags":6,"slug":313,"sourcePath":311},"감사 로그 확인하기","/admin/security/audit-log","10.admin/50.security/05.audit-log","/admin/security/audit-log/",{"title":315,"path":316,"stem":317,"tags":6,"slug":318,"sourcePath":316},"차단 관리","/admin/security/block-management","10.admin/50.security/10.block-management","/admin/security/block-management/",{"title":320,"path":321,"stem":322,"tags":6,"slug":323,"sourcePath":321},"보안 설정","/admin/security/security-setting","10.admin/50.security/12.security-setting","/admin/security/security-setting/",{"title":325,"path":326,"stem":327,"tags":6,"slug":328,"sourcePath":326},"승인 대기 기기 처리하기","/admin/security/device-approvals","10.admin/50.security/14.device-approvals","/admin/security/device-approvals/",{"title":330,"path":331,"stem":332,"tags":6,"slug":333,"sourcePath":331},"IP 접근 제한","/admin/security/ip-restriction","10.admin/50.security/16.ip-restriction","/admin/security/ip-restriction/",{"title":335,"path":336,"stem":337,"tags":6,"slug":338,"sourcePath":336},"관리자 2단계 인증 설정하기","/admin/security/two-factor-auth","10.admin/50.security/18.two-factor-auth","/admin/security/two-factor-auth/",{"title":340,"tags":6,"slug":6,"path":341,"stem":342,"children":343,"page":66,"sourcePath":341},"시스템 관리","/admin/system-admin","10.admin/60.system-admin",[344,349,354,359,364,369],{"title":345,"path":346,"stem":347,"tags":6,"slug":348,"sourcePath":346},"디바이스 정보","/admin/system-admin/device-info","10.admin/60.system-admin/10.device-info","/admin/system-admin/device-info/",{"title":350,"path":351,"stem":352,"tags":6,"slug":353,"sourcePath":351},"서버 재시작 및 시스템 유지보수","/admin/system-admin/server-restart","10.admin/60.system-admin/12.server-restart","/admin/system-admin/server-restart/",{"title":355,"path":356,"stem":357,"tags":6,"slug":358,"sourcePath":356},"백그라운드 서비스","/admin/system-admin/background-service","10.admin/60.system-admin/14.background-service","/admin/system-admin/background-service/",{"title":360,"path":361,"stem":362,"tags":6,"slug":363,"sourcePath":361},"스페이스빌더 업데이트하기","/admin/system-admin/update","10.admin/60.system-admin/16.update","/admin/system-admin/update/",{"title":365,"path":366,"stem":367,"tags":6,"slug":368,"sourcePath":366},"스페이스빌더 제거하기","/admin/system-admin/uninstall","10.admin/60.system-admin/18.uninstall","/admin/system-admin/uninstall/",{"title":370,"path":371,"stem":372,"tags":6,"slug":373,"sourcePath":371},"서버 이전하기","/admin/system-admin/server-migration","10.admin/60.system-admin/20.server-migration","/admin/system-admin/server-migration/",{"title":375,"tags":6,"slug":6,"path":376,"stem":377,"children":378,"page":66,"sourcePath":376},"워크스페이스 사용하기","/workspace","20.workspace",[379,419,439,523,662,718,754],{"title":380,"tags":6,"slug":6,"path":381,"stem":382,"children":383,"page":66,"sourcePath":381},"메뉴","/workspace/menu","20.workspace/05.menu",[384,389,394,399,404,409,414],{"title":385,"path":386,"stem":387,"tags":6,"slug":388,"sourcePath":386},"워크스페이스 소개","/workspace/menu/overview","20.workspace/05.menu/00.overview","/workspace/menu/overview/",{"title":390,"path":391,"stem":392,"tags":6,"slug":393,"sourcePath":391},"팀 스페이스","/workspace/menu/team-space","20.workspace/05.menu/05.team-space","/workspace/menu/team-space/",{"title":395,"path":396,"stem":397,"tags":6,"slug":398,"sourcePath":396},"클라이언트 스페이스","/workspace/menu/client-space","20.workspace/05.menu/06.client-space","/workspace/menu/client-space/",{"title":400,"path":401,"stem":402,"tags":6,"slug":403,"sourcePath":401},"즐겨찾기","/workspace/menu/favorites","20.workspace/05.menu/10.favorites","/workspace/menu/favorites/",{"title":405,"path":406,"stem":407,"tags":6,"slug":408,"sourcePath":406},"최근 문서","/workspace/menu/recent","20.workspace/05.menu/20.recent","/workspace/menu/recent/",{"title":410,"path":411,"stem":412,"tags":6,"slug":413,"sourcePath":411},"외부 공유","/workspace/menu/external-share","20.workspace/05.menu/30.external-share","/workspace/menu/external-share/",{"title":415,"path":416,"stem":417,"tags":6,"slug":418,"sourcePath":416},"휴지통","/workspace/menu/trash","20.workspace/05.menu/40.trash","/workspace/menu/trash/",{"title":420,"tags":6,"slug":6,"path":421,"stem":422,"children":423,"page":66,"sourcePath":421},"계정","/workspace/account","20.workspace/10.account",[424,429,434],{"title":425,"path":426,"stem":427,"tags":6,"slug":428,"sourcePath":426},"회원가입 및 로그인","/workspace/account/signup","20.workspace/10.account/10.signup","/workspace/account/signup/",{"title":430,"path":431,"stem":432,"tags":6,"slug":433,"sourcePath":431},"비밀번호 재설정","/workspace/account/reset-password","20.workspace/10.account/20.reset-password","/workspace/account/reset-password/",{"title":435,"path":436,"stem":437,"tags":6,"slug":438,"sourcePath":436},"계정 설정","/workspace/account/account-settings","20.workspace/10.account/30.account-settings","/workspace/account/account-settings/",{"title":440,"tags":6,"slug":6,"path":441,"stem":442,"children":443,"page":66,"sourcePath":441},"폴더","/workspace/folder","20.workspace/20.folder",[444,449,454,459,464,471,476,481,486,491,496,501,506,511,518],{"title":445,"path":446,"stem":447,"tags":6,"slug":448,"sourcePath":446},"폴더 기본 기능","/workspace/folder/basic","20.workspace/20.folder/10.basic","/workspace/folder/basic/",{"title":450,"path":451,"stem":452,"tags":6,"slug":453,"sourcePath":451},"여러 폴더 한꺼번에 만들기","/workspace/folder/bulk-folder-creation","20.workspace/20.folder/12.bulk-folder-creation","/workspace/folder/bulk-folder-creation/",{"title":455,"path":456,"stem":457,"tags":6,"slug":458,"sourcePath":456},"필터","/workspace/folder/filter","20.workspace/20.folder/13.filter","/workspace/folder/filter/",{"title":460,"path":461,"stem":462,"tags":6,"slug":463,"sourcePath":461},"폴더 보기 옵션 설정","/workspace/folder/folder-view-options","20.workspace/20.folder/14.folder-view-options","/workspace/folder/folder-view-options/",{"title":465,"path":466,"stem":467,"tags":468,"slug":470,"sourcePath":466},"폴더를 게시판으로 사용하기","/workspace/folder/board-view","20.workspace/20.folder/15.board-view",[469],"hot","/workspace/folder/board-view/",{"title":472,"path":473,"stem":474,"tags":6,"slug":475,"sourcePath":473},"폴더 웹 보기","/workspace/folder/folder-web-view","20.workspace/20.folder/16.folder-web-view","/workspace/folder/folder-web-view/",{"title":477,"path":478,"stem":479,"tags":6,"slug":480,"sourcePath":478},"폴더 정리","/workspace/folder/folder-organize","20.workspace/20.folder/17.folder-organize","/workspace/folder/folder-organize/",{"title":482,"path":483,"stem":484,"tags":6,"slug":485,"sourcePath":483},"폴더 공지 (README)","/workspace/folder/folder-readme","20.workspace/20.folder/18.folder-readme","/workspace/folder/folder-readme/",{"title":487,"path":488,"stem":489,"tags":6,"slug":490,"sourcePath":488},"폴더/파일 목록 내보내기","/workspace/folder/folder-export","20.workspace/20.folder/20.folder-export","/workspace/folder/folder-export/",{"title":492,"path":493,"stem":494,"tags":6,"slug":495,"sourcePath":493},"레벨별 접근 권한 설정","/workspace/folder/level-access-permissions","20.workspace/20.folder/24.level-access-permissions","/workspace/folder/level-access-permissions/",{"title":497,"path":498,"stem":499,"tags":6,"slug":500,"sourcePath":498},"팀별 접근 권한 설정","/workspace/folder/team-access-permissions","20.workspace/20.folder/26.team-access-permissions","/workspace/folder/team-access-permissions/",{"title":502,"path":503,"stem":504,"tags":6,"slug":505,"sourcePath":503},"파일 규칙 설정하기","/workspace/folder/file-rules","20.workspace/20.folder/28.file-rules","/workspace/folder/file-rules/",{"title":507,"path":508,"stem":509,"tags":6,"slug":510,"sourcePath":508},"폴더 웹훅","/workspace/folder/webhook","20.workspace/20.folder/30.webhook","/workspace/folder/webhook/",{"title":512,"path":513,"stem":514,"children":515,"tags":6,"slug":517,"sourcePath":513},"폴더 지식인덱스 설정하기","/workspace/folder/knowledge-index","20.workspace/20.folder/32.knowledge-index",[516],{"title":512,"path":513,"stem":514,"tags":6,"slug":517,"sourcePath":513},"/workspace/folder/knowledge-index/",{"title":519,"path":520,"stem":521,"tags":6,"slug":522,"sourcePath":520},"업무 자동화 폴더","/workspace/folder/automation","20.workspace/20.folder/40.automation","/workspace/folder/automation/",{"title":524,"tags":6,"slug":6,"path":525,"stem":526,"children":527,"page":66,"sourcePath":525},"파일","/workspace/file","20.workspace/30.file",[528,533,538,543,548,553,558,563,568,573,578,583,588,593,598,603,608,613,618,623,628,633,637,642,647,652,657],{"title":529,"path":530,"stem":531,"tags":6,"slug":532,"sourcePath":530},"파일 관리 기본 기능","/workspace/file/overview","20.workspace/30.file/00.overview","/workspace/file/overview/",{"title":534,"path":535,"stem":536,"tags":6,"slug":537,"sourcePath":535},"파일 보면서 목록 확인하기","/workspace/file/list-in-file","20.workspace/30.file/05.list-in-file","/workspace/file/list-in-file/",{"title":539,"path":540,"stem":541,"tags":6,"slug":542,"sourcePath":540},"마크다운, 텍스트 파일 보기 및 편집","/workspace/file/text-file-viewer","20.workspace/30.file/10.text-file-viewer","/workspace/file/text-file-viewer/",{"title":544,"path":545,"stem":546,"tags":6,"slug":547,"sourcePath":545},"HTML 파일 보기","/workspace/file/html-viewer","20.workspace/30.file/11.html-viewer","/workspace/file/html-viewer/",{"title":549,"path":550,"stem":551,"tags":6,"slug":552,"sourcePath":550},"CSV 파일 보기 및 편집","/workspace/file/csv-viewer","20.workspace/30.file/12.csv-viewer","/workspace/file/csv-viewer/",{"title":554,"path":555,"stem":556,"tags":6,"slug":557,"sourcePath":555},"이미지/동영상 파일 보기","/workspace/file/image-file-viewer","20.workspace/30.file/13.image-file-viewer","/workspace/file/image-file-viewer/",{"title":559,"path":560,"stem":561,"tags":6,"slug":562,"sourcePath":560},"오피스/PDF 파일 보기","/workspace/file/office-viewer","20.workspace/30.file/14.office-viewer","/workspace/file/office-viewer/",{"title":564,"path":565,"stem":566,"tags":6,"slug":567,"sourcePath":565},"웹페이지 붙여넣기 (HTML)","/workspace/file/paste-html","20.workspace/30.file/20.paste-html","/workspace/file/paste-html/",{"title":569,"path":570,"stem":571,"tags":6,"slug":572,"sourcePath":570},"스크린샷 붙여넣기","/workspace/file/paste-screenshot","20.workspace/30.file/21.paste-screenshot","/workspace/file/paste-screenshot/",{"title":574,"path":575,"stem":576,"tags":6,"slug":577,"sourcePath":575},"마크다운 붙여넣기 (MD)","/workspace/file/paste-md","20.workspace/30.file/22.paste-md","/workspace/file/paste-md/",{"title":579,"path":580,"stem":581,"tags":6,"slug":582,"sourcePath":580},"스크린 녹화하기","/workspace/file/screen-recording","20.workspace/30.file/23.screen-recording","/workspace/file/screen-recording/",{"title":584,"path":585,"stem":586,"tags":6,"slug":587,"sourcePath":585},"빠른노트","/workspace/file/quick-note","20.workspace/30.file/24.quick-note","/workspace/file/quick-note/",{"title":589,"path":590,"stem":591,"tags":6,"slug":592,"sourcePath":590},"파일 태그","/workspace/file/file-tag","20.workspace/30.file/33.file-tag","/workspace/file/file-tag/",{"title":594,"path":595,"stem":596,"tags":6,"slug":597,"sourcePath":595},"파일 이름 일괄 변경","/workspace/file/bulk-name-revise","20.workspace/30.file/34.bulk-name-revise","/workspace/file/bulk-name-revise/",{"title":599,"path":600,"stem":601,"tags":6,"slug":602,"sourcePath":600},"파일 변환","/workspace/file/file-convert-overview","20.workspace/30.file/40.file-convert-overview","/workspace/file/file-convert-overview/",{"title":604,"path":605,"stem":606,"tags":6,"slug":607,"sourcePath":605},"템플릿 파일","/workspace/file/templates","20.workspace/30.file/41.templates","/workspace/file/templates/",{"title":609,"path":610,"stem":611,"tags":6,"slug":612,"sourcePath":610},"할 일 목록 (Todo)","/workspace/file/template-todo","20.workspace/30.file/42.template-todo","/workspace/file/template-todo/",{"title":614,"path":615,"stem":616,"tags":6,"slug":617,"sourcePath":615},"결재 서식","/workspace/file/template-approval","20.workspace/30.file/43.template-approval","/workspace/file/template-approval/",{"title":619,"path":620,"stem":621,"tags":6,"slug":622,"sourcePath":620},"칸반 보드","/workspace/file/template-kanban","20.workspace/30.file/44.template-kanban","/workspace/file/template-kanban/",{"title":624,"path":625,"stem":626,"tags":6,"slug":627,"sourcePath":625},"타임라인","/workspace/file/template-timeline","20.workspace/30.file/45.template-timeline","/workspace/file/template-timeline/",{"title":629,"path":630,"stem":631,"tags":6,"slug":632,"sourcePath":630},"메모장","/workspace/file/template-memo","20.workspace/30.file/46.template-memo","/workspace/file/template-memo/",{"title":634,"path":635,"stem":636,"tags":6,"slug":635,"sourcePath":635},"AI 채팅 파일","/workspace/file/ai-chat-file","20.workspace/30.file/47.ai-chat-file",{"title":638,"path":639,"stem":640,"tags":6,"slug":641,"sourcePath":639},"파일 변경 기록 확인","/workspace/file/audit-trail","20.workspace/30.file/50.audit-trail","/workspace/file/audit-trail/",{"title":643,"path":644,"stem":645,"tags":6,"slug":646,"sourcePath":644},"파일 버전 관리","/workspace/file/version-trail","20.workspace/30.file/51.version-trail","/workspace/file/version-trail/",{"title":648,"path":649,"stem":650,"tags":6,"slug":651,"sourcePath":649},"편집 잠금","/workspace/file/file-lock","20.workspace/30.file/52.file-lock","/workspace/file/file-lock/",{"title":653,"path":654,"stem":655,"tags":6,"slug":656,"sourcePath":654},"파일 암호화","/workspace/file/file-encrypt","20.workspace/30.file/53.file-encrypt","/workspace/file/file-encrypt/",{"title":658,"path":659,"stem":660,"tags":6,"slug":661,"sourcePath":659},"디스크 파일 등록","/workspace/file/disk-file-registration","20.workspace/30.file/60.disk-file-registration","/workspace/file/disk-file-registration/",{"title":663,"tags":6,"slug":6,"path":664,"stem":665,"children":666,"page":66,"sourcePath":664},"협업","/workspace/cooperation","20.workspace/35.cooperation",[667,672,677,682,687,692,697,702,707,713],{"title":668,"path":669,"stem":670,"tags":6,"slug":671,"sourcePath":669},"파일·폴더 댓글","/workspace/cooperation/file-comments","20.workspace/35.cooperation/00.file-comments","/workspace/cooperation/file-comments/",{"title":673,"path":674,"stem":675,"tags":6,"slug":676,"sourcePath":674},"채팅","/workspace/cooperation/chat","20.workspace/35.cooperation/10.chat","/workspace/cooperation/chat/",{"title":678,"path":679,"stem":680,"tags":6,"slug":681,"sourcePath":679},"협업 채팅 및 편집 잠금","/workspace/cooperation/collaboration-chat","20.workspace/35.cooperation/11.collaboration-chat","/workspace/cooperation/collaboration-chat/",{"title":683,"path":684,"stem":685,"tags":6,"slug":686,"sourcePath":684},"팀원 작업 위치 따라가기","/workspace/cooperation/follow-team-location","20.workspace/35.cooperation/12.follow-team-location","/workspace/cooperation/follow-team-location/",{"title":688,"path":689,"stem":690,"tags":6,"slug":691,"sourcePath":689},"멘션","/workspace/cooperation/mention","20.workspace/35.cooperation/14.mention","/workspace/cooperation/mention/",{"title":693,"path":694,"stem":695,"tags":6,"slug":696,"sourcePath":694},"쪽지","/workspace/cooperation/dm","20.workspace/35.cooperation/16.dm","/workspace/cooperation/dm/",{"title":698,"path":699,"stem":700,"tags":6,"slug":701,"sourcePath":699},"알림 보관함","/workspace/cooperation/notification-inbox","20.workspace/35.cooperation/18.notification-inbox","/workspace/cooperation/notification-inbox/",{"title":703,"path":704,"stem":705,"tags":6,"slug":706,"sourcePath":704},"팀 활동 확인하기","/workspace/cooperation/file-activity","20.workspace/35.cooperation/30.file-activity","/workspace/cooperation/file-activity/",{"title":708,"path":709,"stem":710,"tags":711,"slug":712,"sourcePath":709},"외부 공유 링크 만들기","/workspace/cooperation/share-link-creation","20.workspace/35.cooperation/40.share-link-creation",[469],"/workspace/cooperation/share-link-creation/",{"title":714,"path":715,"stem":716,"tags":6,"slug":717,"sourcePath":715},"외부 공유 이메일 전송","/workspace/cooperation/share-link-email","20.workspace/35.cooperation/42.share-link-email","/workspace/cooperation/share-link-email/",{"title":719,"tags":6,"slug":6,"path":720,"stem":721,"children":722,"page":66,"sourcePath":720},"검색","/workspace/search","20.workspace/40.search",[723,728,734,739,744,749],{"title":724,"path":725,"stem":726,"tags":6,"slug":727,"sourcePath":725},"파일 검색","/workspace/search/search","20.workspace/40.search/00.search","/workspace/search/search/",{"title":729,"path":730,"stem":731,"tags":732,"slug":733,"sourcePath":730},"문맥 검색 (AI 검색)","/workspace/search/context-search","20.workspace/40.search/10.context-search",[469],"/workspace/search/context-search/",{"title":735,"path":736,"stem":737,"tags":6,"slug":738,"sourcePath":736},"이미지 검색","/workspace/search/image-search","20.workspace/40.search/20.image-search","/workspace/search/image-search/",{"title":740,"path":741,"stem":742,"tags":6,"slug":743,"sourcePath":741},"채팅 검색","/workspace/search/chat-search","20.workspace/40.search/30.chat-search","/workspace/search/chat-search/",{"title":745,"path":746,"stem":747,"tags":6,"slug":748,"sourcePath":746},"댓글 검색","/workspace/search/comment-search","20.workspace/40.search/40.comment-search","/workspace/search/comment-search/",{"title":750,"path":751,"stem":752,"tags":6,"slug":753,"sourcePath":751},"유의어 검색","/workspace/search/synonym-search","20.workspace/40.search/50.synonym-search","/workspace/search/synonym-search/",{"title":755,"tags":6,"slug":6,"path":756,"stem":757,"children":758,"page":66,"sourcePath":756},"AI","/workspace/ai","20.workspace/50.ai",[759,764,770],{"title":760,"path":761,"stem":762,"tags":6,"slug":763,"sourcePath":761},"AI 기능 요약","/workspace/ai/overview","20.workspace/50.ai/00.overview","/workspace/ai/overview/",{"title":765,"path":766,"stem":767,"tags":768,"slug":769,"sourcePath":766},"로컬 AI에게 업무 요청하기","/workspace/ai/ai-work","20.workspace/50.ai/10.ai-work",[469],"/workspace/ai/ai-work/",{"title":771,"path":772,"stem":773,"tags":6,"slug":774,"sourcePath":772},"외부 AI 활용하기","/workspace/ai/external-ai","20.workspace/50.ai/20.external-ai","/workspace/ai/external-ai/",{"title":776,"tags":6,"slug":6,"path":777,"stem":778,"children":779,"page":66,"sourcePath":777},"웹스페이스","/webspace","40.webspace",[780,785,790,795,800,805,811,816,821,826,831,866],{"title":781,"path":782,"stem":783,"tags":6,"slug":784,"sourcePath":782},"웹스페이스(Webspace)란?","/webspace/overview","40.webspace/00.overview","/webspace/overview/",{"title":786,"path":787,"stem":788,"tags":6,"slug":789,"sourcePath":787},"웹사이트 배포하기","/webspace/website-release","40.webspace/10.website-release","/webspace/website-release/",{"title":791,"path":792,"stem":793,"tags":6,"slug":794,"sourcePath":792},"스키마 파일(.sfn) 만들기","/webspace/create-database","40.webspace/20.create-database","/webspace/create-database/",{"title":796,"path":797,"stem":798,"tags":6,"slug":799,"sourcePath":797},"API 빌드 및 데이터베이스 배포하기","/webspace/api-overview","40.webspace/24.api-overview","/webspace/api-overview/",{"title":801,"path":802,"stem":803,"tags":6,"slug":804,"sourcePath":802},"프론트엔드 샘플 확인하기","/webspace/frontend-example","40.webspace/26.frontend-example","/webspace/frontend-example/",{"title":806,"path":807,"stem":808,"tags":809,"slug":810,"sourcePath":807},"팀 내부용 웹서비스 만들기","/webspace/internal-webservice","40.webspace/32.internal-webservice",[469],"/webspace/internal-webservice/",{"title":812,"path":813,"stem":814,"tags":6,"slug":815,"sourcePath":813},"외부 공개용 웹서비스 만들기","/webspace/external-webservice","40.webspace/34.external-webservice","/webspace/external-webservice/",{"title":817,"path":818,"stem":819,"tags":6,"slug":820,"sourcePath":818},"SQL 가져오기와 내보내기","/webspace/sql-converter","40.webspace/42.sql-converter","/webspace/sql-converter/",{"title":822,"path":823,"stem":824,"tags":6,"slug":825,"sourcePath":823},"스키마를 코드로 변환하기","/webspace/code-converter","40.webspace/44.code-converter","/webspace/code-converter/",{"title":827,"path":828,"stem":829,"tags":6,"slug":830,"sourcePath":828},"성능과 확장","/webspace/performance","40.webspace/48.performance","/webspace/performance/",{"title":832,"tags":6,"slug":6,"path":833,"stem":834,"children":835,"page":66,"sourcePath":833},"웹스페이스 관리","/webspace/admin","40.webspace/50.admin",[836,841,846,851,856,861],{"title":837,"path":838,"stem":839,"tags":6,"slug":840,"sourcePath":838},"웹스페이스 관리 시작하기","/webspace/admin/overview","40.webspace/50.admin/00.overview","/webspace/admin/overview/",{"title":842,"path":843,"stem":844,"tags":6,"slug":845,"sourcePath":843},"운영 현황","/webspace/admin/operations","40.webspace/50.admin/10.operations","/webspace/admin/operations/",{"title":847,"path":848,"stem":849,"tags":6,"slug":850,"sourcePath":848},"워크스페이스 접근","/webspace/admin/workspace-access","40.webspace/50.admin/20.workspace-access","/webspace/admin/workspace-access/",{"title":852,"path":853,"stem":854,"tags":6,"slug":855,"sourcePath":853},"API · 사이트 보안","/webspace/admin/api-site-security","40.webspace/50.admin/30.api-site-security","/webspace/admin/api-site-security/",{"title":857,"path":858,"stem":859,"tags":6,"slug":860,"sourcePath":858},"서비스 및 용량","/webspace/admin/service-capacity","40.webspace/50.admin/40.service-capacity","/webspace/admin/service-capacity/",{"title":862,"path":863,"stem":864,"tags":6,"slug":865,"sourcePath":863},"배포 관리와 프론트엔드 릴리스","/webspace/admin/deployments","40.webspace/50.admin/50.deployments","/webspace/admin/deployments/",{"title":867,"tags":868,"slug":6,"path":869,"stem":870,"children":871,"page":66,"sourcePath":869},"웹스페이스 따라해보기",[469],"/webspace/examples","40.webspace/60.examples",[872,877,882,888,893,898],{"title":873,"path":869,"stem":874,"tags":6,"slug":875,"sourcePath":876},"웹스페이스 응용편","40.webspace/60.examples/00.overview","/webspace/examples/","/webspace/examples/overview",{"title":878,"path":879,"stem":880,"tags":6,"slug":881,"sourcePath":879},"나만의 업무 시스템 만들기","/webspace/examples/my-own-system","40.webspace/60.examples/10.my-own-system","/webspace/examples/my-own-system/",{"title":883,"path":884,"stem":885,"tags":886,"slug":887,"sourcePath":884},"실시간 오목 게임 만들기","/webspace/examples/realtime-gomoku","40.webspace/60.examples/20.realtime-gomoku",[469],"/webspace/examples/realtime-gomoku/",{"title":889,"path":890,"stem":891,"tags":6,"slug":892,"sourcePath":890},"폴더 파일로 자료 게시판 만들기","/webspace/examples/folder-board","40.webspace/60.examples/30.folder-board","/webspace/examples/folder-board/",{"title":894,"path":895,"stem":896,"tags":6,"slug":897,"sourcePath":895},"공동 몬스터 레이드 만들기","/webspace/examples/monster-raid","40.webspace/60.examples/40.monster-raid","/webspace/examples/monster-raid/",{"title":899,"path":900,"stem":901,"tags":6,"slug":902,"sourcePath":900},"AI 상담 채팅 샘플 배포하기","/webspace/examples/ai-support-chat","40.webspace/60.examples/50.ai-support-chat","/webspace/examples/ai-support-chat/",{"title":904,"tags":6,"slug":6,"path":905,"stem":906,"children":907,"page":66,"sourcePath":905},"플러그인 사용하기","/plugin","50.plugin",[908,913,933,994,1015,1050],{"title":909,"path":910,"stem":911,"tags":6,"slug":912,"sourcePath":910},"플러그인 개요","/plugin/overview","50.plugin/00.overview","/plugin/overview/",{"title":914,"tags":6,"slug":6,"path":915,"stem":916,"children":917,"page":66,"sourcePath":915},"캘린더","/plugin/calendar","50.plugin/10.calendar",[918,923,928],{"title":919,"path":920,"stem":921,"tags":6,"slug":922,"sourcePath":920},"캘린더 소개","/plugin/calendar/overview","50.plugin/10.calendar/00.overview","/plugin/calendar/overview/",{"title":924,"path":925,"stem":926,"tags":6,"slug":927,"sourcePath":925},"일정 생성, 수정 및 삭제하기","/plugin/calendar/create-event","50.plugin/10.calendar/10.create-event","/plugin/calendar/create-event/",{"title":929,"path":930,"stem":931,"tags":6,"slug":932,"sourcePath":930},"활동 기록 확인하기","/plugin/calendar/file-activity","50.plugin/10.calendar/40.file-activity","/plugin/calendar/file-activity/",{"title":934,"tags":6,"slug":6,"path":935,"stem":936,"children":937,"page":66,"sourcePath":935},"이메일","/plugin/email","50.plugin/20.email",[938,943,948,953,958,964,969,974,979,984,989],{"title":939,"path":940,"stem":941,"tags":6,"slug":942,"sourcePath":940},"이메일 소개","/plugin/email/overview","50.plugin/20.email/00.overview","/plugin/email/overview/",{"title":944,"path":945,"stem":946,"tags":6,"slug":947,"sourcePath":945},"이메일 설정","/plugin/email/setfn-email-setting","50.plugin/20.email/05.setfn-email-setting","/plugin/email/setfn-email-setting/",{"title":949,"path":950,"stem":951,"tags":6,"slug":952,"sourcePath":950},"외부 이메일 연결","/plugin/email/external-email","50.plugin/20.email/07.external-email","/plugin/email/external-email/",{"title":954,"path":955,"stem":956,"tags":6,"slug":957,"sourcePath":955},"이메일 기본 기능","/plugin/email/email-basic","50.plugin/20.email/10.email-basic","/plugin/email/email-basic/",{"title":959,"path":960,"stem":961,"tags":6,"slug":962,"sourcePath":963},"메일 AI 어시스턴트 사용하기","/plugin/email/ai-assistant","50.plugin/20.email/15.email-ai-assistant","/plugin/email/ai-assistant/","/plugin/email/email-ai-assistant",{"title":965,"path":966,"stem":967,"tags":6,"slug":968,"sourcePath":966},"이메일 작성 및 전송","/plugin/email/email-compose","50.plugin/20.email/20.email-compose","/plugin/email/email-compose/",{"title":970,"path":971,"stem":972,"tags":6,"slug":973,"sourcePath":971},"파일 첨부하기","/plugin/email/email-attachment","50.plugin/20.email/30.email-attachment","/plugin/email/email-attachment/",{"title":975,"path":976,"stem":977,"tags":6,"slug":978,"sourcePath":976},"이메일 폴더 관리","/plugin/email/email-folders","50.plugin/20.email/40.email-folders","/plugin/email/email-folders/",{"title":980,"path":981,"stem":982,"tags":6,"slug":983,"sourcePath":981},"이메일 자동 분류하기","/plugin/email/email-auto-classify","50.plugin/20.email/50.email-auto-classify","/plugin/email/email-auto-classify/",{"title":985,"path":986,"stem":987,"tags":6,"slug":988,"sourcePath":986},"이메일 파일 보관 및 공유","/plugin/email/email-open-in-space","50.plugin/20.email/60.email-open-in-space","/plugin/email/email-open-in-space/",{"title":990,"path":991,"stem":992,"tags":6,"slug":993,"sourcePath":991},"이메일 보안","/plugin/email/email-security","50.plugin/20.email/70.email-security","/plugin/email/email-security/",{"title":995,"tags":6,"slug":6,"path":996,"stem":997,"children":998,"page":66,"sourcePath":996},"워크플로우 (업무자동화)","/plugin/workflow","50.plugin/30.workflow",[999,1004,1010],{"title":1000,"path":1001,"stem":1002,"tags":6,"slug":1003,"sourcePath":1001},"워크플로우 소개","/plugin/workflow/overview","50.plugin/30.workflow/00.overview","/plugin/workflow/overview/",{"title":1005,"path":1006,"stem":1007,"tags":1008,"slug":1009,"sourcePath":1006},"새 워크플로우 만들기","/plugin/workflow/new-workflow","50.plugin/30.workflow/10.new-workflow",[469],"/plugin/workflow/new-workflow/",{"title":1011,"path":1012,"stem":1013,"tags":6,"slug":1014,"sourcePath":1012},"실행 기록 확인하기","/plugin/workflow/execution-history","50.plugin/30.workflow/20.execution-history","/plugin/workflow/execution-history/",{"title":1016,"tags":6,"slug":6,"path":1017,"stem":1018,"children":1019,"page":66,"sourcePath":1017},"파인튜닝 (AI 학습)","/plugin/fine-tuning","50.plugin/40.fine-tuning",[1020,1025,1030,1035,1040,1045],{"title":1021,"path":1022,"stem":1023,"tags":6,"slug":1024,"sourcePath":1022},"파인튜닝 소개","/plugin/fine-tuning/overview","50.plugin/40.fine-tuning/00.overview","/plugin/fine-tuning/overview/",{"title":1026,"path":1027,"stem":1028,"tags":6,"slug":1029,"sourcePath":1027},"학습 데이터 전처리","/plugin/fine-tuning/pre-processing","50.plugin/40.fine-tuning/10.pre-processing","/plugin/fine-tuning/pre-processing/",{"title":1031,"path":1032,"stem":1033,"tags":6,"slug":1034,"sourcePath":1032},"학습","/plugin/fine-tuning/training","50.plugin/40.fine-tuning/20.training","/plugin/fine-tuning/training/",{"title":1036,"path":1037,"stem":1038,"tags":6,"slug":1039,"sourcePath":1037},"평가","/plugin/fine-tuning/evaluation","50.plugin/40.fine-tuning/30.evaluation","/plugin/fine-tuning/evaluation/",{"title":1041,"path":1042,"stem":1043,"tags":6,"slug":1044,"sourcePath":1042},"채팅 테스트","/plugin/fine-tuning/chat-test","50.plugin/40.fine-tuning/40.chat-test","/plugin/fine-tuning/chat-test/",{"title":1046,"path":1047,"stem":1048,"tags":6,"slug":1049,"sourcePath":1047},"내보내기","/plugin/fine-tuning/export","50.plugin/40.fine-tuning/50.export","/plugin/fine-tuning/export/",{"title":1051,"tags":6,"slug":6,"path":1052,"stem":1053,"children":1054,"page":66,"sourcePath":1052},"EDC (데이터 수집)","/plugin/edc","50.plugin/50.edc",[1055,1060,1065,1070],{"title":1056,"path":1057,"stem":1058,"tags":6,"slug":1059,"sourcePath":1057},"EDC 소개","/plugin/edc/overview","50.plugin/50.edc/00.overview","/plugin/edc/overview/",{"title":1061,"path":1062,"stem":1063,"tags":6,"slug":1064,"sourcePath":1062},"데이터 입력, Audit Trail","/plugin/edc/data-entry","50.plugin/50.edc/10.data-entry","/plugin/edc/data-entry/",{"title":1066,"path":1067,"stem":1068,"tags":6,"slug":1069,"sourcePath":1067},"빌더","/plugin/edc/builder","50.plugin/50.edc/20.builder","/plugin/edc/builder/",{"title":1071,"path":1072,"stem":1073,"tags":6,"slug":1074,"sourcePath":1072},"사용자/기관 설정","/plugin/edc/account","50.plugin/50.edc/30.account","/plugin/edc/account/",{"title":1076,"tags":6,"slug":6,"path":1077,"stem":1078,"children":1079,"page":66,"sourcePath":1077},"명령줄 도구","/cli","90.cli",[1080],{"title":1081,"path":1082,"stem":1083,"tags":6,"slug":1084,"sourcePath":1082},"명령어로 서버 관리하기","/cli/commands","90.cli/10.commands","/cli/commands/",{"title":1086,"tags":6,"slug":6,"path":1087,"stem":1088,"children":1089,"page":66,"sourcePath":1087},"보안 업데이트","/security-updates","95.security-updates",[1090,1095,1100,1105],{"title":1091,"path":1092,"stem":1093,"tags":6,"slug":1094,"sourcePath":1092},"보안 점검과 업데이트 방식 알아보기","/security-updates/overview","95.security-updates/00.overview","/security-updates/overview/",{"title":1096,"path":1097,"stem":1098,"tags":6,"slug":1099,"sourcePath":1097},"보안 점검 기록","/security-updates/review-log","95.security-updates/10.review-log","/security-updates/review-log/",{"title":1101,"path":1102,"stem":1103,"tags":6,"slug":1104,"sourcePath":1102},"주요 취약점 점검 현황","/security-updates/vulnerability-status","95.security-updates/20.vulnerability-status","/security-updates/vulnerability-status/",{"title":1106,"path":1107,"stem":1108,"tags":6,"slug":1109,"sourcePath":1107},"서버 보안 업데이트 점검하기","/security-updates/server-checklist","95.security-updates/30.server-checklist","/security-updates/server-checklist/",{"title":1111,"tags":6,"slug":6,"path":1112,"stem":1113,"children":1114,"page":66,"sourcePath":1112},"FAQ","/faq","99.FAQ",[1115,1121,1127,1133,1139,1145,1151],{"title":1116,"path":1117,"stem":1118,"tags":6,"slug":1119,"sourcePath":1120},"SetFN vs 클라우드 서비스 비교","/FAQ/comparison-cloud","99.FAQ/10.comparison-cloud","/FAQ/comparison-cloud/","/faq/comparison-cloud",{"title":1122,"path":1123,"stem":1124,"tags":6,"slug":1125,"sourcePath":1126},"SetFN vs NAS 비교","/FAQ/comparison-nas","99.FAQ/20.comparison-nas","/FAQ/comparison-nas/","/faq/comparison-nas",{"title":1128,"path":1129,"stem":1130,"tags":6,"slug":1131,"sourcePath":1132},"보안 정책","/FAQ/security-policy","99.FAQ/30.security-policy","/FAQ/security-policy/","/faq/security-policy",{"title":1134,"path":1135,"stem":1136,"tags":6,"slug":1137,"sourcePath":1138},"SetFN은 왜 빠른가요","/FAQ/why-fast","99.FAQ/40.why-fast","/FAQ/why-fast/","/faq/why-fast",{"title":1140,"path":1141,"stem":1142,"tags":6,"slug":1143,"sourcePath":1144},"라이선스 FAQ","/FAQ/license-faq","99.FAQ/50.license-faq","/FAQ/license-faq/","/faq/license-faq",{"title":1146,"path":1147,"stem":1148,"tags":6,"slug":1149,"sourcePath":1150},"AI 기능 FAQ","/FAQ/ai-faq","99.FAQ/60.ai-faq","/FAQ/ai-faq/","/faq/ai-faq",{"title":1152,"path":1153,"stem":1154,"tags":6,"slug":1155,"sourcePath":1156},"문제 해결 가이드","/FAQ/troubleshooting","99.FAQ/70.troubleshooting","/FAQ/troubleshooting/","/faq/troubleshooting",{"id":1158,"title":1081,"body":1159,"cover":6,"description":2494,"extension":2495,"image":6,"meta":2496,"navigation":2497,"path":1082,"reviewSummary":6,"reviewedAt":6,"seo":2498,"slug":1084,"stem":1083,"tags":6,"thumbnail":6,"thumbnailPosition":6,"thumbnailScale":6,"__hash__":2508},"docs_ko/90.cli/10.commands.md",{"type":1160,"value":1161,"toc":2472},"minimal",[1162,1166,1175,1178,1181,1186,1225,1230,1237,1251,1281,1300,1310,1314,1333,1341,1362,1365,1381,1388,1392,1408,1427,1433,1438,1442,1736,1743,1755,1759,1762,1766,1769,1781,1784,1796,1799,1811,1819,1831,1835,1838,1850,1865,1869,1890,1898,1902,1905,1920,1934,1938,1941,1958,1973,2026,2030,2048,2104,2107,2119,2131,2135,2138,2141,2153,2156,2183,2186,2205,2215,2219,2245,2281,2285,2293,2296,2308,2311,2323,2326,2344,2357,2365,2369,2372,2384,2387,2399,2406,2413,2416,2439,2443,2468],[1163,1164,1081],"h1",{"id":1165},"명령어로-서버-관리하기",[1167,1168,1169,1170,1174],"p",{},"스페이스빌더 실행 파일(",[1171,1172,1173],"code",{},"setfn-spacebuilder",")에는 서버 시작 기능 외에 터미널용 관리 명령이 들어 있습니다. 관리자 페이지에 로그인할 수 없을 때 계정과 접속 제한을 복구하거나, 포트와 언어 같은 설정을 확인할 때 사용합니다.",[1167,1176,1177],{},"이 문서는 서버를 설치하고 운영하는 관리자를 위한 문서입니다. 일반적인 관리는 관리자 페이지에서 하고, 관리자 페이지를 사용할 수 없을 때만 명령어를 사용하세요.",[1179,1180],"hr",{},[1182,1183,1185],"h2",{"id":1184},"시작하기-전에","시작하기 전에",[1187,1188,1189,1193,1196,1203],"ul",{},[1190,1191,1192],"li",{},"스페이스빌더가 설치된 컴퓨터의 터미널에서 실행합니다.",[1190,1194,1195],{},"스페이스빌더를 실행하는 운영체제 사용자 계정으로 실행합니다. 기본 설정 경로는 그 사용자의 홈 폴더 아래에 있으며, 별도 경로를 사용한다면 운영 중인 서버와 같은 설정 파일을 지정해야 합니다.",[1190,1197,1198,1199,1202],{},"예시는 실행 파일이 홈 폴더(",[1171,1200,1201],{},"~/setfn-spacebuilder",")에 있는 경우입니다. 다른 위치에 두었다면 해당 경로로 바꿔 입력합니다.",[1190,1204,1205,1208,1209,1208,1212,1208,1215,1208,1218,1208,1221,1224],{},[1171,1206,1207],{},"user",", ",[1171,1210,1211],{},"unblock",[1171,1213,1214],{},"ip",[1171,1216,1217],{},"admin",[1171,1219,1220],{},"login",[1171,1222,1223],{},"logout","으로 시작하는 관리 명령은 서버를 멈춘 상태에서 실행합니다.",[1226,1227,1229],"h3",{"id":1228},"운영-중인-서버의-설정-경로-지정하기","운영 중인 서버의 설정 경로 지정하기",[1167,1231,1232,1233,1236],{},"Linux의 기본 설정 파일은 ",[1171,1234,1235],{},"~/.config/SetFN/config.yaml","입니다. 서비스를 다른 계정이나 별도 설정 경로로 실행한다면 서비스 실행 명령에 지정된 경로를 확인합니다.",[1167,1238,1239,1242,1243,1246,1247,1250],{},[1171,1240,1241],{},"-c"," 또는 ",[1171,1244,1245],{},"--config","로 그 설정 파일을 지정합니다. 다음은 ",[1171,1248,1249],{},"/srv/setfn/config.yaml","로 운영하는 서버의 예시입니다. 실제 파일 경로로 바꿔 입력합니다.",[1252,1253,1258],"pre",{"className":1254,"code":1255,"language":1256,"meta":1257,"style":1257},"language-bash shiki shiki-themes github-light github-dark monokai","~/setfn-spacebuilder -c /srv/setfn/config.yaml port get\n~/setfn-spacebuilder -c /srv/setfn/config.yaml user list\n","bash","",[1171,1259,1260,1273],{"__ignoreMap":1257},[1261,1262,1265,1269],"span",{"class":1263,"line":1264},"line",1,[1261,1266,1268],{"class":1267},"sC2Qs","~",[1261,1270,1272],{"class":1271},"sMOD_","/setfn-spacebuilder -c /srv/setfn/config.yaml port get\n",[1261,1274,1276,1278],{"class":1263,"line":1275},2,[1261,1277,1268],{"class":1267},[1261,1279,1280],{"class":1271},"/setfn-spacebuilder -c /srv/setfn/config.yaml user list\n",[1167,1282,1283,1284,1286,1287,1242,1290,1293,1294,1296,1297,1299],{},"이 문서의 다른 관리 명령에도 같은 ",[1171,1285,1241],{}," 옵션을 붙입니다. 서버를 ",[1171,1288,1289],{},"-H",[1171,1291,1292],{},"--home","으로 경로를 지정해 운영한다면 그 옵션도 똑같이 붙입니다. ",[1171,1295,1241],{},"와 함께 지정하면 설정 파일은 ",[1171,1298,1241],{},"로 지정한 파일을 사용합니다.",[1301,1302,1303],"warning",{},[1167,1304,1305,1306,1309],{},"다른 설정 경로를 지정하면 복구할 서버와 다른 데이터를 열 수 있습니다. ",[1171,1307,1308],{},"Database file does not exist"," 또는 신규 설치 안내가 나오면 진행을 멈추고 실행 계정과 설정 파일 경로부터 확인합니다.",[1226,1311,1313],{"id":1312},"서버를-멈추고-다시-켜기","서버를 멈추고 다시 켜기",[1167,1315,1316,1317,1320,1321,1324,1325,1328,1329,1332],{},"사용자·접속 제한·기기 연결을 관리하는 명령과 ",[1171,1318,1319],{},"admin status","·",[1171,1322,1323],{},"admin logout-all"," 등은 서버의 데이터베이스를 직접 엽니다. 다른 프로세스가 같은 데이터베이스를 사용 중이면 재시도 후 ",[1171,1326,1327],{},"Database is still locked"," 메시지로 끝날 수 있습니다. ",[1171,1330,1331],{},"admin reset-config","는 데이터베이스를 열지 않고 설정 파일을 삭제하지만, 이 작업도 서버를 멈춘 뒤 수행합니다.",[1167,1334,1335,1340],{},[1336,1337,1339],"a",{"href":1338},"../getting-started/install-linux#%EC%BB%B4%ED%93%A8%ED%84%B0%EB%A5%BC-%EC%BC%A4-%EB%95%8C-%EC%9E%90%EB%8F%99%EC%9C%BC%EB%A1%9C-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0","자동 시작","을 설정했다면 먼저 서버를 멈춥니다.",[1252,1342,1344],{"className":1254,"code":1343,"language":1256,"meta":1257,"style":1257},"sudo systemctl stop setfn-spacebuilder\n",[1171,1345,1346],{"__ignoreMap":1257},[1261,1347,1348,1352,1356,1359],{"class":1263,"line":1264},[1261,1349,1351],{"class":1350},"srTi1","sudo",[1261,1353,1355],{"class":1354},"sstjo"," systemctl",[1261,1357,1358],{"class":1354}," stop",[1261,1360,1361],{"class":1354}," setfn-spacebuilder\n",[1167,1363,1364],{},"필요한 명령을 실행한 뒤 서버를 다시 켭니다.",[1252,1366,1368],{"className":1254,"code":1367,"language":1256,"meta":1257,"style":1257},"sudo systemctl start setfn-spacebuilder\n",[1171,1369,1370],{"__ignoreMap":1257},[1261,1371,1372,1374,1376,1379],{"class":1263,"line":1264},[1261,1373,1351],{"class":1350},[1261,1375,1355],{"class":1354},[1261,1377,1378],{"class":1354}," start",[1261,1380,1361],{"class":1354},[1167,1382,1383,1384,1387],{},"터미널에서 직접 실행 중이라면 그 터미널에서 ",[1171,1385,1386],{},"Ctrl+C","를 눌러 멈춥니다.",[1226,1389,1391],{"id":1390},"콘솔-접근-비밀번호-정하기","콘솔 접근 비밀번호 정하기",[1167,1393,1394,1396,1397,1399,1400,1403,1404,1407],{},[1171,1395,1207],{},"와 ",[1171,1398,1211],{}," 명령은 실행할 때 ",[1171,1401,1402],{},"Console Access Password","를 묻습니다. 이 비밀번호는 환경 변수 ",[1171,1405,1406],{},"SETFN_CONSOLE_PASSWORD","에 정한 값입니다. 명령을 실행하기 전에 같은 터미널에서 값을 정합니다.",[1252,1409,1411],{"className":1254,"code":1410,"language":1256,"meta":1257,"style":1257},"export SETFN_CONSOLE_PASSWORD=\"직접 정한 비밀번호\"\n",[1171,1412,1413],{"__ignoreMap":1257},[1261,1414,1415,1418,1421,1424],{"class":1263,"line":1264},[1261,1416,1417],{"class":1267},"export",[1261,1419,1420],{"class":1271}," SETFN_CONSOLE_PASSWORD",[1261,1422,1423],{"class":1267},"=",[1261,1425,1426],{"class":1354},"\"직접 정한 비밀번호\"\n",[1167,1428,1429,1430,1432],{},"이 값은 로컬 콘솔 명령의 접근을 확인하는 데만 씁니다. 워크스페이스 관리자 비밀번호나 SetFN 계정 비밀번호와는 관계가 없습니다. ",[1171,1431,1402],{},"에는 이 터미널에서 지정한 값을 입력합니다.",[1301,1434,1435],{},[1167,1436,1437],{},"환경 변수를 정하지 않으면 실행 파일에 들어 있는 기본 비밀번호가 사용되고 경고가 표시됩니다. 운영 중인 서버에서는 반드시 직접 정한 값을 사용하세요.",[1182,1439,1441],{"id":1440},"명령-한눈에-보기","명령 한눈에 보기",[1443,1444,1445,1461],"table",{},[1446,1447,1448],"thead",{},[1449,1450,1451,1455,1458],"tr",{},[1452,1453,1454],"th",{},"명령",[1452,1456,1457],{},"하는 일",[1452,1459,1460],{},"서버 중지",[1462,1463,1464,1478,1491,1522,1534,1546,1559,1574,1586,1598,1610,1625,1649,1667,1678,1689,1704,1723],"tbody",{},[1449,1465,1466,1472,1475],{},[1467,1468,1469],"td",{},[1171,1470,1471],{},"serv",[1467,1473,1474],{},"서버를 시작합니다. 명령 없이 실행 파일만 실행해도 서버가 시작됩니다.",[1467,1476,1477],{},"-",[1449,1479,1480,1485,1488],{},[1467,1481,1482],{},[1171,1483,1484],{},"version",[1467,1486,1487],{},"버전과 빌드 정보를 표시합니다.",[1467,1489,1490],{},"필요 없음",[1449,1492,1493,1504,1520],{},[1467,1494,1495,1208,1498,1208,1501],{},[1171,1496,1497],{},"lang get",[1171,1499,1500],{},"lang set \u003C코드>",[1171,1502,1503],{},"lang list",[1467,1505,1506,1507,1208,1510,1208,1513,1208,1516,1519],{},"터미널 메시지 언어를 확인하거나 바꿉니다. ",[1171,1508,1509],{},"en",[1171,1511,1512],{},"ko",[1171,1514,1515],{},"ja",[1171,1517,1518],{},"zh","를 지원합니다.",[1467,1521,1490],{},[1449,1523,1524,1529,1532],{},[1467,1525,1526],{},[1171,1527,1528],{},"port get",[1467,1530,1531],{},"현재 서버 포트와 사용 여부를 확인합니다.",[1467,1533,1490],{},[1449,1535,1536,1541,1544],{},[1467,1537,1538],{},[1171,1539,1540],{},"homepath get",[1467,1542,1543],{},"데이터를 저장하는 홈 경로를 확인합니다.",[1467,1545,1490],{},[1449,1547,1548,1553,1556],{},[1467,1549,1550],{},[1171,1551,1552],{},"user list",[1467,1554,1555],{},"사용자 계정 목록을 표시합니다.",[1467,1557,1558],{},"필요",[1449,1560,1561,1569,1572],{},[1467,1562,1563,1208,1566],{},[1171,1564,1565],{},"user add",[1171,1567,1568],{},"user delete",[1467,1570,1571],{},"사용자 계정을 추가하거나 삭제합니다.",[1467,1573,1558],{},[1449,1575,1576,1581,1584],{},[1467,1577,1578],{},[1171,1579,1580],{},"user password",[1467,1582,1583],{},"사용자의 비밀번호를 바꿉니다.",[1467,1585,1558],{},[1449,1587,1588,1593,1596],{},[1467,1589,1590],{},[1171,1591,1592],{},"user promote",[1467,1594,1595],{},"사용자의 역할을 바꿉니다.",[1467,1597,1558],{},[1449,1599,1600,1605,1608],{},[1467,1601,1602],{},[1171,1603,1604],{},"user mfa reset",[1467,1606,1607],{},"관리자 계정의 2단계 인증을 끕니다(비상 복구).",[1467,1609,1558],{},[1449,1611,1612,1616,1623],{},[1467,1613,1614],{},[1171,1615,1211],{},[1467,1617,1618,1619,1622],{},"로그인 차단을 응급 복구합니다. ",[1171,1620,1621],{},"user unblock","과 같습니다.",[1467,1624,1558],{},[1449,1626,1627,1644,1647],{},[1467,1628,1629,1208,1632,1208,1635,1208,1638,1208,1641],{},[1171,1630,1631],{},"ip status",[1171,1633,1634],{},"ip add",[1171,1636,1637],{},"ip remove",[1171,1639,1640],{},"ip enable",[1171,1642,1643],{},"ip disable",[1467,1645,1646],{},"IP 접근 제한과 허용 목록을 관리합니다.",[1467,1648,1558],{},[1449,1650,1651,1658,1665],{},[1467,1652,1653,1208,1655],{},[1171,1654,1319],{},[1171,1656,1657],{},"admin status-json",[1467,1659,1660,1661,1664],{},"서버 상태와 설정을 확인합니다. ",[1171,1662,1663],{},"status-json","은 상태 정보를 JSON 형식으로 표시합니다.",[1467,1666,1558],{},[1449,1668,1669,1673,1676],{},[1467,1670,1671],{},[1171,1672,1323],{},[1467,1674,1675],{},"모든 사용자를 로그아웃시킵니다.",[1467,1677,1558],{},[1449,1679,1680,1684,1687],{},[1467,1681,1682],{},[1171,1683,1331],{},[1467,1685,1686],{},"설정 파일을 삭제해 초기 설정을 다시 시작합니다.",[1467,1688,1558],{},[1449,1690,1691,1699,1702],{},[1467,1692,1693,1208,1696],{},[1171,1694,1695],{},"admin knowledge-backup",[1171,1697,1698],{},"admin knowledge-restore",[1467,1700,1701],{},"지식 저장소를 백업하거나 복원합니다.",[1467,1703,1558],{},[1449,1705,1706,1714,1721],{},[1467,1707,1708,1208,1711],{},[1171,1709,1710],{},"admin vector-instance-id",[1171,1712,1713],{},"admin prepare-clone",[1467,1715,1716,1717,1720],{},"복사한 서버를 별도 인스턴스로 운영할 수 있게 준비합니다. ",[1336,1718,370],{"href":1719},"../admin/system-admin/server-migration","를 참고합니다.",[1467,1722,1558],{},[1449,1724,1725,1731,1734],{},[1467,1726,1727,1208,1729],{},[1171,1728,1220],{},[1171,1730,1223],{},[1467,1732,1733],{},"터미널에서 SetFN 계정에 이 기기를 등록하거나 등록을 해제합니다.",[1467,1735,1558],{},[1167,1737,1738,1739,1742],{},"각 명령의 자세한 옵션은 명령 뒤에 ",[1171,1740,1741],{},"--help","를 붙여 확인합니다.",[1252,1744,1746],{"className":1254,"code":1745,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user --help\n",[1171,1747,1748],{"__ignoreMap":1257},[1261,1749,1750,1752],{"class":1263,"line":1264},[1261,1751,1268],{"class":1267},[1261,1753,1754],{"class":1271},"/setfn-spacebuilder user --help\n",[1182,1756,1758],{"id":1757},"로그인할-수-없을-때-복구하기","로그인할 수 없을 때 복구하기",[1167,1760,1761],{},"아래 명령은 모두 서버를 멈추고 콘솔 접근 비밀번호를 정한 뒤 실행합니다.",[1226,1763,1765],{"id":1764},"로그인-차단-풀기","로그인 차단 풀기",[1167,1767,1768],{},"로그인 실패가 반복되어 관리자 접속이 차단되었다면 접속할 컴퓨터의 IP를 보안 화이트리스트에 추가합니다.",[1252,1770,1772],{"className":1254,"code":1771,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder unblock --ip 203.0.113.10\n",[1171,1773,1774],{"__ignoreMap":1257},[1261,1775,1776,1778],{"class":1263,"line":1264},[1261,1777,1268],{"class":1267},[1261,1779,1780],{"class":1271},"/setfn-spacebuilder unblock --ip 203.0.113.10\n",[1167,1782,1783],{},"현재 복구 상태는 다음 명령으로 확인합니다.",[1252,1785,1787],{"className":1254,"code":1786,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder unblock --status\n",[1171,1788,1789],{"__ignoreMap":1257},[1261,1790,1791,1793],{"class":1263,"line":1264},[1261,1792,1268],{"class":1267},[1261,1794,1795],{"class":1271},"/setfn-spacebuilder unblock --status\n",[1167,1797,1798],{},"IP를 추가해도 접속할 수 없다면 로그인 보안 기능을 잠시 끕니다.",[1252,1800,1802],{"className":1254,"code":1801,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder unblock --all\n",[1171,1803,1804],{"__ignoreMap":1257},[1261,1805,1806,1808],{"class":1263,"line":1264},[1261,1807,1268],{"class":1267},[1261,1809,1810],{"class":1271},"/setfn-spacebuilder unblock --all\n",[1301,1812,1813],{},[1167,1814,1815,1818],{},[1171,1816,1817],{},"--all","로 끈 로그인 보안 기능은 다시 켤 때까지 꺼진 상태로 유지됩니다. 관리자 페이지에서 원인을 해결한 뒤 반드시 다음 명령으로 다시 켜세요.",[1252,1820,1822],{"className":1254,"code":1821,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder unblock --enable-security\n",[1171,1823,1824],{"__ignoreMap":1257},[1261,1825,1826,1828],{"class":1263,"line":1264},[1261,1827,1268],{"class":1267},[1261,1829,1830],{"class":1271},"/setfn-spacebuilder unblock --enable-security\n",[1226,1832,1834],{"id":1833},"대상-사용자-계정-확인하기","대상 사용자 계정 확인하기",[1167,1836,1837],{},"비밀번호와 역할을 바꾸려면 워크스페이스에 등록된 계정의 로그인 사용자 이름이 필요합니다. 다음 명령으로 사용자 목록을 확인합니다.",[1252,1839,1841],{"className":1254,"code":1840,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user list\n",[1171,1842,1843],{"__ignoreMap":1257},[1261,1844,1845,1847],{"class":1263,"line":1264},[1261,1846,1268],{"class":1267},[1261,1848,1849],{"class":1271},"/setfn-spacebuilder user list\n",[1167,1851,1852,1853,1856,1857,1860,1861,1864],{},"아래 예시의 ",[1171,1854,1855],{},"\u003C사용자 계정>","을 꺾쇠괄호까지 포함해 목록의 ",[1171,1858,1859],{},"Username"," 열에 있는 로그인 사용자 이름으로 바꿉니다. ",[1171,1862,1863],{},"Nick"," 열은 화면에 표시되는 이름입니다.",[1226,1866,1868],{"id":1867},"관리자-비밀번호-바꾸기","관리자 비밀번호 바꾸기",[1252,1870,1872],{"className":1254,"code":1871,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user password -u \"\u003C사용자 계정>\" --password \"새 비밀번호\"\n",[1171,1873,1874],{"__ignoreMap":1257},[1261,1875,1876,1878,1881,1884,1887],{"class":1263,"line":1264},[1261,1877,1268],{"class":1267},[1261,1879,1880],{"class":1271},"/setfn-spacebuilder user password -u ",[1261,1882,1883],{"class":1354},"\"\u003C사용자 계정>\"",[1261,1885,1886],{"class":1271}," --password ",[1261,1888,1889],{"class":1354},"\"새 비밀번호\"\n",[1167,1891,1892,1893,1897],{},"입력한 명령은 터미널 기록에 남으므로, 로그인한 뒤 관리자 페이지에서 비밀번호를 한 번 더 바꾸는 것을 권장합니다. 새 비밀번호는 서버의 ",[1336,1894,1896],{"href":1895},"../admin/user-management/account-security#%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8-%EA%B7%9C%EC%B9%99-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0","비밀번호 규칙","을 따르며, 흔히 쓰이거나 유출된 비밀번호는 거절됩니다. 새로 설치한 서버의 기본 규칙은 12자 이상입니다.",[1226,1899,1901],{"id":1900},"관리자-2단계-인증-끄기","관리자 2단계 인증 끄기",[1167,1903,1904],{},"관리자가 인증 앱과 복구 코드를 모두 잃어 로그인할 수 없고, 관리자 페이지에서 초기화해 줄 다른 최고관리자도 없을 때 사용합니다.",[1252,1906,1908],{"className":1254,"code":1907,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user mfa reset \"\u003C사용자 계정>\"\n",[1171,1909,1910],{"__ignoreMap":1257},[1261,1911,1912,1914,1917],{"class":1263,"line":1264},[1261,1913,1268],{"class":1267},[1261,1915,1916],{"class":1271},"/setfn-spacebuilder user mfa reset ",[1261,1918,1919],{"class":1354},"\"\u003C사용자 계정>\"\n",[1167,1921,1922,1923,1926,1927,1930,1931,1720],{},"그 계정의 인증 앱 등록과 복구 코드가 지워지고 로그인 중이던 세션이 모두 끝납니다. 다음 로그인은 비밀번호만으로 하며, ",[1171,1924,1925],{},"관리자 2단계 인증 필수"," 정책이 켜져 있으면 로그인 뒤 다시 등록해야 합니다. 실행 기록은 감사 로그에 ",[1171,1928,1929],{},"2단계 인증 초기화","로 남습니다. 2단계 인증을 쓰지 않는 계정에 실행하면 바뀌는 것 없이 안내만 표시됩니다. 등록 절차는 ",[1336,1932,335],{"href":1933},"../admin/security/two-factor-auth",[1226,1935,1937],{"id":1936},"관리자-권한-되찾기","관리자 권한 되찾기",[1167,1939,1940],{},"관리자 권한이 있는 계정이 없다면 기존 사용자의 역할을 바꿉니다.",[1252,1942,1944],{"className":1254,"code":1943,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user promote -u \"\u003C사용자 계정>\" -r admin\n",[1171,1945,1946],{"__ignoreMap":1257},[1261,1947,1948,1950,1953,1955],{"class":1263,"line":1264},[1261,1949,1268],{"class":1267},[1261,1951,1952],{"class":1271},"/setfn-spacebuilder user promote -u ",[1261,1954,1883],{"class":1354},[1261,1956,1957],{"class":1271}," -r admin\n",[1167,1959,1960,1963,1964,1966,1967,1969,1970,1972],{},[1171,1961,1962],{},"-r admin","의 ",[1171,1965,1217],{},"은 부여할 역할 값이며, ",[1171,1968,1319],{},"처럼 명령 이름에 쓰는 ",[1171,1971,1217],{},"과는 다릅니다.",[1443,1974,1975,1985],{},[1446,1976,1977],{},[1449,1978,1979,1982],{},[1452,1980,1981],{},"옵션",[1452,1983,1984],{},"설명",[1462,1986,1987,2003],{},[1449,1988,1989,1997],{},[1467,1990,1991,1208,1994],{},[1171,1992,1993],{},"-u",[1171,1995,1996],{},"--username",[1467,1998,1999,2000,2002],{},"역할을 바꿀 기존 계정의 로그인 사용자 이름(",[1171,2001,1859],{},")입니다.",[1449,2004,2005,2013],{},[1467,2006,2007,1208,2010],{},[1171,2008,2009],{},"-r",[1171,2011,2012],{},"--role",[1467,2014,2015,1208,2018,1208,2020,2022,2023,2025],{},[1171,2016,2017],{},"superuser",[1171,2019,1217],{},[1171,2021,1207],{}," 가운데 하나입니다. 입력하지 않으면 ",[1171,2024,2017],{},"입니다.",[1226,2027,2029],{"id":2028},"사용자-계정-추가하고-삭제하기","사용자 계정 추가하고 삭제하기",[1252,2031,2033],{"className":1254,"code":2032,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user add -u newadmin -n \"새 관리자\" --admin\n",[1171,2034,2035],{"__ignoreMap":1257},[1261,2036,2037,2039,2042,2045],{"class":1263,"line":1264},[1261,2038,1268],{"class":1267},[1261,2040,2041],{"class":1271},"/setfn-spacebuilder user add -u newadmin -n ",[1261,2043,2044],{"class":1354},"\"새 관리자\"",[1261,2046,2047],{"class":1271}," --admin\n",[1443,2049,2050,2058],{},[1446,2051,2052],{},[1449,2053,2054,2056],{},[1452,2055,1981],{},[1452,2057,1984],{},[1462,2059,2060,2071,2084,2094],{},[1449,2061,2062,2068],{},[1467,2063,2064,1208,2066],{},[1171,2065,1993],{},[1171,2067,1996],{},[1467,2069,2070],{},"로그인에 사용할 사용자 이름입니다.",[1449,2072,2073,2081],{},[1467,2074,2075,1208,2078],{},[1171,2076,2077],{},"-n",[1171,2079,2080],{},"--nickname",[1467,2082,2083],{},"화면에 표시할 이름입니다.",[1449,2085,2086,2091],{},[1467,2087,2088],{},[1171,2089,2090],{},"--password",[1467,2092,2093],{},"비밀번호입니다. 입력하지 않으면 자동으로 만든 비밀번호가 화면에 표시됩니다.",[1449,2095,2096,2101],{},[1467,2097,2098],{},[1171,2099,2100],{},"--admin",[1467,2102,2103],{},"관리자로 추가합니다.",[1167,2105,2106],{},"계정을 삭제할 때는 사용자 이름을 지정합니다. 마지막 관리자는 삭제할 수 없습니다.",[1252,2108,2110],{"className":1254,"code":2109,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder user delete -u olduser\n",[1171,2111,2112],{"__ignoreMap":1257},[1261,2113,2114,2116],{"class":1263,"line":1264},[1261,2115,1268],{"class":1267},[1261,2117,2118],{"class":1271},"/setfn-spacebuilder user delete -u olduser\n",[2120,2121,2122],"danger",{},[1167,2123,2124,2126,2127,2130],{},[1171,2125,1568],{},"에 ",[1171,2128,2129],{},"--delete-home","을 함께 쓰면 그 사용자의 홈 폴더와 안의 파일도 삭제됩니다. 삭제한 파일은 이 명령으로 되돌릴 수 없습니다.",[1182,2132,2134],{"id":2133},"ip-접근-제한-관리하기","IP 접근 제한 관리하기",[1167,2136,2137],{},"IP 접근 제한을 켜면 허용 목록에 있는 IP에서만 관리자 페이지에 접속할 수 있습니다. 허용 목록을 잘못 설정해 관리자 페이지에 접속할 수 없을 때 명령어로 고칩니다.",[1167,2139,2140],{},"현재 상태와 허용 목록을 확인합니다.",[1252,2142,2144],{"className":1254,"code":2143,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder ip status\n",[1171,2145,2146],{"__ignoreMap":1257},[1261,2147,2148,2150],{"class":1263,"line":1264},[1261,2149,1268],{"class":1267},[1261,2151,2152],{"class":1271},"/setfn-spacebuilder ip status\n",[1167,2154,2155],{},"허용 목록에 IP 주소나 CIDR 범위를 추가하거나 제거합니다.",[1252,2157,2159],{"className":1254,"code":2158,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder ip add --ip 192.168.1.100\n~/setfn-spacebuilder ip add --ip 192.168.1.0/24\n~/setfn-spacebuilder ip remove --ip 192.168.1.100\n",[1171,2160,2161,2168,2175],{"__ignoreMap":1257},[1261,2162,2163,2165],{"class":1263,"line":1264},[1261,2164,1268],{"class":1267},[1261,2166,2167],{"class":1271},"/setfn-spacebuilder ip add --ip 192.168.1.100\n",[1261,2169,2170,2172],{"class":1263,"line":1275},[1261,2171,1268],{"class":1267},[1261,2173,2174],{"class":1271},"/setfn-spacebuilder ip add --ip 192.168.1.0/24\n",[1261,2176,2178,2180],{"class":1263,"line":2177},3,[1261,2179,1268],{"class":1267},[1261,2181,2182],{"class":1271},"/setfn-spacebuilder ip remove --ip 192.168.1.100\n",[1167,2184,2185],{},"접근 제한을 켜거나 끕니다.",[1252,2187,2189],{"className":1254,"code":2188,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder ip enable\n~/setfn-spacebuilder ip disable\n",[1171,2190,2191,2198],{"__ignoreMap":1257},[1261,2192,2193,2195],{"class":1263,"line":1264},[1261,2194,1268],{"class":1267},[1261,2196,2197],{"class":1271},"/setfn-spacebuilder ip enable\n",[1261,2199,2200,2202],{"class":1263,"line":1275},[1261,2201,1268],{"class":1267},[1261,2203,2204],{"class":1271},"/setfn-spacebuilder ip disable\n",[1301,2206,2207],{},[1167,2208,2209,2211,2212,2214],{},[1171,2210,1640],{},"을 실행하기 전에 접속할 컴퓨터의 IP가 허용 목록에 있는지 ",[1171,2213,1631],{},"로 확인하세요. 목록에 없으면 관리자 페이지에 접속할 수 없습니다.",[1182,2216,2218],{"id":2217},"서버-설정-확인하기","서버 설정 확인하기",[1252,2220,2222],{"className":1254,"code":2221,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder port get\n~/setfn-spacebuilder homepath get\n~/setfn-spacebuilder lang get\n",[1171,2223,2224,2231,2238],{"__ignoreMap":1257},[1261,2225,2226,2228],{"class":1263,"line":1264},[1261,2227,1268],{"class":1267},[1261,2229,2230],{"class":1271},"/setfn-spacebuilder port get\n",[1261,2232,2233,2235],{"class":1263,"line":1275},[1261,2234,1268],{"class":1267},[1261,2236,2237],{"class":1271},"/setfn-spacebuilder homepath get\n",[1261,2239,2240,2242],{"class":1263,"line":2177},[1261,2241,1268],{"class":1267},[1261,2243,2244],{"class":1271},"/setfn-spacebuilder lang get\n",[1187,2246,2247,2254,2267],{},[1190,2248,2249,2250,2253],{},"터미널 메시지 언어는 ",[1171,2251,2252],{},"lang set ko","처럼 바로 바꿀 수 있습니다.",[1190,2255,2256,1396,2259,2262,2263,2266],{},[1171,2257,2258],{},"port set \u003C포트>",[1171,2260,2261],{},"homepath set \u003C경로>","는 값을 바꾸지 않고 설정 파일에 입력할 내용만 보여 줍니다. ",[1171,2264,2265],{},"port set","은 해당 포트를 사용할 수 있는지도 표시합니다. 설정 파일을 고친 뒤 서버를 다시 시작해야 적용됩니다.",[1190,2268,2269,2270,2273,2274,2277,2278,2025],{},"포트는 ",[1171,2271,2272],{},"3000","부터 ",[1171,2275,2276],{},"65535","까지 사용할 수 있습니다. 기본 포트는 ",[1171,2279,2280],{},"8510",[1182,2282,2284],{"id":2283},"setfn-계정의-기기-연결-복구하기","SetFN 계정의 기기 연결 복구하기",[1167,2286,2287,2288,1320,2290,2292],{},"이 명령은 SetFN 계정과 서버 기기의 연결을 관리합니다. 워크스페이스 사용자 계정의 로그인 차단이나 비밀번호는 앞의 ",[1171,2289,1207],{},[1171,2291,1211],{}," 명령으로 복구합니다.",[1167,2294,2295],{},"서버를 멈추고 운영 중인 서버와 같은 설정 경로를 사용해 연결을 시작합니다.",[1252,2297,2299],{"className":1254,"code":2298,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder login\n",[1171,2300,2301],{"__ignoreMap":1257},[1261,2302,2303,2305],{"class":1263,"line":1264},[1261,2304,1268],{"class":1267},[1261,2306,2307],{"class":1271},"/setfn-spacebuilder login\n",[1167,2309,2310],{},"터미널에 표시된 안내에 따라 브라우저에서 승인을 완료합니다. 이미 등록된 기기를 다시 연결하려면 다음 명령을 사용합니다.",[1252,2312,2314],{"className":1254,"code":2313,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder login --force\n",[1171,2315,2316],{"__ignoreMap":1257},[1261,2317,2318,2320],{"class":1263,"line":1264},[1261,2319,1268],{"class":1267},[1261,2321,2322],{"class":1271},"/setfn-spacebuilder login --force\n",[1167,2324,2325],{},"인증 정보가 만료되었거나 유효하지 않으면 기존 연결을 해제한 뒤 다시 등록합니다.",[1252,2327,2329],{"className":1254,"code":2328,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder logout\n~/setfn-spacebuilder login --force\n",[1171,2330,2331,2338],{"__ignoreMap":1257},[1261,2332,2333,2335],{"class":1263,"line":1264},[1261,2334,1268],{"class":1267},[1261,2336,2337],{"class":1271},"/setfn-spacebuilder logout\n",[1261,2339,2340,2342],{"class":1263,"line":1275},[1261,2341,1268],{"class":1267},[1261,2343,2322],{"class":1271},[1167,2345,2346,2348,2349,2352,2353,2356],{},[1171,2347,1223],{},"은 기본적으로 로컬 사이트 토큰, 기기 키, 인증 파일을 모두 정리합니다. ",[1171,2350,2351],{},"logout --unlink","도 같은 동작을 하는 호환용 옵션입니다. 기기 키와 인증 파일은 유지하고 사이트 세션 토큰만 정리하려면 ",[1171,2354,2355],{},"logout --keep-link","를 사용합니다.",[1167,2358,2359,2360,2364],{},"재연결이 끝나면 서버를 다시 시작하고 관리자 페이지에서 ",[1336,2361,2363],{"href":2362},"../admin/home/license","라이선스 등록 상태","를 확인합니다.",[1182,2366,2368],{"id":2367},"서버-상태와-로그인-세션-관리하기","서버 상태와 로그인 세션 관리하기",[1167,2370,2371],{},"서버 상태와 현재 설정을 확인합니다.",[1252,2373,2375],{"className":1254,"code":2374,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder admin status\n",[1171,2376,2377],{"__ignoreMap":1257},[1261,2378,2379,2381],{"class":1263,"line":1264},[1261,2380,1268],{"class":1267},[1261,2382,2383],{"class":1271},"/setfn-spacebuilder admin status\n",[1167,2385,2386],{},"계정 정보 유출이 의심되면 모든 사용자를 로그아웃시킵니다. 사용자는 다시 로그인해야 합니다.",[1252,2388,2390],{"className":1254,"code":2389,"language":1256,"meta":1257,"style":1257},"~/setfn-spacebuilder admin logout-all\n",[1171,2391,2392],{"__ignoreMap":1257},[1261,2393,2394,2396],{"class":1263,"line":1264},[1261,2395,1268],{"class":1267},[1261,2397,2398],{"class":1271},"/setfn-spacebuilder admin logout-all\n",[2120,2400,2401],{},[1167,2402,2403,2405],{},[1171,2404,1331],{},"는 서버 설정 파일을 삭제합니다. 다음에 서버를 시작하면 초기 설정을 처음부터 다시 해야 하므로, 설정이 손상되어 서버를 시작할 수 없을 때만 사용하세요.",[1167,2407,2408,2409,2412],{},"지식 저장소의 백업과 복원은 ",[1336,2410,225],{"href":2411},"../admin/knowledge/storage-operations","를 참고하세요.",[1182,2414,2415],{"id":2415},"알아두기",[1187,2417,2418,2436],{},[1190,2419,2420,2421,2424,2425,2428,2429,2432,2433,2356],{},"Linux는 프로세스 이름을 15자까지만 보관하므로 ",[1171,2422,2423],{},"ps -e","나 ",[1171,2426,2427],{},"top","에는 ",[1171,2430,2431],{},"setfn-spacebuil","로 표시됩니다. 실행 중인지 확인할 때는 ",[1171,2434,2435],{},"pgrep -f setfn-spacebuilder",[1190,2437,2438],{},"계정과 차단 관련 명령은 서버를 멈춰야 실행할 수 있습니다. 사용자 추가나 차단 관리는 가능하면 관리자 페이지에서 하세요.",[1182,2440,2442],{"id":2441},"관련-문서","관련 문서",[1187,2444,2445,2450,2455,2459,2463],{},[1190,2446,2447],{},[1336,2448,21],{"href":2449},"../getting-started/install-linux",[1190,2451,2452],{},[1336,2453,315],{"href":2454},"../admin/security/block-management",[1190,2456,2457],{},[1336,2458,335],{"href":1933},[1190,2460,2461],{},[1336,2462,225],{"href":2411},[1190,2464,2465],{},[1336,2466,1152],{"href":2467},"../FAQ/troubleshooting",[2469,2470,2471],"style",{},"html pre.shiki code .sC2Qs, html code.shiki .sC2Qs{--shiki-default:#D73A49;--shiki-dark:#F97583;--shiki-sepia:#F92672}html pre.shiki code .sMOD_, html code.shiki .sMOD_{--shiki-default:#24292E;--shiki-dark:#E1E4E8;--shiki-sepia:#F8F8F2}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html .sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html.sepia .shiki span {color: var(--shiki-sepia);background: var(--shiki-sepia-bg);font-style: var(--shiki-sepia-font-style);font-weight: var(--shiki-sepia-font-weight);text-decoration: var(--shiki-sepia-text-decoration);}html pre.shiki code .srTi1, html code.shiki .srTi1{--shiki-default:#6F42C1;--shiki-dark:#B392F0;--shiki-sepia:#A6E22E}html pre.shiki code .sstjo, html code.shiki .sstjo{--shiki-default:#032F62;--shiki-dark:#9ECBFF;--shiki-sepia:#E6DB74}",{"title":1257,"searchDepth":1275,"depth":2177,"links":2473},[2474,2479,2480,2488,2489,2490,2491,2492,2493],{"id":1184,"depth":1275,"text":1185,"children":2475},[2476,2477,2478],{"id":1228,"depth":2177,"text":1229},{"id":1312,"depth":2177,"text":1313},{"id":1390,"depth":2177,"text":1391},{"id":1440,"depth":1275,"text":1441},{"id":1757,"depth":1275,"text":1758,"children":2481},[2482,2483,2484,2485,2486,2487],{"id":1764,"depth":2177,"text":1765},{"id":1833,"depth":2177,"text":1834},{"id":1867,"depth":2177,"text":1868},{"id":1900,"depth":2177,"text":1901},{"id":1936,"depth":2177,"text":1937},{"id":2028,"depth":2177,"text":2029},{"id":2133,"depth":1275,"text":2134},{"id":2217,"depth":1275,"text":2218},{"id":2283,"depth":1275,"text":2284},{"id":2367,"depth":1275,"text":2368},{"id":2415,"depth":1275,"text":2415},{"id":2441,"depth":1275,"text":2442},"스페이스빌더가 설치된 컴퓨터의 터미널에서 계정 복구, 접속 제한 해제, 설정 확인을 하는 명령어를 안내합니다.","md",{},true,{"title":2499,"description":2500,"ogType":2501,"twitterCard":2502,"keywords":2503},"명령어로 서버 관리하기 | SetFN Docs","스페이스빌더 실행 파일의 관리 명령어로 계정을 복구하고 접속 제한과 서버 설정을 확인하는 방법을 안내합니다.","article","summary_large_image",[2504,2505,1173,2506,2507,330],"명령어","CLI","관리자 계정 복구","로그인 차단 해제","EVyS_OTQQCZPcGPgsm2ob-TbaiJ5MxmrI2sP_5R_WfQ",[2510,2511],{"title":1071,"path":1072,"stem":1073,"slug":1074,"children":-1},{"title":1091,"path":1092,"stem":1093,"slug":1094,"children":-1},{"title":1081,"filename":2513,"content":2514},"commands","# 명령어로 서버 관리하기\n\n스페이스빌더 실행 파일(`setfn-spacebuilder`)에는 서버 시작 기능 외에 터미널용 관리 명령이 들어 있습니다. 관리자 페이지에 로그인할 수 없을 때 계정과 접속 제한을 복구하거나, 포트와 언어 같은 설정을 확인할 때 사용합니다.\n\n이 문서는 서버를 설치하고 운영하는 관리자를 위한 문서입니다. 일반적인 관리는 관리자 페이지에서 하고, 관리자 페이지를 사용할 수 없을 때만 명령어를 사용하세요.\n\n---\n\n## 시작하기 전에\n\n- 스페이스빌더가 설치된 컴퓨터의 터미널에서 실행합니다.\n- 스페이스빌더를 실행하는 운영체제 사용자 계정으로 실행합니다. 기본 설정 경로는 그 사용자의 홈 폴더 아래에 있으며, 별도 경로를 사용한다면 운영 중인 서버와 같은 설정 파일을 지정해야 합니다.\n- 예시는 실행 파일이 홈 폴더(`~/setfn-spacebuilder`)에 있는 경우입니다. 다른 위치에 두었다면 해당 경로로 바꿔 입력합니다.\n- `user`, `unblock`, `ip`, `admin`, `login`, `logout`으로 시작하는 관리 명령은 서버를 멈춘 상태에서 실행합니다.\n\n### 운영 중인 서버의 설정 경로 지정하기\n\nLinux의 기본 설정 파일은 `~/.config/SetFN/config.yaml`입니다. 서비스를 다른 계정이나 별도 설정 경로로 실행한다면 서비스 실행 명령에 지정된 경로를 확인합니다.\n\n`-c` 또는 `--config`로 그 설정 파일을 지정합니다. 다음은 `/srv/setfn/config.yaml`로 운영하는 서버의 예시입니다. 실제 파일 경로로 바꿔 입력합니다.\n\n```bash\n~/setfn-spacebuilder -c /srv/setfn/config.yaml port get\n~/setfn-spacebuilder -c /srv/setfn/config.yaml user list\n```\n\n이 문서의 다른 관리 명령에도 같은 `-c` 옵션을 붙입니다. 서버를 `-H` 또는 `--home`으로 경로를 지정해 운영한다면 그 옵션도 똑같이 붙입니다. `-c`와 함께 지정하면 설정 파일은 `-c`로 지정한 파일을 사용합니다.\n\n::warning\n다른 설정 경로를 지정하면 복구할 서버와 다른 데이터를 열 수 있습니다. `Database file does not exist` 또는 신규 설치 안내가 나오면 진행을 멈추고 실행 계정과 설정 파일 경로부터 확인합니다.\n::\n\n### 서버를 멈추고 다시 켜기\n\n사용자·접속 제한·기기 연결을 관리하는 명령과 `admin status`·`admin logout-all` 등은 서버의 데이터베이스를 직접 엽니다. 다른 프로세스가 같은 데이터베이스를 사용 중이면 재시도 후 `Database is still locked` 메시지로 끝날 수 있습니다. `admin reset-config`는 데이터베이스를 열지 않고 설정 파일을 삭제하지만, 이 작업도 서버를 멈춘 뒤 수행합니다.\n\n[자동 시작](../00.getting-started/10.install-linux.md#컴퓨터를-켤-때-자동으로-시작하기)을 설정했다면 먼저 서버를 멈춥니다.\n\n```bash\nsudo systemctl stop setfn-spacebuilder\n```\n\n필요한 명령을 실행한 뒤 서버를 다시 켭니다.\n\n```bash\nsudo systemctl start setfn-spacebuilder\n```\n\n터미널에서 직접 실행 중이라면 그 터미널에서 `Ctrl+C`를 눌러 멈춥니다.\n\n### 콘솔 접근 비밀번호 정하기\n\n`user`와 `unblock` 명령은 실행할 때 `Console Access Password`를 묻습니다. 이 비밀번호는 환경 변수 `SETFN_CONSOLE_PASSWORD`에 정한 값입니다. 명령을 실행하기 전에 같은 터미널에서 값을 정합니다.\n\n```bash\nexport SETFN_CONSOLE_PASSWORD=\"직접 정한 비밀번호\"\n```\n\n이 값은 로컬 콘솔 명령의 접근을 확인하는 데만 씁니다. 워크스페이스 관리자 비밀번호나 SetFN 계정 비밀번호와는 관계가 없습니다. `Console Access Password`에는 이 터미널에서 지정한 값을 입력합니다.\n\n::warning\n환경 변수를 정하지 않으면 실행 파일에 들어 있는 기본 비밀번호가 사용되고 경고가 표시됩니다. 운영 중인 서버에서는 반드시 직접 정한 값을 사용하세요.\n::\n\n## 명령 한눈에 보기\n\n| 명령 | 하는 일 | 서버 중지 |\n| ---- | ------- | --------- |\n| `serv` | 서버를 시작합니다. 명령 없이 실행 파일만 실행해도 서버가 시작됩니다. | - |\n| `version` | 버전과 빌드 정보를 표시합니다. | 필요 없음 |\n| `lang get`, `lang set \u003C코드>`, `lang list` | 터미널 메시지 언어를 확인하거나 바꿉니다. `en`, `ko`, `ja`, `zh`를 지원합니다. | 필요 없음 |\n| `port get` | 현재 서버 포트와 사용 여부를 확인합니다. | 필요 없음 |\n| `homepath get` | 데이터를 저장하는 홈 경로를 확인합니다. | 필요 없음 |\n| `user list` | 사용자 계정 목록을 표시합니다. | 필요 |\n| `user add`, `user delete` | 사용자 계정을 추가하거나 삭제합니다. | 필요 |\n| `user password` | 사용자의 비밀번호를 바꿉니다. | 필요 |\n| `user promote` | 사용자의 역할을 바꿉니다. | 필요 |\n| `user mfa reset` | 관리자 계정의 2단계 인증을 끕니다(비상 복구). | 필요 |\n| `unblock` | 로그인 차단을 응급 복구합니다. `user unblock`과 같습니다. | 필요 |\n| `ip status`, `ip add`, `ip remove`, `ip enable`, `ip disable` | IP 접근 제한과 허용 목록을 관리합니다. | 필요 |\n| `admin status`, `admin status-json` | 서버 상태와 설정을 확인합니다. `status-json`은 상태 정보를 JSON 형식으로 표시합니다. | 필요 |\n| `admin logout-all` | 모든 사용자를 로그아웃시킵니다. | 필요 |\n| `admin reset-config` | 설정 파일을 삭제해 초기 설정을 다시 시작합니다. | 필요 |\n| `admin knowledge-backup`, `admin knowledge-restore` | 지식 저장소를 백업하거나 복원합니다. | 필요 |\n| `admin vector-instance-id`, `admin prepare-clone` | 복사한 서버를 별도 인스턴스로 운영할 수 있게 준비합니다. [서버 이전하기](../10.admin/60.system-admin/20.server-migration.md)를 참고합니다. | 필요 |\n| `login`, `logout` | 터미널에서 SetFN 계정에 이 기기를 등록하거나 등록을 해제합니다. | 필요 |\n\n각 명령의 자세한 옵션은 명령 뒤에 `--help`를 붙여 확인합니다.\n\n```bash\n~/setfn-spacebuilder user --help\n```\n\n## 로그인할 수 없을 때 복구하기\n\n아래 명령은 모두 서버를 멈추고 콘솔 접근 비밀번호를 정한 뒤 실행합니다.\n\n### 로그인 차단 풀기\n\n로그인 실패가 반복되어 관리자 접속이 차단되었다면 접속할 컴퓨터의 IP를 보안 화이트리스트에 추가합니다.\n\n```bash\n~/setfn-spacebuilder unblock --ip 203.0.113.10\n```\n\n현재 복구 상태는 다음 명령으로 확인합니다.\n\n```bash\n~/setfn-spacebuilder unblock --status\n```\n\nIP를 추가해도 접속할 수 없다면 로그인 보안 기능을 잠시 끕니다.\n\n```bash\n~/setfn-spacebuilder unblock --all\n```\n\n::warning\n`--all`로 끈 로그인 보안 기능은 다시 켤 때까지 꺼진 상태로 유지됩니다. 관리자 페이지에서 원인을 해결한 뒤 반드시 다음 명령으로 다시 켜세요.\n::\n\n```bash\n~/setfn-spacebuilder unblock --enable-security\n```\n\n### 대상 사용자 계정 확인하기\n\n비밀번호와 역할을 바꾸려면 워크스페이스에 등록된 계정의 로그인 사용자 이름이 필요합니다. 다음 명령으로 사용자 목록을 확인합니다.\n\n```bash\n~/setfn-spacebuilder user list\n```\n\n아래 예시의 `\u003C사용자 계정>`을 꺾쇠괄호까지 포함해 목록의 `Username` 열에 있는 로그인 사용자 이름으로 바꿉니다. `Nick` 열은 화면에 표시되는 이름입니다.\n\n### 관리자 비밀번호 바꾸기\n\n```bash\n~/setfn-spacebuilder user password -u \"\u003C사용자 계정>\" --password \"새 비밀번호\"\n```\n\n입력한 명령은 터미널 기록에 남으므로, 로그인한 뒤 관리자 페이지에서 비밀번호를 한 번 더 바꾸는 것을 권장합니다. 새 비밀번호는 서버의 [비밀번호 규칙](../10.admin/10.user-management/32.account-security.md#비밀번호-규칙-설정하기)을 따르며, 흔히 쓰이거나 유출된 비밀번호는 거절됩니다. 새로 설치한 서버의 기본 규칙은 12자 이상입니다.\n\n### 관리자 2단계 인증 끄기\n\n관리자가 인증 앱과 복구 코드를 모두 잃어 로그인할 수 없고, 관리자 페이지에서 초기화해 줄 다른 최고관리자도 없을 때 사용합니다.\n\n```bash\n~/setfn-spacebuilder user mfa reset \"\u003C사용자 계정>\"\n```\n\n그 계정의 인증 앱 등록과 복구 코드가 지워지고 로그인 중이던 세션이 모두 끝납니다. 다음 로그인은 비밀번호만으로 하며, `관리자 2단계 인증 필수` 정책이 켜져 있으면 로그인 뒤 다시 등록해야 합니다. 실행 기록은 감사 로그에 `2단계 인증 초기화`로 남습니다. 2단계 인증을 쓰지 않는 계정에 실행하면 바뀌는 것 없이 안내만 표시됩니다. 등록 절차는 [관리자 2단계 인증 설정하기](../10.admin/50.security/18.two-factor-auth.md)를 참고합니다.\n\n### 관리자 권한 되찾기\n\n관리자 권한이 있는 계정이 없다면 기존 사용자의 역할을 바꿉니다.\n\n```bash\n~/setfn-spacebuilder user promote -u \"\u003C사용자 계정>\" -r admin\n```\n\n`-r admin`의 `admin`은 부여할 역할 값이며, `admin status`처럼 명령 이름에 쓰는 `admin`과는 다릅니다.\n\n| 옵션 | 설명 |\n| ---- | ---- |\n| `-u`, `--username` | 역할을 바꿀 기존 계정의 로그인 사용자 이름(`Username`)입니다. |\n| `-r`, `--role` | `superuser`, `admin`, `user` 가운데 하나입니다. 입력하지 않으면 `superuser`입니다. |\n\n### 사용자 계정 추가하고 삭제하기\n\n```bash\n~/setfn-spacebuilder user add -u newadmin -n \"새 관리자\" --admin\n```\n\n| 옵션 | 설명 |\n| ---- | ---- |\n| `-u`, `--username` | 로그인에 사용할 사용자 이름입니다. |\n| `-n`, `--nickname` | 화면에 표시할 이름입니다. |\n| `--password` | 비밀번호입니다. 입력하지 않으면 자동으로 만든 비밀번호가 화면에 표시됩니다. |\n| `--admin` | 관리자로 추가합니다. |\n\n계정을 삭제할 때는 사용자 이름을 지정합니다. 마지막 관리자는 삭제할 수 없습니다.\n\n```bash\n~/setfn-spacebuilder user delete -u olduser\n```\n\n::danger\n`user delete`에 `--delete-home`을 함께 쓰면 그 사용자의 홈 폴더와 안의 파일도 삭제됩니다. 삭제한 파일은 이 명령으로 되돌릴 수 없습니다.\n::\n\n## IP 접근 제한 관리하기\n\nIP 접근 제한을 켜면 허용 목록에 있는 IP에서만 관리자 페이지에 접속할 수 있습니다. 허용 목록을 잘못 설정해 관리자 페이지에 접속할 수 없을 때 명령어로 고칩니다.\n\n현재 상태와 허용 목록을 확인합니다.\n\n```bash\n~/setfn-spacebuilder ip status\n```\n\n허용 목록에 IP 주소나 CIDR 범위를 추가하거나 제거합니다.\n\n```bash\n~/setfn-spacebuilder ip add --ip 192.168.1.100\n~/setfn-spacebuilder ip add --ip 192.168.1.0/24\n~/setfn-spacebuilder ip remove --ip 192.168.1.100\n```\n\n접근 제한을 켜거나 끕니다.\n\n```bash\n~/setfn-spacebuilder ip enable\n~/setfn-spacebuilder ip disable\n```\n\n::warning\n`ip enable`을 실행하기 전에 접속할 컴퓨터의 IP가 허용 목록에 있는지 `ip status`로 확인하세요. 목록에 없으면 관리자 페이지에 접속할 수 없습니다.\n::\n\n## 서버 설정 확인하기\n\n```bash\n~/setfn-spacebuilder port get\n~/setfn-spacebuilder homepath get\n~/setfn-spacebuilder lang get\n```\n\n- 터미널 메시지 언어는 `lang set ko`처럼 바로 바꿀 수 있습니다.\n- `port set \u003C포트>`와 `homepath set \u003C경로>`는 값을 바꾸지 않고 설정 파일에 입력할 내용만 보여 줍니다. `port set`은 해당 포트를 사용할 수 있는지도 표시합니다. 설정 파일을 고친 뒤 서버를 다시 시작해야 적용됩니다.\n- 포트는 `3000`부터 `65535`까지 사용할 수 있습니다. 기본 포트는 `8510`입니다.\n\n## SetFN 계정의 기기 연결 복구하기\n\n이 명령은 SetFN 계정과 서버 기기의 연결을 관리합니다. 워크스페이스 사용자 계정의 로그인 차단이나 비밀번호는 앞의 `user`·`unblock` 명령으로 복구합니다.\n\n서버를 멈추고 운영 중인 서버와 같은 설정 경로를 사용해 연결을 시작합니다.\n\n```bash\n~/setfn-spacebuilder login\n```\n\n터미널에 표시된 안내에 따라 브라우저에서 승인을 완료합니다. 이미 등록된 기기를 다시 연결하려면 다음 명령을 사용합니다.\n\n```bash\n~/setfn-spacebuilder login --force\n```\n\n인증 정보가 만료되었거나 유효하지 않으면 기존 연결을 해제한 뒤 다시 등록합니다.\n\n```bash\n~/setfn-spacebuilder logout\n~/setfn-spacebuilder login --force\n```\n\n`logout`은 기본적으로 로컬 사이트 토큰, 기기 키, 인증 파일을 모두 정리합니다. `logout --unlink`도 같은 동작을 하는 호환용 옵션입니다. 기기 키와 인증 파일은 유지하고 사이트 세션 토큰만 정리하려면 `logout --keep-link`를 사용합니다.\n\n재연결이 끝나면 서버를 다시 시작하고 관리자 페이지에서 [라이선스 등록 상태](../10.admin/00.home/20.license.md)를 확인합니다.\n\n## 서버 상태와 로그인 세션 관리하기\n\n서버 상태와 현재 설정을 확인합니다.\n\n```bash\n~/setfn-spacebuilder admin status\n```\n\n계정 정보 유출이 의심되면 모든 사용자를 로그아웃시킵니다. 사용자는 다시 로그인해야 합니다.\n\n```bash\n~/setfn-spacebuilder admin logout-all\n```\n\n::danger\n`admin reset-config`는 서버 설정 파일을 삭제합니다. 다음에 서버를 시작하면 초기 설정을 처음부터 다시 해야 하므로, 설정이 손상되어 서버를 시작할 수 없을 때만 사용하세요.\n::\n\n지식 저장소의 백업과 복원은 [지식 저장소 운영하기](../10.admin/30.knowledge/32.storage-operations.md)를 참고하세요.\n\n## 알아두기\n\n- Linux는 프로세스 이름을 15자까지만 보관하므로 `ps -e`나 `top`에는 `setfn-spacebuil`로 표시됩니다. 실행 중인지 확인할 때는 `pgrep -f setfn-spacebuilder`를 사용합니다.\n- 계정과 차단 관련 명령은 서버를 멈춰야 실행할 수 있습니다. 사용자 추가나 차단 관리는 가능하면 관리자 페이지에서 하세요.\n\n## 관련 문서\n\n- [Linux에 설치하기](../00.getting-started/10.install-linux.md)\n- [차단 관리](../10.admin/50.security/10.block-management.md)\n- [관리자 2단계 인증 설정하기](../10.admin/50.security/18.two-factor-auth.md)\n- [지식 저장소 운영하기](../10.admin/30.knowledge/32.storage-operations.md)\n- [문제 해결 가이드](../99.FAQ/70.troubleshooting.md)\n",1793056620320]