chmod - 파일 모드 변경

요약

chmod [ -R [-H | -L | -P] ] [ -h ] mode file ...

설명

chmod 유틸리티는 모드 피연산자에 의해 지정된 대로 파일의 파일 모드 비트를 수정합니다.

파일의 모드를 변경하려면 다음 권한 중 하나가 있어야 합니다.

  • 현재 사용자는 *ALLOBJ 특수 권한이 있습니다.
  • 현재 사용자는 파일의 소유자입니다.

기본적으로 chmod는 기호 링크를 따르고 기호 링크가 가리키는 파일의 모드를 변경합니다. 기호 링크에는 모드가 없으므로, 기호 링크에 chmod를 사용하면 항상 성공하는데 효과가 없습니다.

-H, -L-P 옵션은 -R 옵션이 지정되지 않은 경우 무시됩니다. 또한 이러한 옵션은 서로를 대체하고, 명령의 조치는 마지막에 지정된 옵션에 의해 판별됩니다.

chmod는 오브젝트에 대한 i5/OS™ 데이터 권한을 변경한다는 점에 유의하십시오. CHGAUT CL 명령을 사용하여 오브젝트에 대한 i5/OS 오브젝트 권한을 변경하십시오.

옵션

-H
-R 옵션이 지정된 경우, 명령행의 기호 링크를 따릅니다. 트리 조회에서 발견된 기호 링크는 따르지 않습니다. 기호 링크에는 모드가 없기 때문에 chmod는 기호 링크에 영향을 미치지 않습니다.
-L
-R 옵션이 지정된 경우, 명령행의 기호 링크와 트리 조회에서 발견된 기호 링크를 모두 따릅니다.
-P
-R 옵션이 지정된 경우, 기호 링크를 따르지 않습니다. 기호 링크에는 모드가 없기 때문에 chmod는 기호 링크에 영향을 미치지 않습니다.
-R
파일이 디렉토리를 지정하는 경우, chmod는 해당 위치에 연결된 전체 서브트리에서 각 파일의 모드를 변경합니다.
-h
기호 링크를 따르지 않습니다. 기호 링크에는 모드가 없기 때문에 chmod는 기호 링크에 영향을 미치지 않습니다.

피연산자

모드는 절대 또는 기호일 수 있습니다. 절대 코드는 다음 값으로 구성된 3자리 또는 4자리 8진수입니다.

4000
실행 비트의 사용자 ID 설정
2000
실행 비트의 그룹 ID 설정
1000
디렉토리에 대한 제한된 삭제 비트
0400
소유자의 읽기 허용
0200
소유자의 쓰기 허용
0100
소유자의 실행/탐색 허용
0040
그룹의 읽기 허용
0020
그룹의 쓰기 허용
0010
그룹의 읽기/탐색 허용
0004
기타 사용자의 읽기 허용
0002
기타 사용자의 쓰기 허용
0001
기타 사용자의 실행/탐색 허용

기호 모드는 다음 문법에 따라 기술됩니다.

  • 모드 ::= clause [, clause ...]
  • ::= [who ...] [action ...] last_action
  • 조치 ::= op [perm ...]
  • last_action ::= op [perm ...]
  • who ::= a | u | g | o
  • op ::= + | - | =
  • perm ::= r | w | x | X | s | t | u | g | o

who 기호는 다음과 같이 권한이 부여되거나 거부된 사용자를 지정합니다.

u
소유자 허용 비트
g
그룹 허용 비트
o
기타 허용 비트
a
소유자, 그룹 및 기타 허용 비트. ugo 기호를 함께 지정하는 것과 같습니다.

op 기호는 다음과 같이 수행된 연산을 나타냅니다.

