비전공자 코딩 배우기_15주차 리눅스(Linux) 사용 권한

Jinny·2021년 8월 24일
0

TIL

목록 보기
12/28
post-thumbnail

리눅스(Linux)

Linux에서 사용하는 폴더와 파일에는 권한이 있다. 그 권한은 읽기(Read), 쓰기(Write), 실행(Execute)으로 나눌 수 있다.

Read, Write, Execute 권한

CLI에 명령어 ls -l 을 입력했다.

가장 왼쪽에 있는 영문을 살펴보자.

  • - : not directory
  • d : directory
  • r : read permission
  • w : write permission
  • x : execute permission

첫 번째 폴더를 예로 들면, d / rwx / r-x / r-x 이고 directory / owner / group / other 순이다.

이 폴더는 소유자는 읽기, 쓰기, 실행 권한을 가지고 있고 다른 사용자 그룹은 읽기와 실행만 가능하다.


user

user은 파일의 소유자이다. 기본적으로 파일을 만든 사람이 소유자가 된다.

group

group에는 여러 user가 포함될 수 있다. 그룹에 속한 모든 user은 파일에 대한 동일한 group 액세스 권한을 갖는다.

많은 사람이 파일에 엑세스해야 하는 프로젝트가 있다고 가정하면, 모든 user를 group에 추가하고, 파일에 group 권한을 할당할 수 있다.

other

파일에 대한 엑세스 권한이 있는 다른 user이다. 파일을 만들지 않은 다른 모든 user를 의미한다.

따라서 other 권한을 설정하면, 해당 권한을 global 권한 설정이라고 본다.


권한을 변경하는 chmod 명령어

명령어 chmod 폴더나 파일의 읽기, 쓰기, 실행 권한을 변경할 수 있다.

OS에 로그인한 사용자와 폴더나 파일의 소유자가 같을 경우에 명령어 chmod 로 폴더나 파일의 권한을 변경할 수 있다.

만약 소유자가 다른 경우에는 관리자 권한의 명령어인 sudo 를 이용해 변경할 수 있다.


chmod 로 권한을 변경하는 방식

🔎 더하기(+), 빼기(-), 할당(=)과 엑세스 유형을 표기해서 변경하는 Symbolic method

명령어 chmod 뒤에 변경할 권한을 입력한다.

엑세스 클래스의 u, g, o, a를 변경할 조건에 따라 조합하여 입력하고, 연산자와 엑세스 타입을 순서대로 입력한다.

chmod g-r filename # removes read permission from group
chmod g+r filename # adds read permission to group
chmod g-w filename # removes write permission from group
chmod g+w filename # adds write permission to group
chmod g-x filename # removes execute permission from group
chmod g+x filename # adds execute permission to group
chmod o-r filename # removes read permission from other
chmod o+r filename # adds read permission to other
chmod o-w filename # removes write permission from other
chmod o+w filename # adds write permission to other
chmod o-x filename # removes execute permission from other
chmod o+x filename # adds execute permission to other
chmod u+x filename # adds execute permission to user

🔎 rwx를 3 bit로 해석하여, 숫자 3자리로 권한을 표기해서 변경하는 Absolute form

사용자, 그룹, 또는 다른 사용자나 그룹마다 rwx 가 나타나고, 각 영역의 boolean 값으로 표기할 수 있다.

만약, user는 rwx 를, group과 other은 r-- 로 권한을 변경하려고 한다면 숫자의 합을 user, group, other 순으로 입력하여 사용한다.

// u=rwx (4 + 2 + 1 = 7), go=r (4 + 0 + 0 = 4)
chmod 744 test.js # -rwxr--r--

profile
코린이

0개의 댓글