OS별 환경변수 설정 (Linux & macOS / Windows)

Page content

1. Linux & macOS

1.1 임시 환경변수 설정 (현재 세션에서만 유효)

export 변수명=

예)

export PATH=$PATH:/usr/local/bin
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home

위 설정은 현재 터미널 세션에서만 유효하며, 터미널을 닫으면 사라진다.

1.2 영구 환경변수 설정

(1) Bash Shell (bash 사용 시)

  • ~/.bashrc 또는 **~/.bash_profile*에 추가

    export 변수명=

    예)

    export PATH=$PATH:/usr/local/bin
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
    
  • 적용:

    source ~/.bashrc   # 또는 source ~/.bash_profile
    

(2) Zsh Shell (macOS 기본 Shell)

  • ~/.zshrc 파일 수정:

    export 변수명=

    예)

    export PATH=$PATH:/usr/local/bin
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
    
  • 적용:

    source ~/.zshrc
    

(3) System-wide 환경변수 설정 (모든 사용자 적용)

  • Linux: /etc/environment 또는 /etc/profile 수정

    sudo nano /etc/environment
    
    JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$JAVA_HOME/bin"
    
  • 적용:

    source /etc/environment
    

2. Windows

2.1 임시 환경변수 설정 (현재 CMD/Powershell 세션에서만 유효)

(1) CMD에서 설정

set 변수명=값

예)

set PATH=%PATH%;C:\\Program Files\\Java\\jdk-17\\bin
set JAVA_HOME=C:\\Program Files\\Java\\jdk-17

현재 창에서만 유효하며, CMD 창을 닫으면 사라진다.

(2) PowerShell에서 설정

$env:변수명="값"

예)

$env:PATH += ";C:\\Program Files\\Java\\jdk-17\\bin"
$env:JAVA_HOME = "C:\\Program Files\\Java\\jdk-17"

현재 PowerShell 세션에서만 유효하다.


2.2 영구 환경변수 설정

(1) GUI 방식 (Windows 설정)

  1. 시스템 속성 실행 (Win + Rsysdm.cpl 입력 후 Enter)
  2. “고급” 탭 → “환경 변수” 버튼 클릭
  3. 사용자 변수 또는 시스템 변수에서 추가/수정 후 확인

(2) CMD에서 영구 환경변수 설정

setx 변수명 값

예)

setx JAVA_HOME "C:\\Program Files\\Java\\jdk-17"
setx PATH "%PATH%;C:\\Program Files\\Java\\jdk-17\\bin"

⚠️ setx로 PATH 수정 시, 기존 값이 덮어씌워질 수 있으므로 주의해야 한다.

(3) PowerShell에서 영구 환경변수 설정

[System.Environment]::SetEnvironmentVariable("변수명", "값", "User")  # 사용자 변수
[System.Environment]::SetEnvironmentVariable("변수명", "값", "Machine")  # 시스템 변수 (관리자 권한 필요)

예)

[System.Environment]::SetEnvironmentVariable("JAVA_HOME", "C:\\Program Files\\Java\\jdk-17", "User")
[System.Environment]::SetEnvironmentVariable("PATH", $env:PATH + ";C:\\Program Files\\Java\\jdk-17\\bin", "User")

적용 방법: 새 CMD 또는 PowerShell을 열어야 반영됨.


이렇게 설정하면 각 OS에서 환경변수를 임시 또는 영구적으로 적용할 수 있다.