Я работаю с PHP, и я пытаюсь получить доступ к папке другого пользователя, и всегда получаю сообщение об ошибке «Permission denied».
Я создал группу, добавив оба пользователя и предоставлять доступ. Это не помогает, и вот что я сделал (от root-доступа):
sudo usermod -a -G mygroup tools
sudo usermod -a -G mygroup user2
sudo chgrp -R mygroup /home/tools/domains/domain.tools.com/public_html/storage/users
sudo chmod -R 2775 /home/tools/domains/domain.tools.com/public_html/storage/users
chmod ug+rwx -R /home/tools/domains/domain.tools.com/public_html/storage/users
Теперь, когда я пытаюсь получить доступ к папке из пользовательских «инструментов» (где эта папка ), я могу сделать это легко без проблем:
[tools@server ~]$ ls -l /home/tools/domains/domain.tools.com/public_html/storage/users
total 4
drwxrwsr-x 7 root mygroup 4096 Dec 18 17:36 id
Но если я попытаюсь получить доступ к этой папке от другого пользователя (в той же группе), я получаю эту ошибку:
[user2@server ~]$ ls -l /home/tools/domains/domain.tools.com/public_html/storage/users
ls: cannot access /home/tools/domains/domain.tools.com/public_html/storage/users: Permission denied
Как я могу исправить эту проблему?
Вы предоставили доступ к user2 для конкретной подпапки: /home/tools/domains/domain.tools.com/public_html/storage/users
Я предполагаю, что причина, по которой вы не смогли получить доступ к этой папке с помощью user2, заключается в том, что user2 не может доступ к некоторым папкам на верхнем уровне иерархии папок.
Одним из возможных способов его решения может быть добавлено разрешение x (изменить каталог) всем каталогам выше этой папки для всех пользователей.
Как пользователь tools (или как root с помощью sudo) вы можете предоставить разрешение x для всех каталогов (например):
chmod +x /home/tools
chmod +x /home/tools/domains
chmod +x /home/tools/domains/domain.tools.com
chmod +x /home/tools/domains/domain.tools.com/public_html
chmod +x /home/tools/domains/domain.tools.com/public_html/storage
chmod +x /home/tools/domains/domain.tools.com/public_html/storage/users
Вы предоставили доступ к user2 для конкретной подпапки: /home/tools/domains/domain.tools.com/public_html/storage/users
Я предполагаю, что причина, по которой вы не смогли получить доступ к этой папке с помощью user2, заключается в том, что user2 не может доступ к некоторым папкам на верхнем уровне иерархии папок.
Одним из возможных способов его решения может быть добавлено разрешение x (изменить каталог) всем каталогам выше этой папки для всех пользователей.
Как пользователь tools (или как root с помощью sudo) вы можете предоставить разрешение x для всех каталогов (например):
chmod +x /home/tools
chmod +x /home/tools/domains
chmod +x /home/tools/domains/domain.tools.com
chmod +x /home/tools/domains/domain.tools.com/public_html
chmod +x /home/tools/domains/domain.tools.com/public_html/storage
chmod +x /home/tools/domains/domain.tools.com/public_html/storage/users
Вы предоставили доступ к user2 для конкретной подпапки: /home/tools/domains/domain.tools.com/public_html/storage/users
Я предполагаю, что причина, по которой вы не смогли получить доступ к этой папке с помощью user2, заключается в том, что user2 не может доступ к некоторым папкам на верхнем уровне иерархии папок.
Одним из возможных способов его решения может быть добавлено разрешение x (изменить каталог) всем каталогам выше этой папки для всех пользователей.
Как пользователь tools (или как root с помощью sudo) вы можете предоставить разрешение x для всех каталогов (например):
chmod +x /home/tools
chmod +x /home/tools/domains
chmod +x /home/tools/domains/domain.tools.com
chmod +x /home/tools/domains/domain.tools.com/public_html
chmod +x /home/tools/domains/domain.tools.com/public_html/storage
chmod +x /home/tools/domains/domain.tools.com/public_html/storage/users