「누가 무엇을 할 수 있나」를 제어하는 게 파일 권한입니다.
리눅스 보안의 가장 기본기.
다음 차수에서 깊이 다루지만, 디렉토리 구조와 떼어 생각할 수 없어 미리 큰 그림을.
ls -l 출력.
-rwxr-xr-- 1 alice group 1234 Apr 27 12:00 file.txt.
첫 글자(- 일반 파일, d 디렉토리, l 심링크).
그 다음 9글자가 「소유자(rwx) 그룹(rwx) 기타(rwx)」 9개 비트.
r=읽기, w=쓰기, x=실행.
chmod로 변경.
chmod u+x file.sh — 소유자에게 실행 권한 추가.
chmod 755 file.sh — 숫자 표기(7=rwx, 5=r-x, 5=r-x).
자주 쓰는 패턴: 755(실행 파일·디렉토리), 644(일반 파일), 600(비밀 파일).
디렉토리 권한 의미가 다름.
r=목록 보기(ls), w=안에 파일 만들기·삭제, x=안에 들어가기(cd).
x 없으면 안에 파일 있어도 접근 불가.
흔한 실수 — 폴더에 644 주면 ls는 되지만 cd 안 됨.
소유자 변경.
chown user:group file — 소유자·그룹 변경.
-R 옵션으로 재귀.
일반적으로 root만 가능.
잘못된 ownership으로 「내 파일인데 못 읽음」 같은 사고가 흔함 — sudo chown $USER:$USER file로 회수.
한 줄 요약
ls -l의 rwxr-xr-- 9비트가 권한(소유자·그룹·기타).
chmod 755·644·600이 흔한 패턴.
디렉토리 x는 안에 들어가기 의미.
chown으로 소유자 변경, 잘못 설정 시 접근 불가.
더 알아볼 것
- umask로 기본 권한
- setuid·setgid·sticky bit
- ACL — 더 세밀한 권한