윈도 10/윈도 10 설치 및 운영

윈도(Windows) 10 환경 변수 Path 설정 방법(+ 환경 변수 추가 방법)

씨실과 날실 2019. 11. 14. 09:00

 

환경 변수 Path를 설정하는 이유

환경 변수에 대하여 우키백과는 다음과 같이 설명하고 있습니다.

 

환경 변수(環境 變數, 영어: environment variable)는 프로세스가 컴퓨터에서 동작하는 방식에 영향을 미치는, 동적인 값들의 모임이다.

 

즉, 시스템이 구동되고 각각의 프로세스들이 실행될 때 참조하는, 일종의 조건들로, 변수라는 단어에서 알 수 있듯이 필요에 따라 추가, 수정, 제거가 가능한 값들입니다.

환경 변수에 대한 일반적 설명은 다음 링크를 참고하시기 바랍니다.

 

OS별 변수 표기

Windows 계열 : %Path%

Unix / Linux 계열 : $PATH

OS별로 다양한 환경 변수들이 존재합니다. 그 중 공통적으로 빈번하게 사용되는 변수가 바로 Path(경로)입니다.

Path 환경 변수를 설정하는 이유는 Path에 등록된 경로는, 권한(퍼미션)한 있다면 시스템의 어떤 경로에서라도 파일에 접근하여 실행할 수 있기 때문입니다.

즉, 절차를 단순화 하여 간결한 입력으로 명령을 실행하여 생산성을 굉장히 높일 수 있기 때문입니다. 만약 Pat에 등록되어 있지 않는다면 어떤 명령을 실행하려면 파일의 전체 경로를 적어 주거나 아니면 파일이 위치한 폴더(디렉터리)까지 이동하여 실행해주어야 합니다.

이러한 번거로움을 해소하기 위해 환경 변수 Path를 설정하는 것입니다.

 


윈도(Windows) 10에서 환경 변수 Path 설정하는 방법

환경 변수 Path 설정을 해시값을 구하는 프로그램 sha256sum.exe과 버추얼박스의 vboxmanage.exe 파일을 윈도 시스템 환경변수 Path에 등록하는 방법을 통해 알아보도록 하겠습니다.

 

sha256sum.exe

sha256sum.exe 파일은 윈도의 CLI 환경(명령 프롬프트(CMD) 등)에서 특정 파일의 sha256 해시값을 구하는 프로그램입니다.

이 프로그램의 자세한 사용법은 아래 링크를 참고하시기 바랍니다.

 

Microsoft Windows [Version 10.0.18362.295]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\admin\Portable>sha256sum.exe CentOS-8-x86_64-1905-dvd1.iso
ea17ef71e0df3f6bf1d4bf1fc25bec1a76d1f211c115d39618fe688be34503e8 *CentOS-8-x86_64-1905-dvd1.iso

C:\Users\admin\Portable>

본래 이 sha256sum.exe 파일은 포터블 외부 프로그램으로 이 파일을 제대로 실행하기 위해서는 sha256sum.exe 파일이 위치해 있는 폴더(디렉터리)에서 실행해주어야 합니다.

위 예시는 명령 프롬프트 창(CMD 창)을 열어 sha256sum.exe 파일이 위치해 있는 폴더에서 역시 같은 폴더에 위치해 있는 다른 파일(여기서는 예시로 CentOS-8-x86_64-1905-dvd1.iso)의 sha256 해시값을 구하는 모습입니다.

참고

해시값을 구하고자 하는 파일이 sha256sum.exe 파일과 같은 폴더에 있는 경우 위 예시처럼 sha256sum.exe 파일 옆에 해당 파일명만 적어주면 됩니다.

그러나 해시값을 구하고자 파일이 sha256sum.exe 파일이 위치해 있는 폴더와 다른 경우 해시값을 구하고자 하는 해당 파일 전체 경로를 적어주어야 합니다.

