- 발표자료(좌표투영·측점기반재생) 갱신 + 그림/PDF - 특허 출원 초안 및 도면 - AI 영상요약 서비스 작업기록(docs/history) - 관련 scripts 추가 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
45 lines
2.4 KiB
Markdown
45 lines
2.4 KiB
Markdown
# AI Video Brief — 컴퓨터 켤 때 자동 시작 설정
|
|
|
|
**소요 시간**: 15분
|
|
**Context 사용량**: input 1100k / output 90k tokens (추정값)
|
|
|
|
## 요청 내용
|
|
|
|
컴퓨터를 켜면 자동으로 서비스가 구동되게.
|
|
|
|
## 환경 확인
|
|
|
|
- WSL 배포판: **Ubuntu-22.04** (`$WSL_DISTRO_NAME`)
|
|
- Windows 활성 사용자: **User** (시작폴더 `C:\Users\User\...\Startup`)
|
|
- 에이전트가 sudo 불가 → 무권한 방식(시작프로그램 폴더 + VBS) 채택
|
|
|
|
## 구현 내용 (`ai_video_brief`)
|
|
|
|
### `start-service.sh` (신규)
|
|
- Ollama·uvicorn(55100)을 켠다. 이미 켜져 있으면 건드리지 않음(idempotent).
|
|
- **핵심: `setsid`로 프로세스를 새 세션으로 완전 독립**시킴.
|
|
- 처음엔 `nohup ... &`만 썼더니 wsl.exe 명령이 끝날 때 uvicorn이 함께 종료됨(로그도 비어 있음).
|
|
- `setsid bash -c "exec ... > log 2>&1" &` 로 바꾸니 wsl 세션 종료 후에도 서버 생존.
|
|
- 뜰 때까지 짧게 대기 루프(부팅 시 프로세스 안착 보장).
|
|
|
|
### Windows 시작프로그램 (신규)
|
|
- `C:\Users\User\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\AI-Video-Brief.vbs`
|
|
- 내용: `WScript.Shell.Run "wsl.exe -d Ubuntu-22.04 -u hanmac bash -lc ""...start-service.sh""", 0, False`
|
|
- 창 숨김(0), 비대기(False) → 로그인 시 조용히 실행
|
|
|
|
### README
|
|
- "컴퓨터 켤 때 자동 시작" 절 추가 (동작·확인·해제 방법, 폰 접속은 별도 안내)
|
|
|
|
## 테스트 결과
|
|
|
|
- ✅ start-service.sh 직접 실행 → Ollama·웹서버 둘 다 ON
|
|
- ✅ wsl.exe 경유 실행 후 세션 종료 → setsid 덕분에 두 서비스 생존 확인 (uvicorn PID 유지)
|
|
- ✅ 실제 경로(VBS를 cscript로 실행) → 3초 내 둘 다 ON
|
|
- (참고: PowerShell Start-Process로 VBS 경로에 공백이 있어 테스트가 한 번 실패했으나, Windows 시작폴더 자체 실행은 경로를 정상 처리하므로 실사용은 문제없음)
|
|
|
|
## 다음 에이전트 참고
|
|
|
|
- **자동시작은 WSL 안의 서비스만** 켬. 폰(LAN) 접속용 포트포워딩(netsh)은 관리자 권한이라 자동화 제외 — 재부팅 후 `포트열기.ps1` 수동 실행 필요.
|
|
- 로그인(user logon) 트리거임 — 로그인 전 부팅 단계에서는 안 뜸(일반적 "컴퓨터 켜면"에는 부합).
|
|
- setsid 없이 nohup만으로는 wsl.exe 호출 종료 시 백그라운드 프로세스가 죽는다 (WSL 특성). 반드시 setsid.
|