macOS brew 활용법 2부: 백그라운드 서비스는 brew services로 관리!

안녕하세요 여러분! 이전 글에선 macOS에서 brew를 사용해서 커맨드라인 도구와 GUI 앱을 얼마나 쉽고 편하게 설치하고 관리할 수 있는지 알아보는 시간을 가졌었죠? 😊 오늘은 그 마지막 이야기로, brew의 또 다른 강력한 기능인 ‘brew services‘에 대해 알려드릴 거예요! 우리가 컴퓨터를 사용할 때 눈에 보이지 않지만 뒤에서 열심히 일하고 있는 프로그램들이 있는데요, 이런 백그라운드에서 실행되는 ‘서비스’들을 brew services를 사용하면 아주 손쉽게 시작하고, 멈추고, 재시작하고, 심지어 컴퓨터를 켤 때마다 자동으로 실행되도록 설정까지 할 수 있답니다! 웹 서버, 데이터베이스 등 다양한 서비스 관리를 brew services로 마스터해봐요! ✨


brew services는 무엇일까요? 왜 필요할까요?

컴퓨터에서 ‘서비스‘ 또는 ‘데몬(Daemon)‘이라고 불리는 것들은 보통 사용자 인터페이스(GUI) 없이 백그라운드에서 실행되면서 특정 기능을 제공하는 프로그램들을 말해요. 예를 들어, 웹 페이지를 보여주는 웹 서버(nginx, Apache 등), 데이터를 저장하고 관리하는 데이터베이스 서버(MySQL, PostgreSQL, Redis 등), 또는 특정 작업을 주기적으로 수행하는 스케줄러 등이 서비스에 해당된답니다.

이런 서비스들은 개발 환경을 구축하거나 특정 프로그램을 실행할 때 꼭 필요한 경우가 많아요. 그런데 이런 서비스들을 직접 설치하고 실행하고 관리하는 것은 생각보다 복잡하고 어렵답니다. 설정 파일을 직접 수정해야 하거나, 터미널에서 복잡한 명령어를 입력해야 하는 경우가 많죠. 😥

여기서 brew services의 역할이 중요해져요! brew services는 brew로 설치된 다양한 서비스들을 표준화된 명령어로 관리할 수 있게 해주는 도구랍니다. 복잡한 설정이나 명령어를 몰라도, brew services만 알면 어떤 서비스든 쉽게 다룰 수 있게 돼요. 마치 마법 지휘봉으로 오케스트라를 지휘하듯이 말이죠! 😉

특히 개발자들이 여러 프로젝트를 진행하거나 다양한 개발 환경을 사용해야 할 때, brew services는 필수적이에요. 필요한 서비스를 켰다가, 다른 작업을 위해 끄거나 재시작하는 과정을 brew services 하나로 통일할 수 있기 때문이죠. 덕분에 개발 환경 설정 및 관리가 훨씬 빠르고 효율적으로 변한답니다! 👍


brew services 기본 사용법: 시작, 중지, 재시작!

brew services의 사용법은 정말 직관적이고 간단해요! brew로 설치된 서비스들을 다루는 몇 가지 기본적인 명령어만 알면 금방 익숙해질 수 있답니다. 😊

먼저, 현재 brew services로 관리할 수 있는 서비스 목록과 상태를 확인해 볼까요? 터미널에 brew services list 명령어를 입력하면 된답니다.

brew services list

이 명령어를 실행하면 설치된 서비스 목록과 함께 각 서비스의 상태(status), 사용자(user), 파일 경로(file) 정보가 나타나요. ‘status’ 항목을 보면 해당 서비스가 실행 중인지(started), 멈춰있는지(stopped), 아니면 다른 상태인지 파악할 수 있답니다.

이제 특정 서비스를 실행해 볼까요? 예를 들어, brew로 설치한 nginx 웹 서버를 시작하고 싶다면 brew services start nginx 명령어를 사용하면 된답니다.

brew services start nginx

이 명령어를 실행하면 nginx 서비스가 백그라운드에서 시작되고, 컴퓨터를 재시작해도 자동으로 실행되도록 설정돼요. 만약 컴퓨터를 켤 때 자동으로 실행되게 하고 싶지 않다면 brew services run nginx 명령어를 사용하면 됩니다. `run`은 현재 터미널 세션에서만 서비스를 실행하고, 터미널을 닫거나 컴퓨터를 끄면 서비스도 함께 종료돼요.