파일명이나 경로 내에 공백이 있는 경우, 파일명이나 전체 경로를 "    "(따옴표)로 싸주어야 합니다.

 

Microsoft Windows [Version 10.0.18362.295]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\admin\Downloads>sha256sum.exe "C:\Users\admin\Downloads\CentOS-8-x86_64-1905-dvd1.iso"
'sha256sum.exe'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는
배치 파일이 아닙니다.

C:\Users\admin\Downloads>

그러나 만약 sha256sum.exe 파일이 위치해 있지 않는 폴더에서 sha256sum.exe 파일을 실행하면 위 예시처럼 오류를 보입니다.

 

'실행 파일명'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는
배치 파일이 아닙니다.

 

위와 같은 오류는 어떤 이유로 해당 실행 파일이 깨졌다거나 파일의 실행 비트가 시스템의 비트와 안 맞는 경우(예를 들어 32비트 시스템에서 64비트 파일을 실행하는 경우 등) 등 다양한 이유로 발생합니다.

해당 파일을 둘러싼 내외부의 환경에 문제가 없다고 하면 위와 같은 문제는 대부분 해당 실행 파일이 시스템의 path 경로에 등록되어 있지 않은 채로 실행 파일이 위치해 있지 않은 폴더에서 해당 실행 파일을 실행하는 경우에 생깁니다.

따라서 오류 없이 해당 파일을 실행하기 위해서는 해당 실행 파일이 위치해 있는 폴더에서 실행해주어야 합니다.

만약 프롬프트가 위치해 있는 폴더와는 상관없이 특정 실행 파일을 실행하고 싶다면 해당 실행 파일이 위치해 있는 폴더 경로를 윈도의 환경 변수 path에 등록해주어야 합니다.

 


 

윈도10의 환경 변수 path에 특정 실행 파일 위치 폴더 등록

윈도10의 환경 변수 path에 특정 실행 파일을 등록하는 방법은 아래와 같습니다.

환경 변수 창 띄우기

마우스로만 환경 변수 창 띄우기

Windows 설정 - 시스템 - 정보 - 시스템 정보 - 고급 시스템 설정 - 환경 변수

검색창으로 환경 변수 창 띄우기

작업표시줄 돋보기 모양의 검색 막대에서

고급 시스템 설정

을 입력

해당 문구를 입력하면 위 그림처럼 고급 시스템  설정 앱이 검색됩니다.

위 그림 좌측에서 고급 시스템 설정 보기를 클릭하거나 오른쪽의 열기를 클릭해줍니다.

그러면 위 그림처럼 시스템 속성 창에서 고급 탭 화면이 표시됩니다. 여기서 우리가 작업할 부분은 창 ㅎ사단의 환경 변수입니다. 환경 변수(N) 버튼을 눌러줍니다.

환경 변수 창

그러면 위 그림처럼 윈도10의 환경 변수 설정 창이 뜹니다. 이 환경 변수 설정 창에는 상단에 로그인 중인 사용자 계정의 사용자 변수와, 하단에 시스템 변수 설정 화면이 나타납니다.

상단의 로그인한 사용자 계정에 대한 사용자 변수는 해당 로그인 사용자가 사용할 수 있는 개별 환경 변수 설정이고, 하단의 시스템 변수는 말 그대로 컴퓨터 시스템에서 사용되는 공통 환경 변수입니다.

환경 변수 Path는 개별 사용자 계정과 시스템 모두에 존재하며, 그 성격에 따라 Path 설정 값도 다르게 설정됩니다.

개별 사용자 계정에 대한 사용자 변수

개별 사용자 계정에 대한 사용자 변수는 해당 계정 사용자가 로그인한 경우에만 적용되는 것으로 만약 다른 사용자 이름으로 로그인한다면 기존 사용자 계정의 환경 변수값은 적용되지 않고 새로 로그인한 다른 사용자 계정의 환경 변수값이 적용됩니다.

