🗝️ chmod 권한 계산기
체크박스, 숫자(755), 기호(rwxr-xr-x) 중 아무거나 바꾸면 나머지가 함께 바뀌어요. 완성된 chmod 명령어를 그대로 복사해 쓰세요.
사용법
- 체크박스에서 소유자·그룹·기타 사용자마다 읽기·쓰기·실행을 고르세요. 오른쪽 숫자와 위의 755·rwxr-xr-x가 바로 바뀌어요.
- 반대로 8진수 입력에
644·4755를 넣거나, 기호 입력에rw-r--r--(ls -l 결과 그대로-rw-r--r--도 OK)를 넣어도 돼요.u+x,go-w,u=rwx,g=rx,o=같은 chmod 기호를 넣으면 지금 권한에 적용한 결과를 보여 줘요. - 자주 쓰는 권한은 프리셋 버튼(644, 755, 600 …)으로 한 번에 고를 수 있어요.
- command에서 숫자 방식·기호 방식 chmod 명령어를 복사하세요. 파일 이름과
-R(하위 전체) 옵션을 넣을 수 있어요.
리눅스 파일 권한 읽는 법
ls -l로 보이는 -rwxr-xr-x는 맨 앞 한 글자가 종류(- 파일, d 폴더, l 링크)이고, 나머지 9글자를 3글자씩 끊어 소유자(u) · 그룹(g) · 기타 사용자(o)의 권한을 나타내요. 각 3글자는 읽기(r)·쓰기(w)·실행(x) 순서이고, 권한이 없으면 -예요.
숫자는 r=4, w=2, x=1을 더한 값이에요. rwx = 4+2+1 = 7, r-x = 4+1 = 5, rw- = 4+2 = 6. 그래서 rwxr-xr-x = 755, rw-r--r-- = 644예요. 8진수 한 자리가 정확히 3비트라서 권한을 8진수로 써요.
| 숫자 | 기호 | 권한 |
|---|---|---|
| 0 | --- | 권한 없음 |
| 1 | --x | 실행 |
| 2 | -w- | 쓰기 |
| 3 | -wx | 쓰기·실행 |
| 4 | r-- | 읽기 |
| 5 | r-x | 읽기·실행 |
| 6 | rw- | 읽기·쓰기 |
| 7 | rwx | 읽기·쓰기·실행 |
자주 쓰는 권한
| 숫자 | 기호 | 쓰는 곳 |
|---|---|---|
| 644 | rw-r--r-- | 일반 파일, 웹 페이지(HTML·이미지), 설정 파일 |
| 755 | rwxr-xr-x | 폴더, 실행 스크립트, 웹 서버 디렉터리 |
| 600 | rw------- | SSH 개인 키(id_rsa), .env, 비밀번호 파일 |
| 400 | r-------- | AWS .pem 키 (600·400이 아니면 ssh가 거부) |
| 700 | rwx------ | ~/.ssh 폴더, 개인 스크립트 |
| 664 / 775 | rw-rw-r-- / rwxrwxr-x | 같은 그룹끼리 함께 고치는 파일·폴더 |
| 777 | rwxrwxrwx | 누구나 모든 권한 — 테스트 외에는 쓰지 마세요 |
폴더에서는 의미가 조금 달라요. r은 목록 보기(ls), w는 안에 파일 만들기·지우기·이름 바꾸기, x는 들어가기(cd)와 안의 파일에 접근하기예요. 폴더에 x가 없으면 r이 있어도 안의 파일을 열 수 없어서, 폴더는 보통 755나 700처럼 x를 함께 줘요.
특수 권한 — setuid · setgid · sticky
| 이름 | 앞자리 | 표시 | 효과 | 예 |
|---|---|---|---|---|
| setuid | 4 | 소유자 x 자리에 s | 실행하는 사람이 아니라 파일 소유자 권한으로 실행 | /usr/bin/passwd (4755) |
| setgid | 2 | 그룹 x 자리에 s | 파일: 그룹 권한으로 실행 / 폴더: 새 파일이 폴더 그룹을 물려받음 | 공유 폴더 (2775) |
| sticky | 1 | 기타 x 자리에 t | 폴더 안 파일을 소유자만 지우거나 이름 바꿀 수 있음 | /tmp (1777) |
특수 권한은 네 자리 숫자의 맨 앞자리로 써요. 4755 = setuid + 755 = rwsr-xr-x. 실행 권한 없이 특수 권한만 있으면 대문자(S, T)로 표시되고, 대부분 설정 실수예요.
umask와 기본 권한
새 파일·폴더를 만들 때 권한은 umask가 정해요. 파일은 666, 폴더는 777에서 umask에 해당하는 비트를 빼요. 대부분의 리눅스 기본값 022이면 파일 644, 폴더 755가 되고, 002(그룹 공동 작업)면 664·775, 077(나만 보기)면 600·700이에요. 현재 값은 터미널에서 umask로 확인하고, ~/.bashrc에 umask 027처럼 적어 바꿀 수 있어요. 새 파일에 실행 권한이 자동으로 붙지 않는 이유도 시작값이 666이기 때문이에요.
GNU chmod는 폴더의 setuid·setgid 비트를 숫자 모드(예: chmod 755 dir)로는 지우지 않고 유지해요. 지우려면 chmod g-s dir처럼 기호로 쓰거나 chmod 00755 dir처럼 다섯 자리로 쓰세요. 이 계산기는 권한 숫자와 기호만 계산하며 실제 파일에는 아무것도 하지 않아요.