소유 그룹( )에서 쓰기 권한을 제거하는 동시에 g
다른 그룹( )에 읽기 권한을 추가하는 데 문제가 있습니다.o
소유 그룹에서 일부 권한을 제거하고 같은 행의 다른 그룹에 일부 권한을 추가하려면 어떻게 해야 합니까?
답변1
질문 제목에 주의하세요.
숫자 기호를 사용하여 같은 줄에서 권한을 제거하고 추가하세요.
chmod
GNU coreutils(Linux 시스템에 있을 수도 있음)를 통해 다음을 사용할 수 있습니다.
$ chmod -020,+004 test.txt
이것을 할 수 있어야 합니다. 작동 방식은 분명합니다. 가운데 숫자는 2
쓰기의 경우 그룹을 나타내고, 마지막 숫자는 4
읽기의 경우 "기타"를 나타냅니다.
사용 가능 +
또는 -
디지털 모드 사용 가능GNU 확장입니다, 예를 들어 내 Mac의 BSD 기반 버전에서는 chmod
다음 오류가 발생합니다 +004
.
$ chmod +004 test.txt
chmod: Invalid file mode: +004
따라서 기호 형식을 사용하는 것이 더 간단하고, 더 짧고, 더 이식 가능하고, 아마도 더 읽기 쉬울 것입니다.
$ chmod g-w,o+r test.txt
답변2
편집: ilkkachu의 답변을 보고 이것을 테스트하게 되었고 그가 설명한 구문은 작동하지만 내 시스템의 매뉴얼 페이지(내가 확인한)에는 다음과 같이 나와 있습니다.
변경될 변경 사항을 기호로 표현하거나 새 모드 비트의 비트 패턴을 나타내는 8진수일 수 있습니다.
그래서 원래 답변 (아래)을 썼습니다. 나는 이것이 새로운 변화이고 매뉴얼 페이지를 업데이트하는 것을 잊었다고 생각합니다.
원래 답변은 다음과 같습니다.
질문 제목에 "숫자 표기법"이 언급되어 있으며 모드를 8진수로 지정하려는 경우 변경 사항을 지정할 수 없으며 파일에 대한 새 모드만 지정할 수 있다는 대답이 나옵니다.
답변3
매뉴얼 페이지의 두 번째 줄에 다음과 같이 나와 있습니다.
chmod g-w,o+r file
$수동 chmod
CHMOD(1) User Commands CHMOD(1)
NAME
chmod - change file mode bits
SYNOPSIS
chmod [OPTION]... MODE[,MODE]... FILE...
아니면 첫 번째 줄chmod --help
Usage: chmod [OPTION]... MODE[,MODE]... FILE...
답변4
이 작업을 수행하려는 이유를 지정하지 않았기 때문입니다. 단순히 원하는 패턴을 설정하는 것이 플래그를 하나씩 뒤집는 것보다 훨씬 빠르고 정확하다는 사실을 여러분이 모른다고 가정합니다.
간단한 용어로 설명하면 다음과 같습니다. 모든 읽기, 쓰기, 실행 플래그의 설정/설정 해제 상태에 대해 3개의 숫자 값을 지정합니다. ~을 위한소유자,그룹, 그리고다른 사람 한꺼번에.
단순화를 위해 3자리 숫자를 사용하겠습니다. 하지만 넌 그래야 해나머지 표지판을 보세요익숙해지면 마찬가지다.
더욱 단순화하세요: 이 3가지 값은 독립적입니다.위치상의세 자리 숫자 대신 값을 입력하세요. 첫 번째 설정된 권한소유자, 다음 항목에 대한 권한을 설정하세요그룹, 셋째, 다른 사람의 권한을 설정합니다(다른 사람).
플래그 설정: 지금. 결정하다각 숫자의 의미이것은 일부 사람들이 혼란스러워하는 부분이지만, 이것이 어떻게 수행되는지 처음 이해하면 정말 간단합니다.
다음은 플래그 값입니다.
- 1=실행
- 2=쓰기
- 4=읽기
이제 당신은위치한 번, 원하는 플래그 값을 함께 추가(합산)합니다. 읽기 및 실행을 설정하려는 경우: 4+1=5. 읽고 쓰고 싶지만 실행하지 않으려면: 4+2=6.
예
| ### |소유자|그룹|기타 | | ---| ---| 755 | RWX 수신 | 644 |R--|
추가 정보와 추가 예는 여기에서 확인할 수 있습니다. https://linux.die.net/Linux-CLI/file-permissions.html
그러니 네가 원한다면그룹그리고다른 사람읽기 권한만 있지만 소유자는 읽기 및 쓰기 권한이 있어야 합니다.chmod 644 FILENAME
이것은엄청난지도 시간:Linux 파일 권한 이해
마지막 팁: 내용을 나열하려면 사용자에게 디렉터리에 대한 실행 권한이 필요하다는 점을 기억하세요.