이러한 환경 변수 설정 적용은 환경 변수 Path에도 적용되어 로그인한 사용자 계정이 다르면 Path 값도 달리 적용됩니다.

%USERPROFILE%\AppData\Local\Microsoft\WindowsApps

각 개별 사용자의 환경변수 Path 값은 기본적으로 위 설정이 적용되며 추후 각종 프로그램의 설치나 로그인한 사용자 자신의의 의지로 추가, 수정됩니다.

시스템 변수 중 Path 변수 편집

시스템 변수는 로그인한 사용자에 따라 개별적으로 설정된 환경 변수와는 상관없이, 모든 사용자에게 공통적으로 적용되는 시스템 자체의 환경 변수를 말합니다.

따라서 여기에 설정된 값들은 모든 사용자에게 공통적으로 적용됩니다. 저는 시스템의 환경 변수 Path 값을 편집해보도록 하겠습니다. 만약 특정 사용자에게만 환경변수 Path 값을 적용하고 싶다면 아래의 방법을 상단의 개별 사용자 계정에 대한 사용자 변수 편집에 적용하시면 됩니다.

환경 변수 Path 설정 편집

위 그림처럼 시스템 변수들 중에서 Path 변수를 선택하고 편집 버튼을 눌러줍니다.

그러면 위 그림처럼 Path 환경 변수에 등록된 폴더 경로 목록들을 확인할 수 있습니다.

특정 실행 파일을 프롬프트가 위치해 있는 폴더와는 상관 없이 실행하기 위해서는 위 Path에 실행시키고자 하는 파일이 위치해 있는 폴더의 경로를 등록해주어야 합니다.

예시로 C:\Users\admin\Portable 폴더에 위치해 있는 sha256sum.exe 파일을 Path 변수에 추가해보도록 합시다.

위 창 화면에서 새로 만들기 버튼을 눌러줍니다.

그러면 목록 하단에 변숫값을 적을 수 있도록 빈칸과 함께 커서가 활성화됩니다. 그러면 위 그림처럼 해당 폴더의 전체 경로를 적어줍니다.

직접 타이핑해서 적지 않고 찾아보기 버튼을 눌러 마우스로 폴더를 선택하여 추가할 수도 있습니다. 이렇게 찾아보기 버튼을 이용하는 것이 타이핑할 때 오는 실수를 막을 수 있고 운하는 폴더 위치를 쉽게 찾을 수 있습니다. 

새로 만들기 버튼이 아니라 텍스트 편집 버튼을 눌러서도 추가할 수 있는데 텍스트 편집 버튼 버튼을 누르면 아래 그림처럼 변수 값 항목을 수정할 수 있도록 시스템 변수 편집 창이 뜹니다.

위 변수 편집창 화면의 변수 값은 설정 시 일렬로 변수값(여기서는 Path 경로)을 나열하도록 되어 있는데 새 변수 값을 추가할 때는 세미 콜론(;)을 새 변수 값 앞에 붙여 기존 변수 값과 구분지어줍니다.

설정 후 열린 창들을 모두 확인 버튼을 눌러 닫아줍니다. 이것으로 윈도10 환경 변수 Path 값 설정 완료입니다.

 

참고

Path 경로 등록 순서의 중요성

Path 경로 등록은 순서가 중요합니다. 만약 동일한 이름의 파일이 각기 다른 폴더에 존재하고 또 해당 폴더들이 모두 Path에 등록되어 있는 경우, 먼저 등록된 폴더 안의 파일이 실행됩니다.

이유는 Path의 진정한 기능에 있습니다. Path는 시스템이 명령을 실행할 때 해당 명령어를 찾는 폴더 순서입니다.

예를 들어 a라는 명령어(파일)가 A, B, C라는 폴더 안에 있고 그 중 A, B 두 폴더가 Path에 등록되어 있다고 칩시다.

