Linux

LINUX : OWNERSHIP + PERMISSION

Frisbeen 2025. 4. 20. 19:33

LOVE BEENZINO

리눅스 파일 소유권과 권한 이해하기 🔐

리눅스에서 파일과 디렉토리는 소유자 권한 개념이 뚜렷하게 적용된다. 이 개념을 이해하면, 시스템 보안과 사용자 관리에 강력한 통제를 할 수 있다.


파일 소유권의 3가지 대상

  1. User (u)
    • 해당 파일 또는 폴더를 생성한 사용자이며, 기본 소유자이다.
  2. Group (g)
    • 하나의 사용자는 여러 그룹에 속할 수 있으며,
    • 특정 그룹 소속 사용자들에게 권한을 공유할 수 있다.
  3. Other (o)
    • User와 Group에 속하지 않은 나머지 사용자들이다.
    • 쉽게 말해 시스템 내 '기타 사용자', 쩌리 권한.

3가지 권한 유형

  1. r (read) → 읽기 권한
  2. w (write) → 쓰기(수정) 권한
  3. x (execute) → 실행 권한 (스크립트, 프로그램 등)

→ 총 조합은 rwx rwx rwx = 9자리 구조

  • 순서: User, Group, Other
  • 권한이 있으면 해당 알파벳, 없으면 -
  • 예: -rw-rw-r--
    • -: 파일
    • rw-: user 권한
    • rw-: group 권한
    • r--: other 권한

참고 : 디렉토리는 d로 시작함 → drwxr-xr-x


 권한 확인 명령어 (ls -l)

ls -l
  • -l: long format으로 권한, 소유자, 그룹까지 확인 가능

 권한 설정 명령어: chmod 2가지 방식

1. Symbolic 방식 (+,-,=)

chmod u+x file.txt       # user에게 실행 권한 추가
chmod go-rw file.txt     # group, other의 읽기/쓰기 제거
chmod +x file.txt        # 모든 사용자에게 실행 권한 추가
chmod go-w+x mydir       # group, other 쓰기 제거 + 실행 추가
chmod u=rwx,go= mydir    # user에게 rwx, group/other는 권한 없음

+: 권한 추가 / -: 권한 제거 / =: 명시된 권한으로 설정


2. 절대 모드 (숫자 방식)

숫자마다 고유한 권한을 입력해놓았다.

user,group,other 순서대로 권한 부여

부기온앤온~

7 rwx
6 rw-
5 r-x
4 r--
0 ---
chmod 754 file.txt
  • user: rwx (7)
  • group: r-x (5)
  • other: r-- (4)

소유자 변경 명령어: chown

형식: chown [owner][:group] target

  • 소유자(user), 그룹(group)을 변경할 수 있다.
  • sudo 권한이 필요하다.
  • Other는 바꾸는거 아냐!
  • :로 구분자 (user : group)

예시

chown user1:group1 file.txt        # owner와 group 모두 변경
chown user2 file.txt               # owner만 변경
chown :admins file.txt             # group만 변경
chown -R user1 /opt/scripts        # /opt/scripts 내부 전체 owner 변경 (recursive)

-R 옵션을 사용하면 디렉토리 내부 모든 파일/폴더에 적용된다.


마무리 정리

  • ls -l로 권한과 소유권을 확인할 수 있다.
  • chmod로 사용자/그룹/기타 사용자에 대해 권한을 조절할 수 있다.
  • chown으로 파일이나 디렉토리의 소유자와 그룹을 바꿀 수 있다.
  • 권한 구조를 이해하면, 시스템 보안과 협업 환경을 더욱 안전하게 설정할 수 있다.

'Linux' 카테고리의 다른 글

LINUX : BASH SCRIPT  (0) 2025.04.20
LINUX : SSH  (0) 2025.04.20
LINUX : SEVERAL UTILITY COMMANDS  (0) 2025.04.20
LINUX : SUPERUSER + HIDDEN FILE  (0) 2025.04.20
LINUX : PIPING OPERATOR  (0) 2025.04.20