폴더가 있습니다. my-folder
상위 디렉터리에서 먼저 다음을 수행합니다.
sudo chown -cR matthewslouismarie: my-folder
을 수행하면 chmod -cR 600 my-folder
다음을 얻습니다.
chmod: cannot access 'my-folder/build.sh': Permission denied
chmod: cannot access 'my-folder/vmdk': Permission denied
chmod: cannot access 'my-folder/.git': Permission denied
chmod: cannot access 'my-folder/run.sh': Permission denied
chmod: cannot access 'my-folder/docker': Permission denied
chmod: cannot access 'my-folder/.gitignore': Permission denied
이 폴더와 그 내용을 완전히 소유하면 안 되나요?
노트:
실행하면 sudo chmod -cR 600 my-folder
아무것도 인쇄되지 않습니다. matthewslouismarie
내가 그것을 입력할 때 내가 얻는 것입니다 whoami
.
답변1
디렉터리의 권한은 x
사용자가 디렉터리를 탐색할 수 있는지 여부를 제어합니다. 모드를 사용하면 600
해당 비트가 제거되어 x
디렉터리를 탐색할 수 없습니다.
이 시도:
find my-folder -type d -exec chmod 700 {} \;
이렇게 하면 각 디렉터리의 권한이 다시 700
( rwx------
)로 변경됩니다. 파일을 로 만들려면 600
마찬가지로 다음을 수행할 수 있습니다.
find my-folder -type f -exec chmod 600 {} \;
답변2
@andyDalton이 말했듯 x
이 디렉터리를 보려면 (실행) 권한이 필요합니다.
700
따라서 일반 파일에 설정될 권한을 설정할 수 있습니다 .x
GNU가 있으면 chmod
기호 모드를 사용할 수 있습니다.
chmod -cR u+rwX my-folder
이것은 단지다음에 추가도착하다사용자x
권한이 있으며 디렉토리이거나 그룹 또는 기타 항목에 이미 존재하는 경우에만 추가됩니다.
또한 이를 사용해야 하는지 여부도 고려하십시오 chmod
. 이미 원하는 대로 되어 있을 수도 있습니다. chown
재설정하지 않습니다.