Если вы посмотрите на разрешения для каталогов и файлов, вы увидите учетную запись, которой они принадлежат, а также группу, к которой они принадлежат. Например:
$ ls -ld /var/www/html
drwxr-xr-x. 2 joe joe 23 Mar 12 11:08 /var/www/html
В приведенном выше примере учетная запись joe владеет каталогом и принадлежит группе joe; группа является вторым "Джо" на линии. Группа может содержать только одну учетную запись, Джо, но я мог бы добавить другие группы в группу. Я мог бы создать группу с именем users
и связать каталог с этой группой, как вы это сделали. Вы используете команду chown
, но есть также команда chgrp
для изменения группы. Вы можете использовать эту команду для назначения файлов и каталогов группе, или вы также можете изменить группу, как вы делали с chown user:group
. Например, вы можете использовать приведенную ниже команду, если в системе есть группа www-данных (вы можете увидеть группы и их членов, введя команду cat /etc/group
):
sudo chgrp www-data /var/www/html
Тогда я мог бы увидеть что-то вроде следующего:
# ls -ld /var/www/html
drwxr-xr-x. 2 joe www-data 23 Mar 12 11:08 /var/www/html
Или, если вы предпочитаете, вы можете сделать группу для каталога новой группой users
вы создали, как вы делали с помощью команды chown -R joe:users
.
Когда я выполнил команду ls -ld
для проверки прав доступа к каталогу, я увидел следующее:
drwxr-xr-x
"D" говорит мне, что это каталог. Следующие 3 символа говорят мне, что права доступа для владельца - чтение, запись и выполнение. Следующие 3 символа показывают права доступа для группы, которые в приведенном выше примере считываются и выполняются. Я мог бы предоставить группе разрешение на запись с помощью команды ниже:
chmod g+w /var/www/html
Вы также можете рекурсивно изменять разрешения для указанного выше каталога, используя параметр -R
или --recursive
.
Если вы соответствующим образом измените разрешения группы, вы сможете добиться того, что вы хотите сделать, так что если Apache работает как www-data, а www-data имеет соответствующие групповые разрешения для каталога и файлов и подкаталогов в нем, Apache будет возможность читать и записывать в файлы как необходимые. Похоже, что вы уже установили для владельца и группы настройку, которая будет работать, поэтому, скорее всего, вам теперь нужно только установить разрешения для users
группы с помощью команды chmod
.