본문 바로가기

Hacking & Security/System

환경변수란 ?

/* ( 참조 블로그 : https://m.blog.naver.com/PostView.nhn?blogId=koromoon&logNo=220793570727&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F )     */



환경변수 : 프로세스가 컴퓨터에서 동작하는 방식에 영향을 미치는 동적인 값들의 모임으로 쉘에서 정의되고 실행하는 동안
                    프로그램에 필요한 변수를 나타냄.





(1) 동작 범위에 따른 환경변수

크게 세 가지 카테고리로 분류가능


1. 로컬 환경 변수           -     현재 진행중인 세션에서만 동작하는 환경 변수

2. 사용자 환경 변수        -     특정 사용자에 대해서만 정의된 환경 변수로 로컬 터미널 세션 , 원격 로그인 세션을 사용하여 로그인할때마다 로드됨.

3. 시스템 전체 환경 변수 -     해당 시스템에 존재하는 모든 사용자가 사용할 수 있는 환경변수.
                                        (관련파일 : /etc/environment , /etc/profile , /etc/profile.d , /etc/bash.bashrc )


(2) 환경변수 구성 파일


.bashrc    -    특정 사용자가 새로운 로컬 세션을 생성할 때마다 로드되는 파일로 별칭과 bash가 실행될 때 실행되는 함수등으로 구성.

( 모든 사용자에게 영향을 주는 /etc/bashrc 와는 달리 ~/.bashrc 는 bash를 실행하는 그 사용자에게만 영향을 줌 )


.bash_profile    -    특정 사용자의 원격 로그인 파일로 이 파일에 있는 환경변수는 사용자가 원격 로그인 세션이 이뤄질 시에 호출


/etc/environment    -    전반적인 시스템을 제어하는 파일로 필요한 환경변수를 작성하거나 편집 또는 제거함.



(3) 로컬 환경변수 설정

1. 가변적인 변수명 사용    -    기본형식 : 가변 변수명 = 환경변수값 ( ex , var1='example'    )


2. export 명령어를 이용    -    기본형식 : export [변수명]=[환경변수값]

( 주의할 점은 , 변수명과 데이터 사이에 있는 '='과 띄워쓰기를 하면 오류발생 )

'Hacking & Security > System' 카테고리의 다른 글

PLT & GOT  (0) 2018.10.31
Linux 환경에서의 메모리 보호기법  (0) 2018.08.21
Buffer Overflow Basic 3  (0) 2018.01.16
Buffer Overflow Basic 2  (0) 2018.01.16
Buffer Overflow Basic 1  (0) 2018.01.16