그럼 C 폴더 안의 a 명령어는 전체 경로를 지정하여 명령을 실행하지 않으면 실행되지 않습니다.

A와 B 폴더 안의 a 명령어는 Path 설정값에서 어느 폴더가 먼저 등록되어 있느냐에 따라 실행 되는 명령어가 다릅니다.

만약 Path 값에 A 폴더가 먼저 지정되어 있다면 A 폴더 안의 a 명령어가 실행될 것이고, 반대로 B 폴더가 먼저 지정되어 있다면 B 폴더 안의 a 명령어가 실행될 것입니다.

만약 A폴더가 B폴더보다 먼저 지정되어 있는 상태에서 B폴더 안의 a 명령어를 실행하고 싶다면 해당 전체 경로를 지정하여 명령어를 실행해주어야 합니다.

위 환경 변수 편집창 그림에서 위로 이동, 아래로 이동 버튼이 존재한 이유입니다.

 

 


 

이제 sha256sum.exe 파일이 위치해 있지 않은 폴더에서 파일을 실행해봅시다.

Microsoft Windows [Version 10.0.18362.295]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Users\admin\Downloads>sha256sum.exe CentOS-8-x86_64-1905-dvd1.iso
ea17ef71e0df3f6bf1d4bf1fc25bec1a76d1f211c115d39618fe688be34503e8 *CentOS-8-x86_64-1905-dvd1.iso

C:\Users\admin\Downloads>

 문제 없이 실행되는 것을 확인할 수 있습니다.

 


 

새 변수 추가를 통해 간략한 Path 경로 설정

기본 개별 계정 사용자 변수 목록

OneDrive / Path / TEMP / TMP

 

기본 시스템 변수 목록

ComSpec / DriverData / NUMBER_OF_PROCESSORS / OS / Path / PATHEXT / PROCESSOR_ARCHITECTURE / PROCESSOR_IDENTIFIER / PROCESSOR_LEVEL / PROCESSOR_REVISION / PSModulePath / TEMP / TMP / USERNAME / windir

윈도10에서는 위에서 기술했다시피 Path, PATHEXT, TEMP 등 다양한 환경 변수들이 존재합니다. 이들 중에는 시스템 환경에 따라 자동으로 설정되어 따로 변경할 필요 없는 혹은 해서는 안되는 변수도 있고, 필요에 따라 변숫값을 추가, 수정, 삭제할 수 있는 변수도 있습니다.

환경 변수 Path의 변수 값 예시

C:\windows\system32

%SystemRoot%\system32

Path 변수 값을 확인해보면 C:\windows\system32처럼 전체 경로를 적는 경우도 있고, %SystemRoot%\system32처럼 일부 경로가 %변수명%로 치환되어 표현되어 있는 경우도 있습니다.

Path값에 %변수명%을 쓰는 이유는 긴 경로를 하나의 변수로 등록하여 추후에 해당 경로를 Path값에 적을 필요가 있을 때 긴 전체 경로 대신 짧은 변수를 적어 편의를 도모하기 위함입니다.

해시값을 구하는 프로그램 sha256sum.exe과 버추얼박스의 vboxmanage.exe 파일을 통해 변수 추가 및 추가된 변수를 이용한 Path값 추가 방법을 알아보도록 하겠습니다.

새로운 변수 추가 및 변숫값 설정

%sha256sum.exe%

-폴더 경로 등록 방법-

먼저 sha256sum.exe입니다.

환경 변수 창 하단의 시스템 변수 부분에서 새로 만들기 버튼을 눌러줍니다.

변수 이름에 적당한 이름을 적어줍니다. 저는 sha256sum이라 적어 주었습니다.

변수 값에 sha256sum.exe 파일이 위치해 있는 폴더의 전체 경로를 적어줍니다. 저의 경우 C:\Users\admin\Portable에 파일이 잇으므로 이 경로를 그대로 적어주었습니다.

