Programing/Linux
[리눅스]명령어 권한관련
하얀배터리
2018. 4. 2. 22:59
728x90
[리눅스] 권한관련 명령어
- 권한의 변경 방법
chmod
파일이나 디렉터리의 접근 권한을 변경하기
아래 세부 설명
접근 권한의 종류
권한 |
파일 |
디렉터리 |
읽기 r |
파일을 읽거나 복사 할 수 있다. |
ls 명령으로 디렉터리 목록을 볼수 있다. ls 명령의 옵션은 실행 권한이 있어사 사용할 수 있다. |
쓰기 w |
파일을 수정, 이동 , 삭제 할 수 있다. (디렉터리에 쓰기 권한이 있어야 한다.) |
파일을 생성하거나 삭제 할 수있어야 한다. |
실행 x | 파일을 실행할 수 있다(셀 스크립트나 실행 파일의 ㅣ경우) |
cd명령을 사용할 수 있다. 파일을 디렉터리로 이동하거나 복사 할 수 있다. |
권한의 표기 방법
읽기 r 쓰기 w 실행 x 권한없는 경우 -
- 권한 표기
rwx rwx rwx
소유자 그룹 기타사용자
예시 1) r-x r-- --x 소유자는 읽기,실행권한 그룹은 읽기 권한만 기타 사용자는 실행권한만 가지고 있다.
예시 2) rwx -w- --- 소유자는 모든 권한 그룹은 쓰기권한 기타 사용자는 권한이 없음
- 권한의 변경 방법
chmod
파일이나 디렉터리의 접근 권한을 변경하기
chmod [옵션] 권한 모드 파일 또는 디렉터리 명
옵션 -R : 하위 디렉터리까지 모두 변경 할 수 있다.
변경 방법은 2가지 모드가 있음
- 기호 모드 : 접근권한을 변경하기 위해 문자와 기호를 사용하 여권한을 표시
- 숫자 모드 : 접근권한을 변경하기 위해 숫자를 사용
기호모드 : chmod [사용자 카테고리 문자] [연산자 기호] [접근 권한 문자]
에시 ) chmod [사용자 카테고리 문자] [연산자 기호] [접근 권한 문자]
u, g, o, a +, - r,w,x
에시 ) chmod u+w test test파일 소유자에 쓰기권한 추가 chmod g+wx test test 파일 그룹 카테고리에 쓰기와 실행권한 부여
chmod go-x test test 파일 그룹과 기타 사용자의 실행권한을 제거
a = ugo (즉 전체) chmod a-x test test 파일 사용자,그룹, 기타사용자 전체에 실행권한을 제거
4 2 1 4 2 1 4 2 1
숫자 모드 : r w x r w x r w x
소유자 그룹 다른사용자
4 1 1 4 2 1
예시 ) r - x - - x r w x
5 1 7
4 2 1 4 2 1 4 2 1
예시 ) r w x r w x r w x
7 7 7
chmod 517 test = chmod u+rx g+x o+rwx 소유자에게는 읽기와 실행을 그룹에게는 실행만을 다른사용자에게는 모든권한을 부여
기본 접근 권한 확인
명령어
umask
기본 접근 권한을 출력하거나 변경
umask [옵션] [마스크 값]
-S : 마스크 값을 문자로 출력 한다.
사용 예 : umask 022 umask
아무 인자 없이 umask 명령만 사용할 경우 기본 마스크 값 출력
값의 의미 :마스크 값은 파일이나 디렉터리 생성 시 부여하지 않을 권한을 지정해놓는 것
마스크 값이 002일경우 이는 -------w-이고, 기타 사용자에게 쓰기 권한은 부여하지 않겠다는 뜻
umask 0022 -> 디렉터리 755 [777-22] ex) 777-027 = 750 -> rwx r-x---
파일 644 [666-22] ex) 666-027 = 640 -> rw-r-----
6-7 = -1 음수는 0으로 표기 한다.
umask - umask 확인
umask 숫자 -umask 변경 ex) umask 077
특수 접근 권한
접근 권한은 원래 4자리
생략된 맨 앞자리는 특수 접근 권한을 의미
맨 앞자리 숫자가 0 이면 일반적인 접근 권한이지만 이 숫자가 1, 2, 4 이면 특수 접근 권한이 설정
SetUID : 맨 앞자리가 4 [해당 파일이 싱행되는 동안에는 파일 소유자의 권한으로 실행]
사용법 : 맨 앞자리에 4 ex) 4755
실습하기
- 755 -> /usr/bin 에서 passwd로 페스워드 바꾸려 하면 불가능
- 4755->/usr/bin 에서 passwd로 페스워드 변경 가능
- 변경 내용 확인하려변 ls -l -> grep passwd
SetGID : 맨 앞자리가 2 [해당 파일이 실행되는 동안에는 파일 소유 그룹의 권한으로 실행]
사용법 : 맨 앞자리에 2 ex)2755
스티기 비트 : 맨 앞자리가 1 [디렉터리에 설정 -> 누구나 파일 생성 가능]
다른사용자가 생성한 파일 삭제 불가
실습하기 : 777 -> user1 에서 파일 생성 -> user2 에서 삭제가능
1777 -> user1 에서 파일 생성 -> user2 에서 삭제 불가능
/tmp 디렉터리가 대표적
하얀배터리 블로그에 작성된 글의 무단 복제 , 수정을 금지 합니다.
개시물은 배운 내용을 바탕으로 하여 쓰여진 것이므로 잘못된 내용이 있을 수 있습니다. 잘못된 내용은 지적 바랍니다.
#하얀배터리 #IT #정보보안 #윈도우 #window #프로그래밍 #programming #html #java #C #javascript #database #jQuery #서버 #보안 #리눅스
728x90