Overview
최근 업무 상 RHEL(Red Hat Enterprise Linux)을 사용하는 경우가 증가하면서, 해당 시스템의 파일 권한 체계를 이해하고 문제 발생 시 원활하게 대응할 필요가 있다. 본 문서에서는 기본적인 권한 체계를 설명한 후, 권한이 다를 경우 발생할 수 있는 문제와 해결 방안을 살펴본다.
파일 권한 관리
모든 파일 또는 디렉토리에는 세 가지 수준의 소유권이 있다.
- 사용자(Owner, u) – 파일을 소유한 계정
- 그룹(Group, g) – 소유자가 속한 그룹
- 기타(Others, o) – 위 두 그룹에 속하지 않는 사용자
그리고 각 소유권에는 아래와 같이 세 가지의 권한이 할당 될 수 있다.
- 읽기(r) – 파일 내용을 읽을 수 있음
- 쓰기(w) – 파일을 수정하거나 삭제할 수 있음
- 실행(x) – 실행 가능한 파일이나 디렉터리를 실행 또는 접근 가능
기본 파일 권한
새 파일이나 디렉토리가 생성될 때마다 기본 권한이 자동으로 할당된다. 아래는 기본 권한에 대한 기호 표시이다.
권한 | 심볼릭 표현 | 8진수 |
---|---|---|
권한 없음 | - - - | 0 |
실행 | - - x | 1 |
쓰기 | - w - | 2 |
쓰기 및 실행 | - w x | 3 |
읽기 | r - - | 4 |
읽기 및 실행 | r - x | 5 |
읽기 및 쓰기 | r w - | 6 |
읽기, 쓰기, 실행 | r w x | 7 |
권한 변경 방법
고객사 환경에서는 root 계정 접근이 불가능한 경우가 많으며, 단일 계정만 사용할 가능성이 높다. 이 경우, 권한 문제 발생 시 직접 해결할 수 있는 방법을 알아본다
기본적인 권한 변경 명령어
chmod
(파일/디렉터리 권한 변경)
chmod 755 filename # 소유자는 읽기/쓰기/실행, 그룹과 기타 사용자는 읽기/실행
chmod u+rwx filename # 소유자에게 읽기, 쓰기, 실행 권한 추가
chmod g-w filename # 그룹에서 쓰기 권한 제거
chmod o+r filename # 다른 사용자(others)에게 읽기 권한 추가
chown
(파일/디렉터리 소유자 변경)
chown user filename # 파일 소유자를 'user'로 변경
chown user:group filename # 소유자 'user', 그룹 'group'으로 변경
chown -R user:group dirname # 디렉터리 및 내부 파일들의 소유자와 그룹을 변경
chgrp
(그룹 변경)
chgrp groupname filename # 특정 파일의 그룹만 변경
chgrp -R groupname dirname # 디렉터리 및 내부 파일들의 그룹 변경
문제 상황 및 해결 방법
만약 고객사 업무 진행 중 권한 문제가 생기는 경우가 종종 생긴다. 이럴 경우 해결책에 대해 생각해보자
Case #1 - 권한이 없고 그룹도 다를 경우
문제 : 파일을 소유한 사용자도 아니고, 소속된 그룹도 다르면 접근이 불가능하다.
해결 : 파일 소유자 또는 시스템 관리자를 통해 접근 권한을 요청해야 한
Case #2 - 권한은 없지만 그룹은 같은 경우
문제 : 파일 소유 그룹에는 속해 있지만, 그룹 권한이 부족한 경우.
확인 방법 :
ls -l file.txt # 파일의 그룹 확인
groups # 현재 사용자의 그룹 확인
해결 : 그룹 권한이 부족하면 chmod
명령어로 필요한 권한을 추가할 수 있다.
chmod g+r file.txt # 그룹에 읽기 권한 추가
chmod g+w file.txt # 그룹에 쓰기 권한 추가
추가 고려 사항 : 디렉터리에 실행 권한이 없으면 접근이 불가능하므로 다음 명령을 사용하여 해결할 수 있다.
chmod g+rx dirname # 그룹에 읽기 및 실행 권한 추가
Case #3 - 파일의 그룹이 다른 경우
문제 : 파일이 속한 그룹이 현재 사용자가 속한 그룹과 다르면 접근할 수 없다.
해결 : 파일 그룹을 변경하여 접근이 가능하도록 설정.
chgrp developers file.txt # 그룹 변경
또는
chown :developers file.txt # 동일한 효과
결론
RHEL 환경에서 파일 및 디렉터리 권한 문제는 자주 발생할 수 있으며, 이를 원활하게 해결하기 위해서는 파일 권한 체계를 이해하고 적절한 명령어를 활용해야 한다.
핵심 요약
- 기본 권한 확인:
ls -l
,groups
- 권한 변경:
chmod
,chown
,chgrp
- 문제 해결:
- 소유자 및 그룹 변경으로 접근 가능하게 조정
- 권한이 부족한 경우
chmod
를 통해 추가 - 해결이 어려운 경우 관리자의 도움 요청
위 내용을 숙지하면, 업무 상 발생하는 파일 권한 문제를 효과적으로 대응할 수 있다.
Reference
Chapter 11. Managing file system permissions | Red Hat Product Documentation
When a standard user or a root user creates a new directory, the umask is set to 022 (rwxr-xr-x), and the base permissions for a directory are set to 777 (rwxrwxrwx). This brings the default permissions to 755 (rwxr-xr-x). Symbolic value Octal value Bas
docs.redhat.com
'인프라' 카테고리의 다른 글
RHEL 디렉토리 구조 (0) | 2025.02.20 |
---|---|
rhel 환경에서 PDF 용량 줄이기 (0) | 2025.02.18 |
Docker에서 rhel8.8 설치하기/rhel8.8 Container에 chrome headless 설치하기 (0) | 2025.02.18 |
PM2 살펴보기 (0) | 2025.02.18 |
Offline에서 Docker 설치하기 (0) | 2023.02.02 |