chmod 명령은 파일과 디렉터리의 모드 비트를 변경합니다. 일반적으로 파일 소유자나 필요한 권한이 있는 프로세스만 변경할 수 있습니다. chmod를 실행하기 전후에 ls -l로 현재 모드를 확인하세요.
권한 · 레슨 2
권한 수정하기
기호 및 8진수 chmod 모드로 Linux 권한 비트를 변경하는 방법을 배웁니다.
기호 모드 사용하기
기호 모드는 변경할 권한 클래스, 변경 방식, 관련 권한을 나타냅니다.
u: 소유자 클래스g: 그룹 클래스o: 기타 사용자 클래스a: 세 클래스 모두+: 권한 추가,-: 권한 제거,=: 선택한 클래스를 정확히 설정
예를 들어 소유자에게 실행 권한을 추가합니다.
$ chmod u+x myfile
그룹에서 쓰기 권한을 제거합니다.
$ chmod g-w myfile
소유자와 그룹 모두에 쓰기 권한을 추가합니다.
$ chmod ug+w myfile
여러 절은 쉼표로 구분할 수 있습니다. 다음 명령은 소유자를 읽기와 쓰기, 그룹을 읽기 전용, 기타 사용자를 권한 없음으로 설정합니다.
$ chmod u=rw,g=r,o= myfile
chmod +x myfile처럼 클래스를 생략하면 프로세스 umask가 변경할 클래스에 영향을 줍니다. 클래스를 명시하면 의도한 결과를 더 쉽게 검토할 수 있습니다.
다른 그룹 비트를 바꾸지 않고 그룹 쓰기 권한을 제거하는 기호 모드는 무엇인가요?
8진수 모드 사용하기
8진수 모드는 각 기본 권한 묶음을 숫자 하나로 설정합니다. 각 클래스에서 다음 값을 더합니다.
- 읽기:
4 - 쓰기:
2 - 실행:
1 - 권한 없음:
0
오른쪽 세 숫자는 차례대로 소유자, 그룹, 기타 사용자를 나타냅니다. 예를 들면 다음과 같습니다.
$ chmod 755 myfile
755 모드는 다음과 같이 펼쳐집니다.
- 소유자
7은4 + 2 + 1, 즉rwx - 그룹
5는4 + 1, 즉r-x - 기타 사용자
5는4 + 1, 즉r-x
+나 - 기호 작업과 달리 8진수 모드는 일반 권한 집합 전체를 제공합니다. 뒤의 레슨에서 특수 모드 비트에 쓰는 선택적 선행 숫자를 다룹니다.
읽기 권한을 나타내는 8진수 값은 무엇인가요?
chmod 640 report는 어떤 일반 권한을 설정하나요?
변경 안전하게 적용하기
사용자와 서비스에 필요한 접근만 부여하세요. chmod 777을 문제 해결 단축 방법으로 사용하지 마세요. 모든 클래스에 읽기, 쓰기, 실행을 부여하여 위험을 키우면서도 소유권, 디렉터리 탐색, ACL, 서비스 정책 문제는 해결하지 못하는 경우가 많습니다.
재귀 변경은 특히 주의해야 합니다. 대상 트리를 미리 확인하고 심볼릭 링크와 마운트된 파일 시스템을 고려하며 chmod -R을 사용하기 전에 작은 범위에서 시험하세요. 변경 후에는 명령이 의도한 객체에 영향을 줬다고 가정하지 말고 결과 모드를 확인합니다.
chmod 777이 접근 문제의 일반적인 해결책으로 적합하지 않은 이유는 무엇인가요?
격리된 환경에서 실습하려면 Linux 사용자 그룹과 파일 권한 실습을 사용하고 각 모드를 변경하기 전후에 확인하세요.
레슨 완료
권한 수정하기 완료
이제 의도적인 chmod 표현식으로 일반 Linux 모드 비트를 변경할 수 있습니다.
기호 모드로 특정 권한을 추가하거나 제거하거나 할당할 수 있습니다.
읽기
4, 쓰기2, 실행1로 8진수 숫자를 만들 수 있습니다.8진수 클래스를 소유자, 그룹, 기타 사용자 순서로 읽을 수 있습니다.
변경을 검증하고 필요한 최소 권한만 적용할 수 있습니다.