변수명과 변수 값(여기서는 폴더 경로)를 적고 확인 버튼을 눌러줍니다.

이제 위에서 환경 변수 Path 설정 편집 파트를 참고하여 Path 값을 추가해줍니다. 이때 전체 경로 대신 변수명을 적어주면 됩니다. 저는 변수명으로 sha256sum을 적었으므로 %sha256sum%을 적어줍니다.

설정 완료 후 sha256sum.exe 파일을 실행해보면 정상적으로 작동하는 것을 확인할 수 있습니다.

%VBOX_MSI_INSTALL_PATH%

-변수 등록 방법-

버추얼박스의 기본적 기능은 GUI에서 손쉽게 이용할 수 있습니다. 그러나 2테라를 초과하는 가상 디스크 가상 머신을 생성하는 등의 고급 사용법은 CLI 환경에서 명령 파일 사용법을 이용해야합니다.

주의

버추얼박스의 명령어는 관리자 권한으로 실행해야 합니다.

 

C:\WINDOWS\system32>cd C:\Program Files\Oracle\VirtualBox
C:\Program Files\Oracle\VirtualBox>vboxmanage modifymedium "C:\Users\윈도 사용자 계정 이름\VirtualBox VMs\해당 가상머신 파일을 포함하고 있는 폴더명\파일명.vdi" --resize 3000000
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

C:\Program Files\Oracle\VirtualBox>

 

그런데 이 명령 파일은 특별한 설정 없이는 위 예시처럼 꼭 버추얼박스가 설치되어 있는 폴더(= 디렉터리)에서 실행해야만 올바르게 작동합니다.

만약 버추얼박스 설치 폴더 밖에서 해당 명령을 실행하면 오류가 나게 됩니다. 아무 폴더(= 디렉터리)에서나 버추얼박스 관리 명령을 사용하려면 vboxmanage.exe 등 관리 명령 파일이 위치한 버추얼박스 설치 폴더를 환경 변수 Path에 등록해주어야 합니다.

윈도 시스템에 버추얼박스를 설치했을 경우 위 그림처럼 시스템 변수에 버추얼박스 폴더가 하나의 변수로 자동 등록됩니다.

 

변수명 : VBOX_MSI_INSTALL_PATH

변수 값 : C:\Program Files\Oracle\VirtualBox\

버추얼박스를 기본값으로 설치한 경우, 설정값은 위와 같습니다.

 

위 그림처럼 Path 값에 버추얼박스 설치 폴더 변수를 추가해주면 됩니다.

버추얼박스 설치 폴더 변수명은 VBOX_MSI_INSTALL_PATH입니다. Path 값에 폴더 경로 대신 변수명을 적을 땐 아래처럼 변수명 앞뒤에  %로 감싸주어야 합니다.

%VBOX_MSI_INSTALL_PATH%

물론 변수명 대신 버추얼박스 설치 폴더 전체 경로를 대신 적어주어도 됩니다.

이것으로 Path 설정이 완료되었습니다.

 


 

Path 환경 변수에 버추얼박스 설치 폴더를 등록한 후 버추얼박스 고급 사용법을 테스트해봅시다.

Microsoft Windows [Version 10.0.18362.295]
(c) 2019 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>f:
F:\>cd "F:\VirtualBox\VirtualBox VMs\CentOS\CentOS - LCVD"
F:\VirtualBox\VirtualBox VMs\CentOS\CentOS - LCVD>vboxmanage modifymedium "F:\VirtualBox\VirtualBox VMs\CentOS\CentOS - LCVD\CentOS - LCVD.vdi" --resize 5000000
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

F:\VirtualBox\VirtualBox VMs\CentOS\CentOS - LCVD>

드라이브와 폴더가 완전히 다른 곳에서도 버추얼박스 명령 파일을 문제없이 실행할 수 있음을 확인할 수 있습니다.