파일 권한과 관련된 CLI 명령어

urur-27·2025년 2월 27일

잡다한

목록 보기
1/17

1. 파일 권한 확인

- 사용 예시

ls -l 파일명

- 결과 예시:

-rw-r--r-- 1 user user  1234 Feb 27 12:34 myfile.txt

여기서 파일 권한은 rw-r--r--로 표시됨.
r -> 파일 타입
rw- -> 소유자 권한
r-- -> 그룹 권한
r-- -> 기타 권한


2. 파일 권한 변경

chmod 명령어를 사용해 파일 권한을 변경할 수 있다.

2-1. 숫자 모드 (8진수)

chmod 755 파일명
  • 7 → 읽기(r) + 쓰기(w) + 실행(x) (소유자)
  • 5 → 읽기(r) + 실행(x) (그룹)
  • 5 → 읽기(r) + 실행(x) (기타 사용자)

권한 -> 숫자 값
--- -> 0
--x -> 1
-w- -> 2
-wx -> 3
r-- -> 4
r-x -> 5
rw- -> 6
rwx -> 7

2-2. 기호 모드 (알파벳)

chmod u+x 파일명  # 소유자에게 실행 권한 추가
chmod g-w 파일명  # 그룹의 쓰기 권한 제거
chmod o+r 파일명  # 기타 사용자에게 읽기 권한 추가
chmod a-x 파일명  # 모든 사용자에게 실행 권한 제거
  • u: 사용자(owner)
  • g: 그룹(group)
  • o: 기타 사용자(others)
  • a: 모든 사용자(all)
  • +: 권한 추가
  • -: 권한 제거
  • =: 권한 설정(기존 권한을 제거하고 새 권한을 부여)

3. 파일 소유권 변경 (chown)

- 사용 예시

chown 사용자명 파일명

- 소유권 + 그룹 변경

chown 사용자명:그룹명 파일명

- 폴더 내 모든 파일을 포함하여 변경(-R 옵션 사용)

chown -R luna:staff myfolder/

4. 파일 그룹 변경 (chgrp)

- 사용 예시

chgrp 그룹명 파일명

- 폴더 내 모든 파일을 포함하여 변경(-R 옵션 사용)

chgrp -R staff myfolder/

5. 특수 권한 설정

5-1. SetUID (s 권한)

chmod u+s 파일명
  • 실행 파일이 실행될 때 소유자의 권한이 유지되도록 함.
  • 일반 사용자가 일시적으로 소유자의 권한이 필요할 때 사용
  • 예: chmod u+s /usr/bin/passwd (사용자가 passwd 명령을 실행할 때 root 권한을 유지)

5-2. SetGID (s 권한)

chmod g+s 디렉터리명
  • 실행 파일이나 디렉터리에 적용되며, 그룹 권한을 유지.
  • 예: chmod g+s /shared_folder/ (이 폴더 내에서 생성된 파일이 자동으로 해당 그룹을 유지)

5-3. Sticky Bit (t 권한)

chmod +t 디렉터리명
  • 디렉터리에서 특정 사용자만 자기 파일을 삭제할 수 있도록 설정.
  • 예: chmod +t /tmp/ (모든 사용자가 접근 가능하지만, 자기 파일만 삭제 가능)

6. 기본 권한 변경 (umask)

umask 022
  • 새 파일이 생성될 때 기본적으로 적용되는 권한을 설정.
  • 기본적으로 파일은 666(읽기+쓰기), 디렉터리는 777(읽기+쓰기+실행)로 생성됨.
  • umask 022이면, 파일은 644, 디렉터리는 755로 생성됨.
profile
끄아악

0개의 댓글