Skip to content

파일 시스템과 권한 (ACL) ​

리눅스 디렉토리 구조와, 그 파일들에 접근 권한을 주는 방법(기본 권한과 ACL)을 한 페이지에 모았다.

파일 시스템과 디렉토리 구조 ​

리눅스는 모든 것을 파일로 다룬다. 최상위 디렉토리는 / (루트)이며 아래로 뻗어 나간다.

/
├── home/        # 일반 사용자 홈 디렉토리
├── var/         # 로그, 캐시 등 가변 데이터
│   └── log/     # 시스템/앱 로그 저장 위치
├── etc/         # 설정 파일 모음
└── usr/         # 프로그램, 라이브러리

이번 미션에서 직접 다루는 경로

경로용도
/home/agent-admin/agent-appAGENT_HOME (앱 루트)
/var/log/agent-app모니터링 로그 저장
/etc/ssh/sshd_configSSH 설정 파일

파일 권한과 ACL ​

기본 권한 구조 ​

-rwxr-x---  1  agent-dev  agent-core  monitor.sh
 ^^^         소유자        그룹
 |||
 ||+-- others (그 외)  : ---  (권한 없음)
 |+--- group           : r-x  (읽기/실행)
 +---- owner           : rwx  (읽기/쓰기/실행)

권한 숫자 표현 ​

숫자의미
4읽기 (r)
2쓰기 (w)
1실행 (x)
bash
chmod 750 monitor.sh
# 7 = rwx (소유자)
# 5 = r-x (그룹)
# 0 = --- (그 외)

주요 명령어 ​

bash
# 소유자/그룹 변경
chown agent-dev:agent-core monitor.sh

# 권한 변경
chmod 750 monitor.sh

# 권한 확인
ls -l monitor.sh

ACL (Access Control List) ​

기본 권한은 소유자/그룹/기타 3단계만 지정 가능하다. ACL은 특정 사용자나 그룹에 개별 권한을 추가로 부여할 때 사용한다.

bash
# ACL 설치
apt install acl

# 특정 그룹에 rwx 권한 부여
setfacl -m g:agent-core:rwx /var/log/agent-app

# ACL 확인
getfacl /var/log/agent-app

정리 ​

항목내용
디렉토리 구조/ 아래 home, var/log, etc, usr
기본 권한owner / group / others 3단계, r=4 w=2 x=1 (예: chmod 750)
소유자 변경chown agent-dev:agent-core monitor.sh
ACL특정 사용자·그룹에 개별 권한 추가 (setfacl -m, getfacl)

출처: Codyssey-B1/B4-1