chmod 계산기
| 등급 | 읽기(r) | 쓰기(w) | 실행(x) |
|---|---|---|---|
| 소유자 | |||
| 그룹 | |||
| 기타 |
Unix 파일 권한은 사용자, 그룹, 기타 각각에 대해 읽기, 쓰기, 실행 세 비트씩, 총 세 묶음으로 구성되며 이를 깔끔하게 세 자리 8진수로 압축할 수 있습니다. chmod 755 script.sh는 rwxr-xr-x입니다. 소유자는 모든 권한을 갖고, 그룹과 기타 사용자는 읽기와 실행 권한을 갖습니다. 이 계산기는 각 체크박스를 토글하면 8진수 값이 즉시 바뀌는 것을 보여주고, 8진수 숫자를 붙여넣으면 rwx 구성을 풀어 보여줍니다, 복사할 수 있는 정확한 chmod 명령까지 함께 제공합니다.
chmod 권한 작동 방식
-
1
9개 권한 비트 토글
세 그룹(사용자, 그룹, 기타) × 세 권한(읽기, 쓰기, 실행) = 9개 체크박스입니다.
-
2
각 그룹이 하나의 8진수 자릿수가 됨
읽기 = 4, 쓰기 = 2, 실행 = 1입니다. 활성화하려는 비트를 더하면 됩니다.
-
3
결과 8진수와 기호 표기 확인
예: 755 → rwxr-xr-x; 644 → rw-r--r--; 600 → rw-------.
-
4
chmod 명령 복사
도구는 현재 권한에 맞는 chmod 명령을 복사할 수 있게 보여 줍니다. 예: chmod 755 파일명, chmod u+x 파일명, chmod -R 755 디렉터리.
권한 비트 값
| 비트 | 값 | 파일에서의 의미 | 디렉터리에서의 의미 |
|---|---|---|---|
| 읽기 | 4 | 내용을 볼 수 있음 | 항목 목록을 볼 수 있음 |
| 쓰기 | 2 | 수정할 수 있음 | 항목 생성 / 삭제 / 이름 변경 가능 |
| 실행 | 1 | 프로그램으로 실행할 수 있음 | 순회 가능(cd로 들어가거나 내부 접근) |
자주 쓰는 chmod 값
| 8진수 | 기호 표기 | 일반적인 용도 |
|---|---|---|
| 777 | rwxrwxrwx | 누구나 쓰기 가능, 위험하며 거의 적절하지 않음 |
| 755 | rwxr-xr-x | 스크립트, 바이너리, 디렉터리 |
| 750 | rwxr-x--- | 나와 내 그룹 전용 스크립트 |
| 700 | rwx------ | 나만 쓰는 스크립트(SSH, ~/.ssh) |
| 644 | rw-r--r-- | 공개 문서, 이미지, HTML |
| 640 | rw-r----- | 그룹이 읽을 수 있는 설정 파일 |
| 600 | rw------- | 비공개 설정, SSH 개인 키, ~/.netrc |
| 444 | r--r--r-- | 읽기 전용으로 게시된 파일 |
| 400 | r-------- | 비공개 읽기 전용(거의 적절하지 않음; 600 사용) |
특수 권한(드물지만 중요)
- setuid (4xxx): 누가 실행하든 파일 소유자의 권한으로 실행합니다.
/usr/bin/passwd가 이를 사용합니다. - setgid (2xxx): 파일에서는 그룹 권한으로 실행합니다. 디렉터리에서는 새 파일이 디렉터리의 그룹을 상속합니다.
- sticky bit (1xxx): 디렉터리에서 파일 소유자만 삭제/이름 변경을 할 수 있게 합니다.
/tmp가 이를 사용합니다.
네 자리 8진수에는 이러한 비트가 포함됩니다. chmod 4755 setuid-binary는 755와 함께 setuid를 켭니다.
기호식 chmod
많은 관리자는 점진적 변경에 symbolic 형식을 선호합니다:
chmod u+x script, 소유자에게만 실행 권한을 추가합니다.chmod go-w file, 그룹과 기타에서 쓰기 권한을 제거합니다.chmod a+r file, 모두(사용자, 그룹, 기타)에게 읽기 권한을 부여합니다.chmod u=rw,go=r file, 정확히 이 비트들로 설정합니다.chmod -R 755 directory, 재귀 적용.
흔한 실수
- 업로드 폴더에 777 적용: “권한 문제를 고치는” 것처럼 보이지만 실제로는 서버를 공격자에게 열어 줍니다. 더 좁은 조합을 사용하세요(예: 올바른 그룹 소유권과 함께 755).
- 디렉터리에 chmod -R 644 적용: 디렉터리의 실행 권한이 제거되어
cd로 들어갈 수 없습니다. 디렉터리에는 755, 일반 파일에는 644를 사용하세요. - 0600 vs 600: 앞의 0은 C와 셸에서 8진수를 뜻합니다. 대부분의 chmod 구현은 둘 다 허용합니다.
- Umask: 새 파일은 666에서 umask를 뺀 권한을 상속합니다. 기본 umask 022는 파일 644, 디렉터리 755를 만듭니다.
자주 묻는 질문
보통 소유자는 수정할 수 있고, 다른 사람들은 목록을 보고 순회할 수 있기를 원합니다. 755 = 소유자에게 rwx, 그룹과 기타에게 r-x, 바로 그 조합입니다.
거의 절대 쓰지 않습니다. 777은 시스템의 누구나 파일을 수정할 수 있게 합니다. 다중 사용자 시스템에서는 보안 취약점이고, 단일 사용자 시스템에서는 불필요합니다(소유자는 755만으로도 이미 rwx를 가집니다). 웹 앱이 777을 필요로 하는 것처럼 보인다면, 실제 해결책은 올바른 소유권(chown) 또는 그룹 멤버십입니다.
~/.ssh 디렉터리: 700. 개인 키(id_rsa, id_ed25519): 600. 공개 키(.pub): 644. authorized_keys: 600. SSH는 안전 조치로 더 넓은 권한의 키 사용을 거부합니다.
소유자는 chown, 그룹은 chgrp로 바꿉니다, 별도의 명령입니다. chmod는 비트만 바꾸며, 파일을 소유한 사용자/그룹은 바꾸지 않습니다.
관련 도구
ASCII 표 참조
NUL, LF, DEL 같은 제어 문자를 포함해 모든 문자에 대한 10진수, 16진수, 8진수, 2진수, HTML 숫자 문자 참조를 담은 0부터 127까지의 전체 ASCII 표.
키보드 단축키 참고표
macOS, Windows, Linux에서 VS Code, Chrome, GNU Readline을 쓰는 Bash의 문서화된 기본 단축키를 검색합니다.
보색 찾기
어떤 입력에 대해서도 보색을 찾습니다. HSL 반대 색, 분할 보색 쌍, 그리고 접근성 있는 조합 제안을 반환합니다.
랜덤 영어 글자 생성기
A-Z 영어 글자를 무작위로 생성합니다. 개수와 대문자, 소문자, 혼합 대소문자를 선택해 게임, 과제, 수업 활동에 활용하세요.
랜덤 색상 팔레트 생성기
2~15개의 색상으로 랜덤 팔레트를 만들고, 비비드, 파스텔, muted, dark 스타일을 선택한 뒤 HEX 코드나 CSS 변수를 복사하세요.
2진수 8진수 변환기
비트를 세 개씩 묶어 2진수를 8진수로 변환합니다. Unix 권한, 레거시 시스템, 간결한 숫자 표시에 유용합니다.