Linux 파일과 권한 관리
Linux 파일과 권한 관리입니다. ls -l 출력, 파일 종류, rwx 권한, chmod, chown, 디렉터리 권한과 umask 확인을 정리했습니다.
Linux 파일과 권한 관리
Linux에서는 파일과 디렉터리마다 소유자, 그룹, 권한이 있다. ls -l 출력의 첫 글자는 파일 종류를, 뒤의 9자리는 소유자/user, 그룹/group, 기타/other 권한을 나타낸다.
ls -l 출력 읽기
mkdir -p ~/permission-lab
cd ~/permission-lab
touch app.log
mkdir logs
ln -s app.log app-link
ls -l-rw-r--r-- 1 user user 0 Jun 23 10:00 app.log
drwxr-xr-x 2 user user 4096 Jun 23 10:00 logs
lrwxrwxrwx 1 user user 7 Jun 23 10:00 app-link -> app.log파일 종류
| 문자 | 의미 |
|---|---|
- | 일반 파일 |
d | 디렉터리 |
l | 심볼릭 링크 |
b | 블록 디바이스 |
c | 문자 디바이스 |
s | 소켓 |
p | FIFO pipe |
권한 의미
| 권한 | 파일 | 디렉터리 |
|---|---|---|
r | 내용 읽기 | 목록 조회 |
w | 내용 수정 | 파일 생성/삭제 |
x | 실행 | 디렉터리 진입 |
chmod 숫자 권한
chmod 644 app.log
ls -l app.log
chmod 755 logs
ls -ld logs숫자는 r=4, w=2, x=1 합계다. 예를 들어 755는 user rwx, group r-x, other r-x다.
소유자와 그룹 변경
sudo chown root:root app.log
ls -l app.log
sudo chown -R root:root logs
ls -ld logs디렉터리 권한 테스트
mkdir private
chmod 700 private
ls -ld privateumask 확인
새 파일과 디렉터리의 기본 권한은 umask 영향을 받는다.
umask
touch umask-file
mkdir umask-dir
ls -ld umask-file umask-dir마무리
Linux 권한을 볼 때는 파일 종류, user/group/other 권한, 소유자, 그룹을 함께 읽어야 한다. 파일의 x는 실행 권한이고, 디렉터리의 x는 진입 권한이라는 차이를 이해하면 권한 문제를 훨씬 빠르게 해결할 수 있다.