리눅스 사용자 권한 - chmod, chown, chgrp

박영준·2024년 7월 15일
0

Linux

목록 보기
7/8

리눅스 사용자 권한


1. chmod

# 예시1 : 파일이 속한 그룹이 실행할 수 있는 권한 추가
$ chmod  g+x  FILE

# 예시2 : 시스템의 모든 사용자가 읽을 수만 있는 권한 지정
$ chmod  a=r  FILE

# 예시3 : 파일을 소유한 그룹과 그 외 사용자의 모든 권한 제거
$ chmod  go-rwx  FILE
$ chmod u+x FILE                    # 파일 소유 사용자에게 실행권한 추가.

$ chmod u+w FILE                    # 파일 소유 사용자에게 쓰기 권한 추가.

$ chmod u=rwx FILE                  # 파일 소유 사용자에게 읽기, 쓰기, 실행 권한 지정.

$ chmod u-x FILE                    # 파일 소유 사용자의 실행 권한 제거.

$ chmod g+w FILE                    # 파일 소유 그룹에 쓰기 권한 추가.

$ chmod g-x FILE                    # 파일 소유 그룹의 실행 권한 제거.

$ chmod o=r FILE                    # 파일 소유 사용자 및 그룹을 제외한 사용자는 읽기만 가능.

$ chmod a-x *                       # 현재 디렉토리의 모든 파일에서 모든 사용자의 읽기 권한 제거.

$ chmod a-w FILE                    # 모든 사용자에 대해 쓰기 권한 제거.

$ chmod u=rwx,g=r FILE              # 파일 소유 사용자는 모든 권한, 그룹은 읽기만 가능.

$ chmod ug=rw FILE                  # 파일 소유 사용자와 그룹이 읽기, 쓰기 가능.

$ chmod g=rw,o=r FILE               # 파일 소유 그룹은 읽기, 쓰기 가능, 그 외 사용자는 읽기만 가능.

$ chmod ug=rw,o=r FILE              # 파일 소유 사용자 및 그룹은 일기, 쓰기 가능, 그외 사용자는 읽기만 가능.

$ chmod -R g+x DIR                  # DIR 디렉토리 하위 모든 파일 및 디렉토리에 그룹 실행(x) 권한 추가.

$ chmod -R o-wx *                   # 현재 디렉토리의 모든 파일에서 그외 사용자의 쓰기, 실행 권한 제거

$ chmod -R a-x,a+X *                # 현재 디렉토리 기준 모든 파일 읽기 권한 제거, 디렉토리 실행 권한 추가.

$ chmod -R a-x+X *                  # 위(chmod -R a-x,a+X *)와 동일.

$ chmod u=g FILE                    # FILE의 그룹 권한 값을 사용자 권한으로 적용.
    $ ls -l
    -rwxr--r-- 1 ppotta manager   23 Mar 26 04:13 FILE
    $ chmod u=g FILE
    -r--r--r-- 1 ppotta manager   23 Mar 26 04:13 FILE

$ chmod u+g FILE                    # FILE의 사용자 권한에 그룹 권한 값을 추가.
    $ ls -l
    -r-x-w--w- 1 ppotta manager   23 Mar 26 04:13 FILE
    $ chmod u+g FILE
    -rwx-w--w- 1 ppotta manager   23 Mar 26 04:13 FILE
  • 다른 사용자에게 접근 권한을 부여

    • 소유자, 그룹, 익명사용자에게 각각 별도로 지정 가능
    • 권한 지정시 숫자, 알파벳기호, 특수문자를 통해 설정 가능
  • chmod 는 bin 으로 들어가서 해야 함

숫자로 사용자 권한 부여하기
r(읽기) w(쓰기) x(실행)

0 = 모든 권한 제거
4 = r--(읽기)
5 = r-x(읽기+실행)
6 = rw-(읽기+쓰기)
7 = rws(읽기+쓰기+실행)

$ chmod 000 FILE                    # 모든 사용자의 모든 권한 제거. = ---------

$ chmod 664 FILE                    # 사용자(읽기+쓰기), 그룹(읽기+쓰기), 그외 사용자(읽기) = rw-rw-r--

$ chmod 755 FILE                    # 사용자(읽기+쓰기+실행), 그룹(읽기+실행), 그외 사용자(읽기+실행) = rwxr-xr-x

$ chmod 777 FILE                    # 모든 사용자에 모든 권한 추가.

2. chown

현재 상태

소유자 변경

chown [옵션] [소유자] [파일or디렉터리명]

chown hso100 bin		# bin 디렉터리의 소유자를 hso100으로 변경한다

소유자 그룹 변경

chown [옵션] [.소유자그룹 or :소유자그룹] [파일or디렉터리명]

chown .hso100 bin

chown :hso100 bin

소유자 & 소유자 그룹 모두 변경

chown [옵션] [소유자][.소유자그룹 or :소유자그룹] [파일or디렉터리명]

chown hso100.hso100 bin

chown hso100:hso100 bin
  • "change" + "owner" = 파일의 소유자/소유자그룹을 변경

  • 소유자 & 소유자 그룹

    • 소유자 (왼쪽)

      • 해당 파일의 권한을 가지고 있는 주인
      • 해당 소유자만 권한을 가짐
    • 소유자 그룹 (오른쪽)

      • 해당 소유자 그룹 내에 있는 모든 유저들은 동일한 권한을 가짐
  • 옵션 (옵션 생략 가능)

    • -R : 해당 디렉터리 하위의 모든 파일들의 소유권도 같이 변경

3. chgrp

소유자 그룹 변경

chgrp [옵션] [소유자그룹] [파일or디렉터리명]

chgrp hso100 bin

  • "change" + "group" = 파일/디렉터리의 소유자그룹을 변경

  • 옵션 (옵션 생략 가능)

    • -R : 해당 디렉터리 하위의 모든 파일/디렉터리들의 소유자 그룹도 같이 변경

참고: 리눅스 chmod 명령어 사용법. (Linux chmod command) - 리눅스 파일 권한 변경.
참고: 리눅스 기본 명령어 chown 옵션 총정리 사용법 - 파일 및 디렉토리 소유자 변경

profile
개발자로 거듭나기!

0개의 댓글