헤르메스 게이트웨이 명령 대조표 (macOS · Linux)
강의 영상에는 리눅스 서버에서 게이트웨이를 다루는 장면이 섞여 있습니다.
그 장면에 나오는 systemctl은 리눅스 전용 명령이라서, 맥에서 그대로 입력하면 "command not found"가 나옵니다.
맥이 잘못된 게 아니라 운영체제가 다른 것이니, 아래 대조표에서 본인 환경에 맞는 명령을 찾아 쓰시면 됩니다.
💡 가장 쉬운 길은 운영체제와 상관없이 동작하는
hermes gateway명령을 쓰는 것입니다. 맥에서는 이 명령만 기억하시면 됩니다.
한눈에 보는 대조표
| 하고 싶은 일 | 공통 (맥 권장) | 리눅스 서버 (강의 화면) |
|---|---|---|
| 게이트웨이 시작 | hermes gateway start | sudo systemctl start hermes-gateway |
| 게이트웨이 중지 | hermes gateway stop | sudo systemctl stop hermes-gateway |
| 게이트웨이 재시작 | hermes gateway restart | sudo systemctl restart hermes-gateway |
| 상태 확인 | hermes gateway status | sudo systemctl status hermes-gateway |
| 연결된 게이트웨이 목록 | hermes gateway list | hermes gateway list |
| 화면에 띄워 놓고 테스트 | hermes gateway run (Ctrl+C로 종료) | hermes gateway run |
| 로그 확인 | tail -n 20 ~/.hermes/logs/gateway.log | tail -n 20 ~/.hermes/logs/gateway.log |
⚠️ 강의 화면의
sudo systemctl ...은 리눅스 교육 서버 기준입니다. 맥에는 systemctl이라는 프로그램 자체가 없습니다.
맥에서 자주 만나는 메시지 풀이
"sudo: systemctl: command not found"
리눅스 전용 명령을 맥에서 입력했을 때 나오는 메시지입니다. 고장이 아닙니다. 같은 일을 하는 맥 명령은 위 대조표의 "공통" 칸에 있습니다.
"launchd cannot manage the gateway on this macOS version"
맥 운영체제 버전에 따라 자동 시작 등록이 안 될 때 나오는 안내입니다. 이때 헤르메스는 스스로 일반 백그라운드 실행으로 전환합니다. 바로 아래에 "Started gateway as a background process instead"가 함께 떴다면 게이트웨이는 정상으로 돌고 있는 것입니다.
다만 이 방식은 맥을 재부팅해도 자동으로 다시 켜지지 않습니다.
재부팅한 뒤에는 hermes gateway restart를 한 번 실행해 주세요.
잘 되고 있는지 확인하는 법
터미널이 조용하다고 멈춘 게 아닙니다. 게이트웨이는 백그라운드에서 돌기 때문에, 확인은 로그와 메신저에서 합니다.
tail -n 20 ~/.hermes/logs/gateway.log를 실행합니다.- 로그에 다음 줄이 보이면 성공입니다.
telegram connected또는slack connectedGateway running with N platform(s)
- 마지막으로 텔레그램이나 슬랙에서 봇에게 메시지를 보내 응답을 확인합니다.
📸 위 세 줄이 보이는데 봇이 응답하지 않으면, 메시지를 보낸 채널과 게이트웨이가 연결된 채널이 같은지부터 확인해 주세요.
프로필을 쓰고 있다면
게이트웨이는 프로필 단위로 동작합니다. sophie 같은 별도 프로필을 만들어 쓰는 단계라면, 모든 게이트웨이 명령 앞에 프로필 지정을 붙입니다.
hermes -p sophie gateway restart
hermes -p sophie gateway status
프로필 없이 기본 상태로 쓰고 있다면 그냥 hermes gateway ...로 충분합니다.
진행하시다가 막히는 부분이 생기면 언제든 인프런 질문 게시판에 화면 캡처와 함께 질문 남겨주세요. 다른 수강생분들도 함께 참고할 수 있어 더 좋습니다.
