읽기권한, 쓰기권한, 실행권한
Windows의 예시
예로 윈도우에 아무 폴더를 우클릭 한 뒤 보안 탭으로 들어가보면 권한 설정에 파일 쓰기 읽기 실행 권한을 줄 수 있는데 윈도우에서 이러한 권한 설정이 리눅스에서는 chmod에서 변경한다.
해당 파일의 소유자라는 소리인데 이러한 소유자또는 root 계정이 chmod로 해당 파일의 권한을 부여, 변경이 가능하다.
Windows의 예시
예로 윈도우에서 아무 폴더를 우클릭 한 뒤 속성에서 보안 탭으로 들어가면 아래 고급을 눌려보면 소유권이 나온다. 해당 소유권은 윈도우 계정으로 로그인한 사람의 계정과 administrator이라는 계정이 있을건데 이러한 소유권을 가진 사람이 해당 폴더의 접근 권한을 바꿀 수 있는 것처럼 리눅스에서는 chown이라는 명령어를 사용하여 변경한다.
권한에는 3종류로 나뉘고 3그룹에 적용되고 확인 시 2진수로 나타나는데 아래 표를 참조 하면 된다.
r(read) : 읽기 권한
w(write) : 쓰기 권한
x(execute) : 실행 권한
권한 확인 시 제일 앞에 나오는 파일 타입이 나오는 부분이 있는데 아래 3개정도만 알면 될거같다.
group (U,G,O)
owner(User) | Group | Other |
---|---|---|
r, w, x | r, w, x | r, w, x |
r = 4, w = 2, x = 1 | r = 4, w = 2, x = 1 | r = 4, w = 2, x = 1 |
4 + 2 + 1 | 4 + 2 + 1 | 4 + 2 + 1 |
즉, 권한을 확인 시
권한 | 2진수 | 설명 |
---|---|---|
-rwxrwxrwx | 777 | 소유자, 그룹사용자, 다른 사용자는 모든 읽기, 실행, 쓰기 권한을 가지고 있다. |
-rwx-wx--- | 730 | 소유자는 읽기,쓰기,실행 권한을 가지고 그룹 사용자는 쓰기와 실행권한을 가지고, 다른 사용자는 아무것도 할 수 없다. |
-rw-rw-rw- | 666 | 소유자, 그룹사용자, 다른 사용자는 읽기, 쓰기 권한을 가지지만 실행 권한은 없다. |
[허가권]
chmod[문법]
# chmod [권한(2진수)] [파일명] # chmod [u(User),g(Group),o(Other),a(all)(대상그룹)][+(추가),-(제거),=(초기화)][r,w,x] [파일명]
[ex]
# chmod 644 wonhyeok // wonhyeok라는 파을 권한을 644로 설정 # chmod a=rwx wonhyeok // wonhyeok라는 파일의 모두에게 rwx권한 설정 # chmod u+rw wonhyeok // wonhyeok라는 파일의 User(소유자) 그룹에 rw권한 추가 # chmod g-rw wonhyeok // wonhyeok라는 파일의 Group(소유그룹) 그룹에 rw권한 제거
[소유권]
chown[문법]
# chown root won // won의 소유자를 root로 변경 # chown [option] owner:[group] [파일명]
[ex]
# chown root wonhyeok:jin choi // choi파일의 wonhyeok그룹에서 jin그룹으로 파일 소유자 변경 # chown -R wonhyeok:jin choi // choi디렉토리 하위의 모든 파일을 wonhyeok그룹에서 jin그룹으로 파일 소유자 변경