Files
nanoclaw/MACOS-ALWAYS-ON.md
woozu-shin c83b766c32
Some checks failed
Sync upstream & merge-forward skill branches / sync-and-merge (push) Has been cancelled
Merge-forward skill branches / merge-forward (push) Has been cancelled
add hint
2026-03-24 01:57:14 +09:00

100 lines
2.3 KiB
Markdown

# 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'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.caffeinate</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/caffeinate</string>
<string>-s</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
</dict>
</plist>
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)