0x0102

KDT - Linux 권한 본문

Study/System Engineer

KDT - Linux 권한

jxx_yxjx 2024. 1. 12. 10:25

리눅스를 사용하다보면 Permission denied를 접하는 경우가 생긴다.

리눅스에서 파일이나 디렉터리 관련 권한들은 한 사용자가 다른 사용자의 개인 파일에 접근하지 못하게 하거나

중요한 파일들을 함부로 제어하지 못하도록 하기 위해 고안되었다.

 

권한은 -rwxrwxrwx 형식으로, 10자리 비트로 확인할 수 있다.

첫 자리는 -(일반파일), d(디렉터리), l(심볼릭링크), b(블록장치), c(문자장치), s(소켓), p(이름 있는 파이프)를 나타낸다.

이 외 9자리의 알파벳은 3자리씩 묶어보면 되는데 첫 3비트는 소유자, 중간 3비트는 그룹, 마지막 3비트는 다른 사용자 및 그룹 권한이다.

r -  읽기(4) , w - 쓰기(2),  x - 실행(1) 형식이며 각 숫자는 해당 권한이 있는지를 나타낸다.

1,2,4 세 숫자의 합의 경우가 겹치지 않고 0~7을 구분할 수 있기 때문에 숫자로 권한을 제어한다.

 

특정 파일의 권한은 $ chmod 숫자3자리 파일명 형식으로 바꿀 수 있다.

-R 옵션으로 디렉터리 전체에 대해 권한 변경을 유발할 수도 있다.

vulp.c의 권한을 644로 변경해주면
다음과 같이 변경된 것을 확인할 수 있다.

 

파일 소유권은 root 계정만 변경할 수 있으므로

$ su - 로 루트계정으로 이동한 다음 chown을 이용해 소유주를 변경할 수 있다.

# chown 유저명 파일명 -> 소유주가 적힌 유저명으로 변경

+ # chown 유저명:그룹명 파일명 -> 그룹명 같이 변경 가능

'Study > System Engineer' 카테고리의 다른 글

KDT - Linux 프로세스 잡 관리  (0) 2024.01.16
KDT - Linux Text Editor  (1) 2024.01.15
KDT - Linux 파일시스템  (1) 2024.01.11
KDT - java 다형성과 이종모음  (0) 2024.01.10
KDT - Linux 셸  (1) 2024.01.10