brew services run nginx # 현재 터미널에서만 실행 (자동 시작 설정 안 함)
brew services start nginx # 백그라운드에서 실행 (자동 시작 설정 함)

실행 중인 서비스를 멈추고 싶을 때는 brew services stop [서비스 이름] 명령어를 사용해요. nginx를 멈추고 싶다면 이렇게 입력하면 되겠죠?

brew services stop nginx

서비스에 설정을 변경했거나 문제가 발생해서 다시 시작해야 할 때는 brew services restart [서비스 이름] 명령어가 유용해요. 멈췄다가 다시 시작하는 과정을 한 번에 해준답니다.

brew services restart nginx

정말 간단하죠? 시작, 멈춤, 재시작! 이 세 가지 명령어만 잘 알아도 대부분의 서비스 관리를 할 수 있답니다. 😊


brew services 활용 팁과 주의사항

brew services는 정말 편리하지만, 몇 가지 알아두면 좋은 활용 팁과 주의사항이 있어요. 😊

brew services로 시작된 서비스는 대부분 `/usr/local/etc/` 또는 `/opt/homebrew/etc/` 같은 경로에 설정 파일을 가지고 있어요. 서비스의 동작 방식을 바꾸고 싶다면 이 경로에 있는 설정 파일을 수정해야 한답니다. 설정 파일을 수정한 후에는 brew services restart [서비스 이름] 명령어를 사용해서 변경 사항을 적용해주는 것을 잊지 마세요!

가끔 서비스를 시작하거나 재시작할 때 오류가 발생하거나, 서비스 상태가 ‘error’로 표시될 때가 있어요. 이럴 때는 당황하지 마세요! 대부분 설정 파일 오류나 포트 충돌 같은 문제일 가능성이 높답니다. 서비스가 남기는 로그 파일을 확인해보면 원인을 파악하는 데 도움이 될 거예요. 로그 파일 경로는 서비스마다 다를 수 있지만, 보통 `/usr/local/var/log/` 또는 `/opt/homebrew/var/log/` 아래에 서비스 이름으로 된 폴더에 위치하는 경우가 많답니다.

그리고 한 가지 더! brew services start로 시작된 서비스는 컴퓨터를 재시작해도 자동으로 실행된다고 했잖아요? 만약 더 이상 해당 서비스가 컴퓨터 시작 시 자동으로 실행되는 것을 원치 않는다면, 서비스를 멈추면(brew services stop [서비스 이름]) 된답니다. stop으로 서비스를 멈추면 자동 실행 설정도 함께 해제되지요! 다시 시스템과 함께 자동 실행되게 하려면 start 명령으로 시작시키면 되지요.😉 자동 시작 설정은 추가하지 않고,, 서비스 실행만 하는 brew services run 명령은 앞에서 함께 알려드렸죠? 😉 거기에 덧붙여서, brew services cleanup 명령은 더 이상 사용하지 않는 서비스 파일을 정리해줘요!

마지막으로, brew services는 brew로 설치된 서비스들만 관리할 수 있어요. brew 없이 수동으로 설치했거나 다른 방법으로 설치한 서비스는 brew services 명령어로 제어할 수 없으니 이 점 참고해주세요! 😉


오늘은 macOS의 백그라운드 서비스들을 쉽고 편리하게 관리할 수 있는 brew services에 대해 자세히 알아보았습니다! 복잡했던 서비스 관리도 brew services와 함께라면 시작, 중지, 재시작 명령어로 간단하게 해결할 수 있다는 것을 배우셨을 거예요. 특히 개발 환경을 자주 다루는 분들께는 정말 유용한 기능이니 꼭 활용해보시길 바랍니다. 이제 여러분은 brew services를 사용해서 눈에 보이지 않는 서비스들까지도 효율적으로 관리하실 수 있을 거예요! 😊 

brew 시리즈 1부 brew cask에 이어서 2부 brew services까지, macOS에서 brew를 활용하는 다양한 방법을 함께 알아보았는데요! brew는 맥 사용을 훨씬 편리하고 강력하게 만들어주는 최고의 도구인 것 같아요. 다음에는 또 어떤 재미있고 유용한 이야기로 돌아올지 기대해주세요! 그럼 다음에 또 만나요! 안녕~! 👋

“macOS brew 활용법 2부: 백그라운드 서비스는 brew services로 관리!”에 대한 2개의 생각

댓글 남기기