Вы в значительной степени перепутали.
ugo
Уго есть user
, group
и other
- нет owner
. Владелец - это пользователь, обычно владеющий большинством прав.
Разрешения GROUP влияют на то, что может делать PHP или другой скрипт, работающий на сервере.
Разрешения группы не влияют на то, что может быть сделано (чтение, запись, выполнение), но кто может это сделать. То же самое для пользователя:
Полномочия USER (иногда называемые PUBLIC?) Влияют на действия UA посетителя веб-сайта.
Пользователь является владельцем, но o
используется для того other
, что вы называете публичным. И снова - это кто может, а не то, что можно сделать.
Вы можете использовать сокращения ugo
при использовании chmod
, что проще, чем числовые коды:
chmod ug+w sample1 chmod go-r sample2 chmod g=w sample3
- sample1: добавить разрешения на запись для пользователя и группы
- sample2: удалить права на чтение из группы и других
- sample3: установить права доступа группы для записи
Каждый файл принадлежит пользователю и группе. Увидеть их с ls -l
. Пример:
ls -l /var insgesamt 12 drwxr-xr-x 2 root root 592 2012-01-12 08:02 backups drwxr-xr-x 28 root root 776 2011-08-18 05:12 cache drwxrwxrwt 2 root root 48 2010-06-22 01:46 crash drwxr-xr-x 2 root root 3704 2010-06-05 22:01 games drwxr-xr-x 84 root root 2296 2011-10-16 13:25 lib drwxrwsr-x 2 root staff 48 2007-10-08 12:47 local drwxrwxrwt 3 root root 80 2012-01-19 08:03 lock drwxr-xr-x 22 root root 5992 2012-01-19 08:01 log drwxrwsrwt 2 root mail 72 2012-01-18 07:56 mail
Часть списка / var. Большинство каталогов (d ...) принадлежат root.root, который является как пользователем, так и группой. Однако почта и прочее - это группы, которые не идентичны пользователю.
обновление (после обновления вопроса):
Если я хочу разрешить моему PHP-скрипту, который запускается на сервере, разрешение на запись в файл, будет ли это разрешение указано в USER, GROUP или OTHER? Если я хочу запретить браузеру посетителя веб-сайта просматривать содержимое каталога, будет ли это разрешение указано в разделе USER, GROUP или OTHER каталога dir?
Что ж, это не разрешение сценария делать то или иное. Это всегда разрешение пользователя, который запускает скрипт.
Чтобы запустить скрипт, пользователь должен иметь возможность прочитать его, что означает, что он читается с диска, чтобы поместить его в память, чтобы выполнить его. Вы не можете выполнить это, не читая это.
Для записи в файл пользователь должен иметь разрешение на запись в каталог, а не в скрипт или программу.
Если программа, выполняющая запись в каталог, является сервером, она обычно запускается не от анонимного пользователя в Интернете, а от специального пользователя, такого как «www».