리눅스에서 chmod 명령어를 사용하여 파일 및 디렉토리의 접근 권한을 설정하는 방법을 배우고 싶으신가요? chmod -R 755, chmod 777, chmod 775 등의 숫자 조합이 의미하는 바를 자세히 설명해 드리겠습니다. 이 가이드를 통해 리눅스 파일 권한을 완벽하게 이해하고, 실무에서 활용할 수 있도록 도와드리겠습니다.

1. chmod 명령어란?
chmod(Change Mode)는 파일이나 디렉토리의 권한(permission) 을 변경하는 리눅스 명령어입니다. chmod를 사용하면 특정 사용자나 그룹이 파일을 읽고(r), 쓰고(w), 실행(x)할 수 있는지를 설정할 수 있습니다.
2. chmod 숫자 표기법 이해하기
chmod 명령어 뒤에 붙는 3자리 숫자(755, 777, 644 등)는 파일 권한을 설정하는 값을 나타냅니다.
(1) 숫자 의미
각 숫자는 소유자(Owner), 그룹(Group), 기타 사용자(Others) 의 권한을 나타냅니다.
[소유자] [그룹] [기타 사용자]
각 숫자는 다음과 같은 권한 값을 가집니다.
권한기호값
읽기(Read) | r | 4 |
쓰기(Write) | w | 2 |
실행(Execute) | x | 1 |
없음 | - | 0 |
각 권한을 더하면 다음과 같은 조합이 됩니다:
- 7 = rwx (읽기 + 쓰기 + 실행)
- 6 = rw- (읽기 + 쓰기)
- 5 = r-x (읽기 + 실행)
- 4 = r-- (읽기만 가능)
3. chmod 755, 777, 775, 644 차이점
(1) chmod 755 - 웹 서버에서 가장 많이 사용되는 설정
chmod -R 755 /var/www/html
✅ 설정 내용:
- 소유자(7): rwx (읽기, 쓰기, 실행 가능)
- 그룹(5): r-x (읽기, 실행 가능)
- 기타 사용자(5): r-x (읽기, 실행 가능)
📌 사용 사례:
- 웹 서버에서 755 권한을 주면 소유자는 파일을 편집할 수 있지만, 방문자는 실행(접근)만 가능합니다.
(2) chmod 777 - 보안상 위험한 설정
chmod 777 /path/to/file
✅ 설정 내용:
- 소유자(7): rwx
- 그룹(7): rwx
- 기타 사용자(7): rwx
⚠️ 보안상 주의 필요!
- 모든 사용자가 읽기/쓰기/실행이 가능하여 파일이 쉽게 변경될 수 있음.
- 외부 공격자가 악성 스크립트를 업로드할 경우 심각한 보안 문제가 발생할 수 있음.
📌 사용 사례:
- 임시 파일 수정 시 사용(완료 후 반드시 권한을 제한해야 함).
- 개발 환경에서 테스트할 때만 사용.
(3) chmod 775 - 팀 프로젝트 협업에 적합한 설정
chmod 775 /path/to/dir
✅ 설정 내용:
- 소유자(7): rwx
- 그룹(7): rwx
- 기타 사용자(5): r-x
📌 사용 사례:
- 같은 그룹 내 사용자들이 편집할 수 있도록 할 때 사용.
- 팀 프로젝트에서 여러 개발자가 특정 디렉토리를 공유할 때 적합.
(4) chmod 644 - 일반적인 문서 파일 설정
chmod 644 /path/to/file
✅ 설정 내용:
- 소유자(6): rw-
- 그룹(4): r--
- 기타 사용자(4): r--
📌 사용 사례:
- 설정 파일, 문서 파일 등 읽기만 가능하도록 설정할 때 사용.
- 예: /etc/hosts, /etc/passwd 파일 등.
4. chmod 설정 예제
chmod 값 | 소유자 | 그룹 | 기타 사용자 | 설명 |
777 | rwx | rwx | rwx | 모든 사용자에게 모든 권한 부여 (보안 위험) |
755 | rwx | r-x | r-x | 소유자는 모든 권한, 나머지는 읽기/실행만 가능 (웹 서버) |
775 | rwx | rwx | r-x | 팀 프로젝트에서 같은 그룹 사용자에게 쓰기 권한 부여 |
644 | rw- | r-- | r-- | 소유자는 읽기/쓰기, 나머지는 읽기만 가능 (문서 파일) |
600 | rw- | --- | --- | 소유자만 읽기/쓰기 가능 (보안 파일) |
5. 결론
리눅스에서 chmod는 파일과 디렉토리의 접근 권한을 설정하는 필수 명령어입니다.
💡 가장 많이 사용되는 chmod 값 정리:
- chmod 755 → 소유자는 모든 권한, 나머지는 읽기/실행만 가능 (웹 서버 추천)
- chmod 777 → 모든 사용자가 모든 권한을 가짐 (보안상 위험)
- chmod 775 → 같은 그룹 내 사용자가 편집 가능 (팀 협업용)
- chmod 644 → 소유자는 쓰기 가능, 나머지는 읽기만 가능 (문서 파일 설정)
📌 chmod 설정 시 주의할 점:
- 보안이 중요한 파일(.ssh, 설정 파일 등)은 chmod 600 또는 chmod 400을 사용하세요.
- 웹 서버 디렉토리는 chmod 755로 설정하고, chmod 777은 지양하세요.
- 그룹 내 협업이 필요한 디렉토리는 chmod 775를 활용하세요.
Java Heap Space란? 개념부터 해결 방법까지 가이드
Java 애플리케이션을 실행하는 동안 OutOfMemoryError: Java heap space 오류가 발생한 적이 있나요? 이 오류는 Java의 메모리 관리와 관련된 문제로, 적절한 조치를 취하지 않으면 시스템 성능 저하 및 애플
aboutevery.tistory.com
서버 기동 시 Out of Memory(OOM) 오류 원인과 해결 방법
서버를 기동할 때 Out of Memory (OOM) 오류가 발생하면 시스템이 할당된 메모리를 초과하여 사용하고 있다는 의미입니다. 이는 웹 애플리케이션, 데이터베이스, 컨테이너 환경 등 다양한 상황에서
aboutevery.tistory.com
CMD 명령어 ipconfig /all 완벽 가이드: 개념부터 활용까지
네트워크 문제를 해결하거나 현재 사용 중인 IP 주소를 확인하려면 ipconfig /all 명령어를 사용할 수 있습니다. 특히, Windows 운영체제에서 네트워크 설정을 확인하는 필수적인 명령어로, 다양한 정
aboutevery.tistory.com
'개발' 카테고리의 다른 글
서버 리소스 부족 현상 해결 가이드: CPU, 메모리, 디스크, 네트워크 문제 해결법 (0) | 2025.03.24 |
---|---|
(초보부터 전문가까지 알아야 할 )리눅스 필수 명령어 정리 (0) | 2025.03.24 |
서버의 코어(Core)란? 고성능 서버의 핵심 개념과 최적화 방법 (0) | 2025.03.12 |
Java Heap Space란? 개념부터 해결 방법까지 가이드 (0) | 2025.03.12 |
반응형 웹이란? 개념부터 적용 방법까지 (0) | 2025.03.12 |
댓글