+
지정된 권한을 부여합니다. perm에 대한 값이 제공되지 않은 경우, "+" 연산이 적용되지 않습니다. who에 대한 값이 제공되지 않으면, perm에 지정된 각 허용 비트는 파일 모드 작성 마스크에서 해당 비트가 지워진 경우 설정됩니다. 그렇지 않으면, 지정된 whoperm 값으로 표시된 모드 비트가 설정됩니다.
-
지정된 권한을 거부합니다. perm에 대한 값이 제공되지 않은 경우, "-" 연산이 적용되지 않습니다. who에 대한 값이 제공되지 않으면, perm에 지정된 각 허용 비트는 파일 모드 작성 마스크에서 해당 비트가 지워진 경우 지워집니다. 그렇지 않으면, 지정된 whoperm 값으로 표시된 모드 비트가 지워집니다.
=
선택된 권한 필드를 지우고 지정된 권한으로 설정합니다. who 값으로 지정된 모드 비트가 지워졌거나, who 값이 지정되지 않은 경우 소유자, 그룹 및 기타 모드 비트가 지워집니다. 그 후에 who에 대한 값이 제공되지 않으면, perm에 지정된 각 허용 비트는 파일 모드 작성 마스크에서 해당 비트가 지워진 경우 설정됩니다. 그렇지 않으면, 지정된 whoperm 값으로 표시된 모드 비트가 설정됩니다.

perm 기호는 다음과 같은 모드 비트의 부분을 나타냅니다.

r
읽기 비트
w
쓰기 비트
x
실행/탐색 비트
X
파일이 디렉토리인 경우 또는 실행/탐색 비트가 원래(수정되지 않은) 모드로 설정된 경우의 실행/탐색 비트입니다. 이 기호가 포함된 연산은 op 기호 "+"와 함께 사용할 때만 의미가 있고 다른 모든 경우에서는 무시됩니다.
s
소유자 허용 비트가 설정된 경우에는 실행 비트의 사용자 ID 설정이고, 그룹 허용 비트가 설정된 경우에는 실행 비트의 그룹 ID 설정입니다.
t
오브젝트가 디렉토리인 경우 제한된 삭제 비트입니다. who 기호가 a이거나 who 기호가 없는 경우에 사용될 수 있습니다. 파일이 디렉토리가 아니거나 who 기호가 u, g 또는 o이면 무시됩니다.

은 모드 비트에서 수행할 하나 이상의 연산을 지정하고, 각 연산은 지정된 순서대로 모드 비트에 적용됩니다.

종료 상태

  • 성공 시 0
  • 오류가 발생하는 경우 >0

  1. 절대 모드를 사용하여 소유자에게는 읽기 및 쓰기 권한을 부여하고 그룹 및 기타 사용자에게는 읽기 권한을 부여하십시오.
    chmod 644 myfile
  2. 그룹 및 기타 사용자에 대한 쓰기 권한을 거부하십시오.
    chmod go-w myfile
  3. 현재 설정된 모든 권한을 해제하고 소유자, 그룹 및 기타 사용자에게 읽기 및 쓰기 권한을 부여하십시오.
    chmod =rw myfile
  4. 소유자, 그룹 및 기타 사용자에게 디렉토리 탐색 권한을 부여하십시오(이들 중 하나에 탐색 권한이 설정된 경우).
    chmod +X mydir
  5. 절대 모드를 사용하여 소유자에게는 읽기, 쓰기 및 실행 권한을 부여하고 그룹 및 기타 사용자에게는 읽기 및 실행 권한을 부여하십시오.
    chmod 755 myfile
  6. 그룹 및 기타 사용자에 대한 권한을 모두 해제하십시오.
    chmod go= myfile
  7. 그룹 권한을 소유자 권한과 동일하게 설정하지만 그룹에 대한 쓰기 권한은 거부하십시오.
    chmod g=u-w myfile
  8. 실행 비트에 사용자 ID 설정을 설정한 후, 절대 모드를 사용하여 소유자에게는 읽기, 쓰기 및 실행 권한을 부여하고 다른 사용자에게는 실행 권한을 부여하십시오.
    chmod 4701 myfile