박봉달의 개발생활
[프로그래밍:서버] UNIX #2 : 퍼미션/소유자 관리 본문
안녕하세요!
박봉달입니다!
유닉스는 특히 서버에 많이 쓰이는 운영체제입니다
우리가 많이 쓰는 윈도우와는 다른 방식으로 구성되어있는데요,
오늘은 유닉스(Unix) 퍼미션/소유자 에 대해서 알아보도록 하겠습니다!
1. 퍼미션/소유자 개요
* 파일의 접근 권한
- 자신의 파일과 디렉터리 중에서 다른 사용자가 접근해도 되는 것과 그렇지 않은 것을 구분하여 접근 권한 제한
- 파일에 무단으로 접근하는 것을 방지하고 보호
* file [파일명] 명령어
- 파일의 종류를 알려주는 명령어
file cmp_test
-> empty file
file cmp_test2
-> ascii text
file cptest
-> directory
file slncptest
-> directory
* 파일 종류
- : 일반 파일을 의미(하드링크 파일은 일반파일로 취급)
d : 디렉토리 파일
l : 심볼릭 링크 파일
b : Block Device 의미
c : Character Device 의미
* 사용자 별 사용권한 분류
2. 퍼미션/소유자 명령어
* chmod 명령어
- 파일이나 디렉토리의 접근 권한을 변경
- 기호모드 : 접근 권한을 변경하기위해 문자와 기호 사용하여 권한 표시
- 숫자모드 : 접근 권한 변경하기위해 숫자 사용하여 표시
- -R : 하위 디렉토리까지 변경
* 기호모드 권한 변경
- 사용자 카테고리 : 소유자, 그룹, 기타 사용자
- 연산자 : 권한 부여 및 제거 나타내는 기호
- 권한 : 읽기, 쓰기, 실행 나타내는 문자
- 각 사용자 그룹에 권한 설정을 동시에 할 경우, 각 기호별 권한 설정 사이에 ,(컴마)로 구분하고 공백문자 사용 불가!!
chmod g+wx test2 // 그룹에 읽기와 실행권한 부여
chmod o+x test2 // 기타 사용자에게 실행권한 부여
chmod a+x test2 // 모든 사용자에게 실행권한 부여
chmod u+w,g-w test2 // 공백문자 금지!!
* 숫자모드를 이용한 권한 변경
- 기호모드로 표기하는 경우 가독성 높으나 전체적 권한 조정시 문자의 조합 복잡해짐
- 숫자모드에선 각 권한이 있고 없고를 0과 1로 표기하고 이를 환산하여 숫자로 표현
- 권한에 조합에 따라 0~7까지로 나타내는 것
- 각 위치가 사용자 카테고리를 나타내기 때문에 사용자 카테고리를 따로 지정할 필요가 없음
- 항상 세자리 수를 사용해야하므로 사용자 뿐 아니라 그룹과 기타 사용자의 권한도 반드시 명시!
chmod 444 test2 // 모든 사용자 읽기 권한만 부여
umask [마스크값]
* 마스크 값
- 리눅스에서는 파일이나 디렉터리 생성할 때 기본 접근 권한이 자동적으로 설정
- 파일이나 디렉터리 생성 시 부여하지 않을 권한을 설정해놓는 것
- 기본 접근 권한 확인하고 변경하기 : umask
마스크 값이 002 일 경우
--- --- -w-이고, 기타 사용자에게 쓰기 권한은 부여하지 않겠다는 의미
- umask 로 마스크 값을 바꿀 때 파일과 디렉터리에 모두 적용해봐야함
- 마스크 값이 파일엔 적합하나 디렉터리에 적합하지 않을 수 있다!
- 마스크 값 변경은 굉장히 주의해야함 !!!
이상으로 유닉스 포스팅을 마칩니다!
정리한 내용이 나중에 쓰이길 바라며 포스트를 마칩니다 :)
'IT > UNIX' 카테고리의 다른 글
[프로그래밍:서버] UNIX #6 : 유닉스 셸의 종류와 기능, 환경 변수 (0) | 2021.01.16 |
---|---|
[프로그래밍:서버] UNIX #5 : vi 에디터 개요와 활용 / 명령어 (0) | 2021.01.13 |
[프로그래밍:서버] UNIX #4: 디렉토리 생성/삭제 (0) | 2021.01.05 |
[프로그래밍:서버] UNIX #3 : 유닉스 디렉토리의 개요 (0) | 2021.01.04 |
[프로그래밍:서버] UNIX #1 : 유닉스 파일 조작 (0) | 2020.12.30 |