데이터로그😎

[Linux] 7. 권한 (permission) 본문

Data Engineering

[Linux] 7. 권한 (permission)

지연v'_'v 2024. 1. 16. 17:42

권한에 대하여

unix 계열 시스템에서 permission을 통해 제어하는 대상 -> File & Directory

Permission = 어떤 User가 어떤 File & Directory에 대해 읽기/쓰기/실행을 할 수 있도록 혹은 없도록 하는 권한

 

A 유저가 생성한 perm.txt라는 파일에 B 유저가 글을 작성하려 한다면 permission denied 오류가 뜬다.

perm.txt 에 대한 권한을 확인해보자

ls -l perm.txt

 

  1.  type 
  2. access mode ( rw- / rw- / r --)
    • rw- : user의 권한(여기서 user는 owner를 의미) (read, wright) (실행권한은 X)
    • r- : group의 권한 (read) (쓰기, 실행권한은 X)
    • r-- : other 유저의 권한 (read) (쓰기, 실행권한은 X)
  3. -
  4. owner (perm.txt 파일은 ubuntu 사용자의 것이다.)
  5. group

 

권한 변경하기 - chmod

읽기 (read) , 쓰기 (wright) 권한  추가

파일에 대한 권한을 확인하려면 ls -l 파일이름 명령어를 사용하면 된다.

만약 그 결과, 아래와 같이 -rw-r--r-- 이라는 권한이 확인되었다.  위에서 설명한 바와 같이 owner에게는 읽기,쓰기 (r,w),

group은 읽기(r), 그 외의 사용자는 읽기(r) 권한이 부여되어 있다. 

 

만약 그 외의 사용자들이 해당 파일을 읽지 못하도록 read 권한을 제거하고 싶다면 어떻게 해야할까?

아래와 같이 chmod 명령어를 사용하면 된다. o-r은 other 사용자에게 r라는 권한을 제거(-)한다는 의미이다.

chmod 실행 후 ls -l을 통해 다시 한 번 권한을 확인해보았더니, other user의 r(읽기) 권한이 사라졌다.

 

실행 권한 (execute)  추가

chmod u+e perm.txt

u+e => user(owner)에게 execute 권한을 추가(+)한다.

 

디렉토리 권한

나의 시스템에는 ubuntu, duru라는 유저가 있다.

만약 duru라는 유저가 ubuntu 유저의 디렉토리에 접근할 수 있는 권한을 주고싶다면 어떻게 해야할까?

 

1. ubuntu 디렉토리 정보 확인

확인 결과 ubuntu는 ubuntu라는 group에 속한 사람들이 접근 가능하다. 그렇다면 duru를 ubuntu group에 넣어줘야겠지?

 

2. group에 새로운 user 추가

duru가 속한  group 확인 -> ubuntu 그룹에 속하게 된 것을 알 수 있다.

 

3. 계정을 duru로 변경 후, ubuntu 디렉토리 접속. 끝~