리눅스 파일 권한 변경 명령어 총정리: chmod, chown, chgrp 완벽 가이드
파일 편집하려고 했더니 "Permission denied" 뜬 적 있으시죠? chmod와 chown, chgrp만 제대로 알아도 이런 문제는 1초 만에 해결됩니다!
안녕하세요! 오늘은 리눅스에서 정말 자주 마주치는, 하지만 헷갈리기도 쉬운 파일 권한 명령어들을 소개할게요. 저도 리눅스 처음 배울 때 chmod 755
이런 숫자가 너무 낯설고, chown
쓰면 뭔가 망가질 것 같아서 무서웠거든요. 그런데 알고 보면 생각보다 쉽고, 실무에서는 꼭 알아야 할 필수 도구들이랍니다. 오늘 이 글 하나로 chmod, chown, chgrp를 모두 정복해봐요!
목차
1. chmod: 권한 설정의 핵심
chmod
는 파일이나 디렉토리의 접근 권한을 설정하는 명령어예요. 권한은 사용자(User), 그룹(Group), 다른 사용자(Others)로 나뉘며, 읽기(r), 쓰기(w), 실행(x) 권한을 숫자나 기호로 설정할 수 있어요. 대표적인 예시가 chmod 755
또는 chmod u+x
입니다.
chmod 755 script.sh
chmod u+x myfile.sh
chmod -R 644 /var/www/html
2. chown: 소유자 변경 명령어
chown
은 파일이나 디렉토리의 소유자를 변경하는 명령어예요. 일반적으로 루트 권한이 필요하고, 사용자:그룹
형태로 변경합니다. 실수로 잘못 설정된 파일 소유권을 바로잡거나, 웹 서버와 같은 서비스용 계정에 권한을 줄 때 자주 사용됩니다.
명령어 | 설명 |
---|---|
chown user file.txt | 소유자만 변경 |
chown user:group file.txt | 소유자와 그룹 함께 변경 |
chown -R user:group /home/user | 하위 디렉토리 포함 변경 |
3. chgrp: 그룹 변경 실전 사용
chgrp
는 파일이나 디렉토리의 그룹만 따로 바꾸고 싶을 때 사용하는 명령어예요. chown과 달리 소유자는 그대로 두고 그룹만 바꾸기 때문에, 공동 작업 디렉토리 구성할 때 아주 유용해요.
chgrp developers file.txt
: file.txt의 그룹을 developers로 변경chgrp -R staff /shared/folder
: 하위 폴더 포함 그룹 변경
4. 퍼미션 숫자 의미와 조합법
chmod에서 숫자 방식(예: 755, 644 등)은 권한을 3자리 숫자로 표현합니다. 각 자리는 사용자(User), 그룹(Group), 기타(Others)에 대한 권한을 의미하며, 각 권한은 아래 숫자 조합으로 구성돼요:
숫자 | 권한 | 설명 |
---|---|---|
7 | rwx | 읽기 + 쓰기 + 실행 |
6 | rw- | 읽기 + 쓰기 |
5 | r-x | 읽기 + 실행 |
4 | r-- | 읽기만 가능 |
0 | --- | 권한 없음 |
5. 실무에서 자주 쓰는 예시
chmod 755
: 실행 파일에 적절한 권한 설정 (rwxr-xr-x)chmod 644
: 일반 문서 파일 권장 설정 (rw-r--r--)chown www-data index.html
: 웹서버 사용자에게 소유권 넘기기chgrp developers team_project/
: 개발자 그룹에게 디렉토리 공유chmod -R 700 ~/secure_data
: 내 데이터 폴더를 나만 접근 가능하게 설정
6. 자주 묻는 질문 FAQ
항상 위험한 건 아니지만, 모든 사용자에게 모든 권한을 주는 설정이기 때문에 민감한 파일에는 절대 사용하면 안 돼요. 공개 디렉토리에도 주의해야 합니다.
해당 파일의 소유자가 아니거나, 루트 권한이 필요한 경우 권한 변경이 제한돼요. sudo
를 붙여보거나, 파일 소유자부터 확인해보세요.
chown은 사용자와 그룹을 모두 변경할 수 있고, chgrp는 그룹만 변경해요. 공동 작업 시에는 chgrp만으로도 충분할 수 있어요.
chmod +x 파일명
또는 chmod u+x 파일명
처럼 사용할 수 있어요. 파일을 실행 가능한 상태로 만들 때 자주 씁니다.
find 명령어와 xargs 또는 -exec를 조합해 find . -type d -exec chmod 755 {} \;
처럼 사용하면 디렉토리와 파일을 따로 설정할 수 있어요.
시스템 전체 소유권을 바꾸면 큰 문제가 생길 수 있어요. 바로 백업에서 복구하거나, 재설치를 고려해야 할 수도 있습니다. 절대 조심해야 해요!
오늘은 리눅스 파일과 디렉토리의 권한을 설정하는 데 필수인 chmod, chown, chgrp 명령어에 대해 알아봤어요. 단순한 명령어 같지만, 실수하면 시스템 전체에 영향을 줄 수도 있고, 제대로 활용하면 협업 효율이 극대화되죠. 지금 당장은 외워지지 않아도 괜찮아요. 필요할 때마다 이 글을 참고해서 조금씩 익히면, 어느 순간 자연스럽게 손에 익을 거예요. 궁금한 점이 있다면 댓글로 언제든지 질문 주세요!
리눅스, chmod 명령어, chown 명령어, chgrp 사용법, 파일 권한 변경, 소유자 변경, 퍼미션 설정, 서버 권한 관리, 리눅스 실무, 리눅스 초보 가이드