diff --git a/MACOS-ALWAYS-ON.md b/MACOS-ALWAYS-ON.md new file mode 100644 index 0000000..106402f --- /dev/null +++ b/MACOS-ALWAYS-ON.md @@ -0,0 +1,99 @@ +# macOS Always-On Setup + +맥 미니 등에서 NanoClaw를 24/7 운영할 때 필요한 설정. + +## 문제 + +macOS는 잠금/유휴 시 슬립 모드에 진입하여 NanoClaw, Docker 등 백그라운드 프로세스가 멈춤. + +## 서비스 상태 확인 + +```bash +# NanoClaw 실행 여부 (PID가 숫자면 실행 중, -면 중지) +launchctl list | grep nanoclaw + +# 로그 실시간 확인 +tail -f logs/nanoclaw.log +``` + +## 슬립 방지 + +### 방법 1 — caffeinate (임시) + +```bash +caffeinate -s & +``` + +디스플레이는 꺼지지만 시스템은 깨어 있음. 터미널/세션 종료 시 해제. + +영구적으로 유지하려면 launchd에 등록: + +```bash +cat > ~/Library/LaunchAgents/com.caffeinate.plist << 'EOF' + + + + + Label + com.caffeinate + ProgramArguments + + /usr/bin/caffeinate + -s + + RunAtLoad + + KeepAlive + + + +EOF +launchctl load ~/Library/LaunchAgents/com.caffeinate.plist +``` + +### 방법 2 — pmset (영구, 권장) + +```bash +# 시스템 슬립 비활성화 +sudo pmset -a sleep 0 +sudo pmset -a disksleep 0 + +# 디스플레이만 끄기 (10분 후) +sudo pmset -a displaysleep 10 + +# 네트워크 접근으로 깨우기 (Wake on LAN) +sudo pmset -a womp 1 +``` + +설정 확인: + +```bash +pmset -g +``` + +### 방법 3 — 시스템 설정 GUI + +시스템 설정 > 에너지 절약 (또는 배터리) > "디스플레이가 꺼져 있을 때 자동으로 잠자기 방지" 활성화. + +## 자동 로그인 (헤드리스 운영) + +맥 미니를 재부팅해도 자동으로 로그인되도록: + +시스템 설정 > 사용자 및 그룹 > 자동 로그인 > 계정 선택 + +## Docker Desktop 자동 시작 + +시스템 설정 > 일반 > 로그인 항목 > Docker 추가 + +또는: + +```bash +osascript -e 'tell application "System Events" to make login item at end with properties {path:"/Applications/Docker.app", hidden:true}' +``` + +## 전체 부팅 순서 + +1. macOS 자동 로그인 +2. Docker Desktop 자동 시작 (로그인 항목) +3. caffeinate 슬립 방지 (launchd) +4. NanoClaw 서비스 시작 (launchd: com.nanoclaw.plist)