티스토리 뷰

프로세스의 사용자 ID

- 프로세스의 사용자 ID와 그룹 ID는 프로세스가 수행하는 연산, 권한(ex. 파일 사용 권한)을 검사하는데 사용된다

 

실제 사용자 ID (real user id)

 - 그 프로세스를 실행시킨 사용자의 ID

유효 사용자 ID (effective user id)

 - 프로세스의 현재 유용한 사용자 ID

 - 보통 새로 파일을 만들 때 그 파일의 소유자를 정하거나 파일에 대한 접근권한을 검사할 때 사용됨

 - 특별한 실행파일을 실행하는 경우가 아니면 실제 사용자 Id 와 동일함

 

프로세스의 그룹 ID

 - 위와 비슷

 

 

 

ID 확인

$ id [사용자명]

- 사용자의 실제 ID와 유효 사용자 ID, 그룹 ID 등을 보여준다

- 사용자명을 명시하면 주어진 사용자에 대한 정보를 출력한다.

- 사용자명을 명시하지 않으면 실행 중인 프로세스(쉘)의 사용자에 대한 정보를 출력한다

- 기본적으로 실제 사용자 ID와 실제 그룹ID 를 출력하는데, 만약 유효 사용자 ID와 유효 그룹 ID가 앞과 다르다면, 이도 함께 출력함

- 각 항목은 식별번호와 괄호 안에 해당 사용자 또는 그룹의 이름을 함께 출력

 

$ echo $UID $EUID $GROUPS

- 내부 bash 변수 $UID (실제 사용자 ID), $EUID (유효 사용자 ID), $GROUPS (그룹 Id) 별로 출력도 가능함

 

 

 

 

set - user - id (set user ID upon execution)

- 특별한 실행 권한

- set-user-id 라는 특별한 실행권한이 설정된 실행파일을 실행하면 이 프로세스의 유효 사용자는 그 실행파일의 소유자로 바뀐다.

- 실행되는 동안 그 파일의 소유자 권한을 갖는다

- 소유자의 실행 권한이 s로 표시

 

 

- 일반 사용자가 이 파일을 실행하면 이 프로세스의 유효 사용자 ID 는 root가 되어 root권한을 가지고 /etc/passwd와 같은 root만 수정할 수 있는 파일에 접근하여 수정할 수 있게 됨

 

- 실행권한은 심볼릭 모드 's'로 표현됨

- 8진수로 4000 으로 표현됨

 

$ chmod 4755 파일 
$ chmod u+s 파일

- 실행 권한을 변경하려면 앞에 4나 소유자에 s 권한 추가

 

 

set - group -id (set group ID upon execution)

- 실행되는 동안 그 파일 소유자의 그룹을 프로세스의 유효 ID그룹으로 가짐

- 그룹의 실행권한에 's' 설정

- 8진수 모드로 2000

- 실행 중에 tty 그룹 내의 어느 터미널이든 접근할 수 있게 한다

 

 

$ chmod 2755 파일
$ chmod g+s 파일

- 실행 권한을 변경하려면 앞에 2나 그룹에 s 권한 추가

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함