맥 개발자 필수! Homebrew로 생산성 도구 한 번에 설치하기
Homebrew는 Mac 개발자에게 필수적인 패키지 관리자로, CLI 도구와 GUI 앱을 쉽고 빠르게 설치하고 관리할 수 있게 해줍니다. 이 글에서는 Homebrew 설치부터 필수 도구 설치, Brewfile
을 이용한 환경 공유, 그리고 패키지 관리 팁까지, 효율적인 개발 환경 구축을 위한 모든 방법을 다룹니다.
배경
새로운 Mac을 설정하거나 기존 환경을 업데이트할 때마다 개발에 필요한 수많은 도구(Node.js, Git, Python, VS Code 등)를 일일이 다운로드하고 설치하는 과정은 번거롭고 시간이 많이 소요됩니다. 버전 충돌이나 관리의 어려움도 따르죠. Homebrew는 이러한 문제점을 해결해주는 Mac용 '없어서는 안 될' 패키지 관리자입니다. 터미널 명령 한 줄로 원하는 소프트웨어를 설치하고, 쉽게 업데이트하며, 필요 없을 땐 깔끔하게 삭제할 수 있게 해줍니다. 효율적인 개발 환경을 구축하고 싶다면 Homebrew는 선택이 아닌 필수입니다.
사전준비
- macOS 운영체제: Mac이 필요합니다.
- 인터넷 연결: Homebrew 및 패키지를 다운로드하는 데 필요합니다.
- Xcode Command Line Tools: Homebrew 설치 전에 반드시 설치해야 합니다. 터미널에 다음 명령어를 입력하여 설치합니다.
xcode-select --install
(이미 설치되어 있다면 "command line tools are already installed" 메시지가 나옵니다.)
단계
1. Homebrew란 무엇이며 왜 필요한가?
Homebrew는 macOS(그리고 Linux)용 무료 오픈소스 패키지 관리 시스템입니다. 애플이 제공하지 않는 다양한 소프트웨어를 쉽게 설치하고 관리할 수 있도록 도와줍니다. 흔히 'Mac용 빠르고 쉬운 패키지 관리자'라고 불리며, CLI 도구(Node.js, Git, Python 등)뿐만 아니라 Cask를 통해 GUI 애플리케이션(VS Code, Chrome 등)까지 관리할 수 있습니다. 수동 설치의 번거로움과 종속성 문제 해결에 탁월한 도구입니다.
2. Homebrew 설치 및 초기 설정
터미널을 열고 다음 명령어를 입력하여 Homebrew를 설치합니다. 이 스크립트는 Homebrew의 공식 웹사이트에서 제공하는 것입니다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
설치 과정에서 비밀번호를 입력해야 할 수 있으며, 몇 분 정도 소요될 수 있습니다. 설치가 완료되면 Homebrew가 PATH에 추가되었는지 확인하고, 시스템 환경 설정 스크립트를 실행하라는 메시지가 나타날 수 있습니다. 메시지에 따라 다음 명령어를 실행합니다.
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
(Intel Mac의 경우 ~/.zshrc
또는 ~/.bash_profile
에 /usr/local/bin
경로를 추가하라는 메시지가 나올 수 있습니다. arm64
칩(Apple Silicon) Mac은 /opt/homebrew/bin
을 사용합니다.)
설치가 정상적으로 되었는지 확인하려면 다음 명령어를 입력합니다.
brew doctor
"Your system is ready to brew." 메시지가 나오면 성공입니다.
3. 필수 CLI 도구 설치 (brew install 명령어 활용)
Homebrew를 사용하여 원하는 CLI 도구를 쉽게 설치할 수 있습니다. 몇 가지 필수 도구를 예시로 들어보겠습니다.
- Git 설치:
brew install git
- Node.js 설치 (LTS 버전):
brew install node
- Python 3 설치:
brew install python
- 다른 유용한 도구들:
brew install zsh # Zsh 쉘 brew install tree # 디렉토리 구조 시각화 도구 brew install htop # 인터랙티브 프로세스 뷰어
설치 후
git --version
,node -v
,python3 --version
등으로 설치를 확인할 수 있습니다.
4. Homebrew Cask로 GUI 앱 설치 (예: VS Code, Chrome)
Homebrew Cask는 GUI 애플리케이션을 Homebrew를 통해 관리할 수 있게 해줍니다. 'brew install' 대신 'brew install --cask'를 사용합니다.
- Visual Studio Code 설치:
brew install --cask visual-studio-code
- Google Chrome 설치:
brew install --cask google-chrome
- Docker Desktop 설치:
brew install --cask docker
설치 후 Launchpad나 Applications 폴더에서 앱을 찾아 실행하여 확인합니다.
5. Brewfile
로 여러 도구 한 번에 설치 및 환경 공유
Brewfile
은 필요한 모든 Homebrew 패키지와 Cask 앱 목록을 텍스트 파일로 관리할 수 있게 해주는 기능입니다. 새로운 Mac 설정 시 환경을 빠르게 복원하거나 팀원과 개발 환경을 공유할 때 매우 유용합니다.
-
현재 설치된 모든 패키지를
Brewfile
로 내보내기:brew bundle dump
이 명령어는 현재 디렉토리에
Brewfile
이라는 파일을 생성합니다. -
Brewfile
예시:# Brewfile brew "git" brew "node" brew "python" brew "zsh" cask "visual-studio-code" cask "google-chrome" cask "docker"
-
Brewfile
을 사용하여 패키지 설치:
Brewfile
이 있는 디렉토리로 이동한 후 다음 명령어를 실행합니다.brew bundle
Brewfile
에 나열된 모든 패키지와 Cask 앱이 자동으로 설치됩니다.
6. 설치된 패키지 업데이트 및 삭제 (brew update, upgrade, uninstall)
Homebrew는 설치된 패키지를 쉽게 관리할 수 있는 명령어를 제공합니다.
- Homebrew 자체 업데이트:
새로운 패키지를 설치하기 전 또는 정기적으로 실행하여 Homebrew 자체를 최신 상태로 유지합니다.brew update
- 모든 설치된 패키지 업데이트:
brew update
후 실행하여 설치된 모든 패키지를 최신 버전으로 업그레이드합니다.brew upgrade
- 특정 패키지 삭제:
brew uninstall node brew uninstall --cask google-chrome
- 더 이상 필요 없는 파일 정리:
오래된 캐시 파일이나 더 이상 참조되지 않는 심볼릭 링크를 정리합니다.brew cleanup
7. 개발 환경 설정 팁: .zshrc
또는 .bash_profile
Homebrew로 설치한 도구들을 더욱 편리하게 사용하기 위해 쉘 설정 파일(~/.zshrc
또는 ~/.bash_profile
)을 활용할 수 있습니다.
-
PATH 설정 확인 및 추가:
Homebrew는 일반적으로 설치 시 PATH를 자동으로 설정하지만, 문제가 발생하면 수동으로 추가할 수 있습니다.# Apple Silicon Mac (M1/M2/M3) export PATH="/opt/homebrew/bin:$PATH" # Intel Mac export PATH="/usr/local/bin:$PATH"
이 줄을 쉘 설정 파일에 추가하고
source ~/.zshrc
또는source ~/.bash_profile
로 적용합니다. -
쉘 스크립트 별칭 (Alias) 설정:
자주 사용하는 명령에 별칭을 부여하여 생산성을 높일 수 있습니다.# ~/.zshrc 또는 ~/.bash_profile 에 추가 alias b='brew' alias bc='brew --cask' alias bu='brew update && brew upgrade && brew cleanup'
이제
b install node
나bc install visual-studio-code
,bu
와 같이 짧게 명령어를 사용할 수 있습니다.
검증
Homebrew를 사용하여 설치한 도구들이 정상적으로 작동하는지 확인합니다.
- Homebrew 상태 확인:
brew doctor
명령어가 "Your system is ready to brew."를 출력하는지 확인합니다. - 설치된 CLI 도구 버전 확인:
git --version node -v python3 --version
각 도구의 버전 정보가 올바르게 출력되는지 확인합니다.
- 설치된 Cask 앱 실행: Launchpad 또는 Applications 폴더에서 Visual Studio Code, Google Chrome 등의 앱을 실행하여 정상 작동하는지 확인합니다.
흔히 발생하는 에러 및 해결 방법
-
Error:
xcode-select: error: command line tools are not installed
- 원인: Homebrew는 Xcode Command Line Tools에 의존합니다. 이것이 설치되어 있지 않을 때 발생합니다.
- 해결:
xcode-select --install
명령어로 Command Line Tools를 설치한 후 Homebrew 설치를 다시 시도합니다.
-
Error:
Failed to connect to raw.githubusercontent.com port 443
또는Connection reset by peer
- 원인: 네트워크 문제, 방화벽, 또는 특정 지역의 GitHub CDN 접근 문제일 수 있습니다.
- 해결:
- 인터넷 연결을 확인합니다.
- VPN을 사용하고 있다면 잠시 비활성화하거나 다른 서버로 변경해봅니다.
- 잠시 기다렸다가 다시 시도합니다. GitHub 서버에 일시적인 문제가 있을 수도 있습니다.
-
Warning:
Your Xcode (version X.Y) is outdated.
- 원인: 설치된 Xcode 또는 Command Line Tools가 최신 버전이 아닐 때 나타납니다.
- 해결: App Store에서 Xcode를 업데이트하거나,
xcode-select --install
로 Command Line Tools를 최신 버전으로 재설치합니다.
-
Error:
zsh: command not found: brew
(또는 bash)- 원인: Homebrew가 설치되었지만, 쉘의 PATH 환경 변수에 Homebrew 실행 경로가 올바르게 설정되지 않았을 때 발생합니다. 주로 Apple Silicon Mac에서
~/.zshrc
또는~/.bash_profile
에 경로 설정을 놓쳤을 때 나타납니다. - 해결: 설치 완료 시점에 터미널에 출력된 지시에 따라
eval "$(/opt/homebrew/bin/brew shellenv)"
를~/.zprofile
(zsh 기본),~/.zshrc
또는~/.bash_profile
에 추가하고source ~/.zprofile
(또는 해당 파일) 명령어로 적용합니다. Intel Mac의 경우/usr/local/bin
경로를 확인합니다.
- 원인: Homebrew가 설치되었지만, 쉘의 PATH 환경 변수에 Homebrew 실행 경로가 올바르게 설정되지 않았을 때 발생합니다. 주로 Apple Silicon Mac에서
응용
-
Homebrew Services로 백그라운드 서비스 관리:
데이터베이스(PostgreSQL, Redis 등)나 웹 서버(Nginx)와 같은 서비스를 Homebrew로 설치했다면,brew services
명령어를 사용하여 쉽게 시작, 중지, 재시작 및 자동 실행 설정을 할 수 있습니다.brew install postgresql
,brew services start postgresql
,brew services stop postgresql
,brew services restart postgresql
,brew services list
명령어를 활용하여 개발 환경에서 백그라운드 프로세스를 효율적으로 관리할 수 있습니다.brew install postgresql brew services start postgresql # 서비스 시작 brew services stop postgresql # 서비스 중지 brew services restart postgresql # 서비스 재시작 brew services list # 현재 실행 중인 서비스 목록 확인
-
버전 관리 도구 설치 (asdf, nvm, pyenv 등):
Node.js, Python, Ruby 등 특정 언어의 여러 버전을 관리해야 할 때 Homebrew를 통해asdf
,nvm
,pyenv
와 같은 버전 관리 도구를 설치할 수 있습니다.brew install asdf
,brew install nvm
,brew install pyenv
명령어를 사용하여 프로젝트별로 다른 언어 버전을 유연하게 사용할 수 있게 하여 개발 생산성을 극대화합니다.brew install asdf # 여러 언어 버전 관리 도구 brew install nvm # Node.js 버전 관리 도구 brew install pyenv # Python 버전 관리 도구
FAQ
-
Homebrew가 Intel Mac과 Apple Silicon Mac에서 다르게 작동하나요?
네, 약간의 차이가 있습니다. Apple Silicon Mac에서는 Homebrew가 기본적으로/opt/homebrew
경로에 설치되며, Intel Mac에서는/usr/local
에 설치됩니다. 이로 인해 PATH 환경 변수 설정 경로가 달라집니다. 대부분의brew
명령어는 동일하게 작동합니다. -
Homebrew로 설치한 앱은 어떻게 업데이트하나요?
CLI 도구는brew upgrade
명령어로 한 번에 모든 패키지를 업데이트할 수 있으며, 특정 패키지는brew upgrade [패키지명]
으로 업데이트할 수 있습니다. Cask 앱은brew upgrade --cask [앱명]
으로 업데이트 가능하지만, 일부 앱은 자체 업데이트 기능을 사용하는 것이 더 안정적일 수 있습니다. 정기적으로brew update
와brew upgrade
를 실행하는 것이 좋습니다. -
Homebrew 설치 중 권한 문제가 발생하면 어떻게 해야 하나요?
Homebrew는sudo
없이 사용자 계정 권한으로 설치되도록 설계되었습니다.sudo
를 사용하여 설치를 시도하면 권한 문제가 발생할 수 있습니다. 만약 권한 문제가 발생한다면,sudo chown -R $(whoami) /usr/local
(Intel Mac의 경우) 또는/opt/homebrew
(Apple Silicon Mac의 경우) 명령어로 해당 디렉토리의 소유권을 사용자에게 변경한 후 다시 시도해보세요. 일반적으로는 권한 문제가 발생하지 않도록 설계되어 있습니다.