권한에 대한 소유권과 허가권에 대한 상세 정보를 보고 싶으시면
아래의 글을 참고하여 주시기 바랍니다^^
2011/04/19 - [Linux/Tip & Tech] - Linux 에서 사용하는 소유권/허가권 을 알아보자.
그럼 이제 각각의 권한 설정 명령어의 내용을 살펴 보도록 하겠습니다.
============================================================================================================================
- chmod (Change Modification, 허가권(Permission)) -
1. 정의 : 파일 또는 디렉터리의 허가권을 설정
2. 형식
- Numeric : #chmod [Perm] [파일 / 디렉터리 Name]
- Symbolic : #chmod [Symbol] [파일 / 디렉터리 Name]
============================================================================================================================
- chown (Change Ownership, 소유권(UID/GID)) -
1. 정의 : 파일 또는 디렉터리의 소유권을 설정 (uid, gid)
2. 형식
- #chown [uid.gid] [파일 / 디렉터리 Name]
- #chown [uid:gid] [파일 / 디렉터리 Name]
[ 추가사항 ]
- #chown root. [File/Dir]
: 소유권 변경시 '.' 또는':' 뒤에 아무것도 없으면 입력했던 Uid 값을 기준으로 "/etc/passwd" 안에 존재하는
gid를 검색하여 "/etc/group" 존재하는 gid의 그룹명으로 자동 입력되게 된다.
- #chown .root [File/Dir]
: 소유권 변경시 '.' 또는':' 앞에 아무것도 없으면 그룹 권한만 적용됨 (chgrp 와 동일한 기능)
============================================================================================================================
☆권한 설정시 꼭 알아두기!!!☆
※ 모든 권한의 적용은 현재 로그인을 하는 사용자를 기준으로 적용 및 확인한다.
※ 권한 중 허가권보다 소유권이 우선한다.
- 로그인한 사용자가 소유권의 UID/GID 에 모두 해당되는 경우는 Uid 의 권한을 적용받음
- 로그인한 사용자가 소유권의 UID/GID 에 모두 해당되지 않을 때 other의 권한을 적용받음
( 권한적용 = Uid > Gid > Other)
※ ftp 및 Terminal (원격접속 서비스) 의 경우
Info | R | W | X |
Dir | 목록출력 (ls, dir 등) | 업로드, 쓰기, 삭제 (FTP[put], mkdir, touch, rmdir, rm 등) | 접근, Login, 필수권한 |
File | 내용출력 (cat, more 등) | 업로드, 쓰기, 삭제 (FTP[put], mkdir, touch, rmdir, rm 등) | 실행(#/$ 상태로 입력여부) |
- 허가권 설정시 Dir 의 경우는 ["x" -> "r" -> "w"] 순서로, File 의 경우 ["r" -> "w" -> "x"] 해석을 하면 관리가 용이하다.
※ Web의 출력에 대한 사항
-> 정상적으로 출력하기 위해 필요한 권한 (2가지 모두 충족해야함)
* 해당 디렉터리의 경로에 other 부분의 'X' 권한 적용 여부
* 해당 디렉터리의 경로안에 있는 파일의 other 부분의 'R' 권한 적용
============================================================================================================================
- umask -
1. 정의 : 파일 또는 디렉터리 생성시 기본값을 설정/확인할 수 있는 명령어
2. 형식
- #umask [Perm]
- 공식 : [ "맥스값"-"UMASK"="기본값" ]
- Max Permission -
Dir : 777 ('x'는 접근권한으로 생성시 접근이 가능해야 함)
File : 666 ('x'는 실행에 대한 권한을 가지므로 최초 생성시
실행파일로 생성되지 못하게 설정됨)
- 계산법 -
DIR : rwxrwxrwx (777)
FILE : rw-rw-rw- (666)
UMASK : ---rwx-w- (072)
dir = rwx---r-x (705)
file = rw----r-- (604)
[ 추가사항 ]
* "/etc/profile" 에 의해 umask 기본값은 아래와 같이 적용되어 있다.
- 사용자(users) : umask 002
- 관리자(root) : umask 022
ex) noose 로그인
noose]$umask
umask 0002
noose]$ touch ./file
rw-rw-r-- file : 기본값으로 생성된 허가권 (664)
noose]$ mkdir ./dir
rwxrwxr-x dir : 기본값으로 생성된 허가권 (775)
root 로그인
root]# umask
umask 0022
root]# touch ./file
rw-r--r-- file : 기본값으로 생성된 허가권 (644)
root]# mkdir ./dir
rwxr-xr-x dir : 기본값으로 생성된 허가권 (755)
============================================================================================================================
- 특수권한(stickybit, SetUID, SetGID) -
※ 특수권한의 표현식
1. SetUID (4000)
- 'x' 의 권한 O : rws rwx rwx
- 'x' 의 권한 X : rwS rw- rw-
2. SetGID (2000)
- 'x' 의 권한 O : rwx rws rwx
- 'x' 의 권한 X : rw- rwS rw-
3. StickyBit (1000)
- 'x' 의 권한 O : rwx rwx rwt
- 'x' 의 권한 X : rw- rw- rwT
=> 'x'의 권한이 있으면 소문자로 / 'x'의 권한이 없으면 대문자로 출력
※ 특수권한의 형식
- #chmod [SPerm] [ File / Dir ]
============================================================================================================================
◎ stickybit
1. 정의 : 디렉터리에 쓰기권한이 있어 해당디렉터리내 파일에 권한이 없어도 삭제할 수 있는 사항을
방지하기 위해 사용(stickybit 설정은 디렉터리에만 가능)
2. 형식
- #chmod 1XXX [ Dir ]
============================================================================================================================
◎ SetUID/SetGID
1. 정의 : 실행파일을 실행하려는 다른 사용자가 해당 실행파일의 소유자/소유그룹의 권한을
빌려서 실행하고자 할 때 사용한다.
2. 형식
- #chmod 4XXX [ 해당 File ] : SetUid 적용
- #chmod 2XXX [ 해당 File ] : SetGid 적용
'Linux > 입문하기' 카테고리의 다른 글
제11강. HardWare(FileSystem) 관련 명령어를 알아보자. (0) | 2012.04.15 |
---|---|
제10강. 사용자 관련 명령어를 알아보자!!! (0) | 2012.04.15 |
제 8강. Display 관련 명령어를 알아보자. (0) | 2012.04.15 |
제 7강. Vi Editor 를 알아보자. (0) | 2012.04.15 |
제 6강. 파일 관리 명령어를 알아보자. (0) | 2012.03.02 |