16. List Set and Change Standard File Permissions
개요
파일 권한 관리는 Linux에서 파일과 디렉토리에 대한 접근을 제어하는 데 필수적입니다. 이는 소유권, 권한 구조 이해, ls, chgrp, chown, chmod 같은 도구 사용을 포함합니다.
파일 소유권 보기
ls -l 명령어는 소유권을 포함한 파일 세부 정보를 표시합니다:
-rw-r----- 1 aaron family 49 Oct 27 14:41 family_dog.jpg
이는 파일 소유자(aaron)와 그룹(family)을 보여줍니다. 첫 번째 문자는 파일 유형을 나타냅니다(- 는 일반 파일, d는 디렉토리, l은 심볼릭 링크). 이어지는 9개의 권한 문자는 3개씩 세 그룹으로 구성됩니다.
chgrp으로 그룹 소유권 변경
chgrp을 사용하여 파일의 그룹을 수정합니다:
$ chgrp group_name file/directory
중요한 제한 사항: 사용자는 자신이 속한 그룹으로만 그룹을 변경할 수 있습니다. 루트만 모든 시스템 그룹에 재할당할 수 있습니다. $ groups로 자신의 그룹을 확인합니다.
chown으로 사용자 소유권 변경
chown 명령어는 파일 소유권을 변경하기 위해 루트 권한이 필요합니다:
$ sudo chown new_owner file/directory
소유자와 그룹을 동시에 수정합니다:
$ sudo chown aaron:family family_dog.jpg
권한 구조 이해
권한 문자는 세 가지 범주를 나타냅니다:
- 소유자: 처음 세 문자
- 그룹: 다음 세 문자
- 기타: 마지막 세 문자
각 세 문자는 읽기(r), 쓰기(w), 실행(x) 권한을 나타냅니다.
파일 vs. 디렉토리
파일의 경우: r=내용 보기, w=수정, x=프로그램으로 실행
디렉토리의 경우: r=내용 나열, w=파일 생성/삭제, x=cd로 진입
권한 평가 순서
Linux는 순차적으로 권한을 확인합니다:
- 소유자 권한 (사용자가 소유자인 경우)
- 그룹 권한 (사용자가 그룹 구성원인 경우)
- 기타 권한 (다른 모든 사용자)
chmod로 권한 수정
두 가지 방법이 있습니다:
기호 표기법 (+, -, = 사용):
$ chmod u+w file # 소유자에게 쓰기 추가
$ chmod o-r file # 기타에서 읽기 제거
$ chmod g=r file # 그룹을 읽기 전용으로 설정
$ chmod u+rw,g=r,o= file # 변경 사항 결합
8진수 표기법 (숫자 사용):
$ chmod 640 file
여기서: r=4, w=2, x=1. 각 범주에 대해 합산합니다.
일반적인 값: 755 (rwxr-xr-x), 640 (rw-r-----), 777 (rwxrwxrwx)
핵심 요점
"이 상세한 가이드로 Linux 시스템에서 파일 권한을 효과적으로 관리하여 보안과 적절한 접근 제어를 모두 보장하는 지식을 갖추게 되었습니다."