디렉토리에 대한 읽기 및 쓰기 권한을 허용하는 Chmod


62

루트 디렉토리를 만들었습니다. chmod모든 사용자가 특정 디렉토리에 대한 읽기 및 쓰기 권한을 허용 하는 명령을 찾고 있습니다. 내가 수행 한 chmod 775파일에 대해하지만 난 디렉토리이 필요합니다. 여기에는 모든 파일 및 하위 디렉토리에 대한 권한이 포함됩니다.

답변:


34

0775거의 파일에 맞지 않습니다. 다음은 기존의 다른 권한을 방해하지 않으면 서 적절한 권한을 적절한 유형에 추가합니다.

find somedir \( -type d -exec chmod u+rwx,g+rwx,o+rx {} \; -o -type f -exec chmod u+rw,g+rw,o+r {} \; \)

이를 해독하는 데 도움이 필요 하면 설명서 페이지를 참조하십시오 .


47

의 경우 모든 사용자가 읽기 및 쓰기 액세스 한 것으로, 그 것이다 0777당신이 웹 서버를 실행하는 특히, 조금 위험하다. @ unwind가 말한 것처럼 :

chmod -R 0777 /mydirectory 모든 사용자가 해당 디렉토리 내의 모든 파일 및 폴더에 대한 읽기 및 쓰기 액세스를 허용합니다.

목적에 따라 모든 사용자가 새 파일을 만들 수 있지만 디렉토리의 다른 파일을 삭제하거나 편집 할 수 없도록하는 고정 비트에 대해 읽을 수 있습니다.

chmod +t /mydirectory

또한, 당신이 모르는 경우 명령에 man chmod대한 매뉴얼 페이지를 불러 와서 chmod, "재귀"라는 텍스트를 입력하여 검색 할 수 있습니다/recursive


15

이것이 유닉스 보호 모델의 작동 방식이 아니기 때문에 재귀 적으로 권한을 설정할 수 없습니다. 각 디렉토리에 "아래로"설정해야합니다.

물론 설정을 재귀 적으로 수행 할 수는 있지만 "아래의 모든 파일과 폴더에 대해 이러한 권한을 설정하고 설정"한다는 의미이므로 귀하의 질문을 이해하지 못합니다.

그렇게하려면 -R 옵션 을 사용하여 chmod하십시오.

$ chmod -R 0755 /my-cool-directory

@unwind-나는 chmod 디렉토리의 모든 파일과 하위 디렉토리가 모두 읽기 및 쓰기 권한을 가지고 있음을 의미합니다. 이것이이 명령이하는 일입니까? 감사합니다

1
0755 앞에 -r을 넣으면 0755가 표시됩니다. 파일이나 디렉토리가 없습니다. -r을 넣은 후에는 문제가 해결됩니다.
Tim Mottram 2016 년

"해야 할 일". lol. 좋은.
ytpillai
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.