리눅스 시스템을 운용하다 보면 흔히 접하는 ‘Permission denied’ 오류. 그 핵심 배경에는 리눅스의 파일 및 디렉토리 권한 체계가 숨어 있습니다. 이 글에서는 초보자도 이해할 수 있도록 권한의 개념, 구성, 명령어 사용법 그리고 실전 예시까지 꼼꼼하게 안내합니다.
목차
- 리눅스 권한, 왜 이렇게 중요할까요?
- 권한의 세 가지 핵심 요소: rwx
- 누가 권한을 가질까? (소유자, 그룹, 기타 사용자)
- 권한 변경의 마법사: chmod 명령어
- 소유자/그룹 변경: chown 및 chgrp 명령어
- 실전! 자주 사용되는 권한 설정 예시 및 팁
- 자주 묻는 질문
리눅스 권한, 왜 이렇게 중요할까요?
리눅스의 파일 및 디렉토리 권한은 단순한 기능이 아닙니다. 시스템의 보안과 안정성, 협업을 위한 활용성에 큰 영향을 미칩니다.
- 시스템 파일 보호 및 무단 접근 차단
- 프로세스 충돌 및 실행 오류 예방
- 효과적인 사용자·그룹별 접근 통제
예를 들어 웹 서버 설정 파일이나 DB 권한을 실수로 개방하면, 곧장 치명적인 보안 위협으로 발전할 수 있습니다.

권한의 세 가지 핵심 요소: rwx
리눅스 권한은 다음 세 가지로 구성됩니다.
- r (read): 파일 읽기 또는 디렉토리 내 파일 목록 보기
- w (write): 파일 수정 또는 디렉토리 내 항목 추가·삭제
- x (execute): 파일 실행 또는 디렉토리 진입
이 권한들은 4(r), 2(w), 1(x)의 숫자 값으로 요약되어 적용됩니다.
누가 권한을 가질까? (소유자, 그룹, 기타 사용자)
리눅스는 권한을 사용자 유형에 따라 구분 부여합니다.
- User(u): 해당 파일의 소유자
- Group(g): 소유자가 속한 그룹
- Others(o): 나머지 사용자
ls -l 명령을 통해 각 영역별 권한 정보를 확인할 수 있습니다.
-rwxr-xr-- 1 alice devs 4096 Sep 19 12:00 hello.sh
권한 변경의 마법사: chmod 명령어
chmod는 가장 많이 활용되는 권한 변경 명령어로, 두 가지 방식으로 사용됩니다.
심볼릭 모드
chmod u+x my_script.sh
chmod go-rw sensitive_file.txt
chmod a=rw- public_data.txt
8진수 모드
chmod 755 public_folder/
chmod 644 web_page.html

소유자/그룹 변경: chown 및 chgrp 명령어
파일의 소유자 또는 그룹만 변경하고 싶다면 다음 명령어를 사용합니다.
sudo chown newuser file.txt
sudo chown newuser:newgroup folder/
chgrp newgroup file.txt
실전! 자주 사용되는 권한 설정 예시 및 팁
chmod +x script.sh: 쉘 스크립트를 실행 가능하게 설정chmod 755 uploads/: 디렉토리에 접근 권한 부여chmod 644 index.html: 웹 파일은 소유자는 수정 가능, 나머지는 읽기만 허용chmod 600 config.conf: 민감한 설정파일은 소유자만 접근 가능
Tip: -R 옵션은 재귀적으로 권한 변화를 주지만, 신중하게 사용해야 보안 사고를 막을 수 있습니다.
자주 묻는 질문 (FAQ)
Q: chmod 사용 시 숫자값이 기억나지 않아요. 어떻게 하나요?
A: 심볼릭 모드(u+x 등)를 사용하면 보다 직관적으로 기억할 수 있어 초보자에게 추천됩니다.
Q: chmod 777 설정은 정말 위험한가요?
A: 네. 모든 사용자에게 쓰기 권한을 주므로 악의적인 코드 실행이나 파일 손상이 발생할 수 있습니다.
Q: 디렉토리는 왜 실행(x) 권한이 필요한가요?
A: 디렉토리의 x 권한은 내부 파일·폴더에 접근하고 이동할 수 있도록 해주는 필수 요소입니다.