~/Private/ 700
~/Private/Group 770
~/Private/Group/Public 777
Пользователь, который не является владельцем ~/Private/
и ~/Private/Group
, не сможет получить доступ к папке Public с этими разрешениями.
В Unix/Linux вы должны добавить бит выполнения, чтобы пользователь мог проходить (переходить в каталог или проходить через него). Но вам не нужно предоставлять доступ для чтения. Так что попробуйте это вместо. Но имейте в виду, что пользователь должен знать, что каталоги Group и Public существуют, и у них не будет возможности использовать ls
чтобы увидеть, существуют ли они, если только им не предоставлен доступ для чтения.
~/Private/ 711
~/Private/Group 771
~/Private/Group/Public 777
имеет ли значение, использую ли я -R при выполнении 'chmod 700'
Если вы запустите эту команду, вы будете изменять права доступа для каждого файла в каталоге ниже каталога, на который вы нацелены. Если у вас есть что-то с другими разрешениями, они будут потеряны. Я подозреваю, что вы также добавили бы бит выполнения ко многим обычным файлам, что обычно нежелательно.
Вы могли бы хотеть использовать команду как это вместо этого. Это изменит только разрешения для каталога и подкаталогов, без изменения разрешений для файлов.
find {directory_path} -type d -print0 | xargs --null -n 1 chmod 0700
Аналогичная команда для изменения только файлов будет выглядеть следующим образом.
find {directory_path} -type f -print0 | xargs --null -n 1 chmod 0600