본문 바로가기

L I N U X

환경 변수 설정


너무 자주 찾아서 스크립 넣는다.

http://blog.jinbo.net/ubuntu/3 

------------------------------------------------------------------------------------------------

PATH 라 PATH 라고 한다면, 경로 라고 말씀 드리는게 편하겠네요.. 



간단하게 명령어를 예를 들겠습니다. 


리눅스 상에서 

# echo $PATH <-- 라고 일단, 쳐 보십시오. 

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin 


이런 식으로 display가 되어 질겁니다. 


useradd 란 명령어가 있습니다. /usr/sbin 이란 폴더에 존재 하죠. 

우리가 사용자를 추가 하기 위해서 # usradd xxxx 라고 치면, 

리눅스는 위의 $PATH 를 참조하여 

위의 나열된 순서대로(/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin) 

/usr/local/sbin 에 가서 useradd 를 찾고, 다음으로 /usr/local/bin 에 가서 

useradd 를 찾습니다. 이런 식으로 path 에 지정된 위치들을 

순서대로 찾아 가면서 위의 명령어를 찾게 되는거죠. 말 그대로 path(경로) 

명령어의 경로를 지정해주는거죠. 우리가 직접적으로 /usr/sbin/useradd 

와 같이 특정 위치를 지정해주지 않는 한 (../ ./ / <-- 특정 위치 지정) 

path 에 따라서, 명령어를 찾아 주게 되는거죠. 



그럼 이 PATH 를 변경은 어떻게 시켜줄까요? 


사용자 측면에서 변경와 전체적인 변경이 존재 합니다. 

사용자 측면이라면 (bash shell 사용시) 

자신의 홈폴더의 (ls -al 자신의 홈 폴더 하면 보입니다.) 

.bash_profile 이 있습니다. 

# vi .bash_profile 하고 열어 보시면, 

PATH=$PATH:$HOME/bin <-- 이런 부분이 보일겁니다. 

# source .bash_profile 

이 뒷 부분에 추가할 경로를 쳐주시면 사용자가 로그인시 PATH 환경 

변수에 추가 되는거죠. (부팅시 .bash_profile 을 시작해준다.) 

동일하게 전체적인 방식은 

# vi /etc/profile 

PATH=$PATH:/usr/local/sbin:/usr/local/tomcat/bin 
export PATH 

맨뒤에 위의 두줄을 추가 시켜 주시고 

# source /etc/profile 해주시면 적용됩니다. 

$PATH 나 $HOME 은 그 환경 변수의 값을 넣는다는 거죠. 


* 만약 동일한 명령어가 path 에 잡혀 있는 경로 상에 두개가 존재 한다면 

우선 하는 경로의 명령어가 실행 됩니다. 간혹 이런 문제로 인해 문제가 발생 

하신 분들이 계십니다. 즉, 엉뚱한 명령어가 실행 되게 되는거죠. * 


http://cafe.daum.net/joalinux

'L I N U X' 카테고리의 다른 글

Arm embedded linux porting  (0) 2012.03.09
Makefile ??  (0) 2012.02.28
cmake 사용예  (0) 2012.02.24
cmake 사용법  (0) 2012.02.24
라이브러리 로딩 - ld.so.conf  (0) 2012.02.22