TIL [Linux] 사용 권한

김은혁·2021년 8월 23일
0

사용 권한

$ mkdir folder
$ nano file.js

위의 두 명령어를 통해 folder란 이름의 폴더와 file.js란 이름의 파일을 생성한 후에 $ ls -l 명령을 입력하면 현재 디렉토리에 위치한 파일과 폴더의 정보들이 출력된다.

사진의 왼쪽을 보면 -rw-rw-r--drwxrwxr-x같은 10글자의 표현이 적혀있다. 이 부분이 바로 리눅스에서 사용 권한을 나타내는 부분이다. 여기서 가장 앞 글자는 해당하는 것이 폴더인지 파일인지를 구분하며 d로 표시된 것은 폴더(directory)이고 -로 표시된 것은 파일이다.

뒤의 9글자는 3글자씩 나누어 사용자에 대한 권한, 그룹에 대한 권한, 나머지에 대한 권한을 표시한다. 각 3글자는 또 1글자씩 나누어 읽기 권한(read permission), 쓰기 권한(write permission), 실행 권한(execute permission)을 나타낸다. 각 부분에 대해 해당하는 사항은 r또는 w또는 x로 표시하고 해당하지 않는다면 -로 표시한다.

user

파일의 소유자. 기본적으로 파일을 만든 사람.

group

여러 user를 포함. 그룹에 속한 모든 user는 동일한 액세스 권한을 가짐.

other

파일을 만들지 않은 다른 모든 user. other 권한 설정은 해당 권한에 대한 global 권한 설정이라 볼 수 있음.

권한 변경

chmod명령어를 사용하면 폴더나 파일의 권한을 변경할 수 있다. 운영체제에 로그인한 사용자와 권한을 변경하고자 하는 폴더나 파일의 소유자가 같지 않다면 sudo를 통해 관리자임을 명시해주어야 한다.

  1. Symbolic method
Access classOperatorAccess Type
u (user)+ (add)r (read)
g (group)- (remove)w (write)
o (other)= (set exact)x (execute)
a (all)
// -rw-rw-r-- file.js
chmod u+x file.js // -rwx-rw-r--
chmod g-w file.js // -rwx-r--r--
chmod o+wx file.js // -rwx-r--rwx
chmod a= file.js // ----------
  1. Absolute form
PermissionNumber
r (read)4
w (write)2
x (Execute)1
// -rw-rw-r-- file.js
chmod 764 file.js // -rwxrw-r--
chmod 754 file.js // -rwxr-xr--
chmod 643 file.js // -rw-r---wx
chmod 000 file.js // ----------
chmod 100 file.js // ---x------
chmod 200 file.js // --w-------

0개의 댓글