Задать вопрос

Права доступа новых создаваемых файлов в Ubuntu?

Здравствуйте.

У меня на KUBUNTU 14.04 установлен XAMPP.
Все проекты хранятся в папке htdocs. Возьмем к примеру папку htdocs/example.lc. Права записи у нее я изменил на 777, учетная запись Express777, группа Express777.
Apache в составе Xamp состоит в группе daemon, учетная запись daemon.

И когда работаешь в составе какой нибудь CMS и создаешь файл/страницу через админку, файл сохраняется с правами:
joxi.ru/GrqdPX9fEVBRAz
755( rwxr-xr-x ) для папок daemon daemon
644 ( rw-r--r-- )для файлов daemon daemon

Естественно, доступа для изменения я Не имею, точнее мой IDE/текстовой редактор не имеет доступа. Так как они работают от учетки Express777.
Аналогично обратная ситуация. Когда я создаю файл в IDE он сохраняется с правами
664( rw-rw-r-- ) express777 express777.
То есть CMS может читать мои файлы, но изменять их не может( Ведь он относится к others ).
Приходится вручную, каждый раз запускать команду sudo chmod -R 777 htdocs/example.lc

Вопрос:
Как изменить права доступа всех вновь создаваемых файлов/папок на 777 в папке htdocs?
  • Вопрос задан
  • 13960 просмотров
Подписаться 5 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
@mureevms
Здравствуйте :)
Надо всего-то права правильно выставить. И дело тут совсем не в апаче.
1. Дайте права группе daemon (группа владельцев файлов, из-под которой работает апач) такие же, как и одноименному пользователю. Т.е. права должны быть 770 для каталогов и 660 для файлов:
chown daemon:daemon /var/www/site -R
find /var/www/site -type f -exec chmod 660 {} \;
find /var/www/site -type d -exec chmod 770 {} \;

2. Добавьте всех пользователей, которым нужен доступ, к группе daemon.
usermod -a -G daemon Express777
Этого достаточно.
Если Вы работаете из CMS, то она создаст файл или каталог который сможет прочитать или изменить, т.к. права назначаются daemon:daemon.
Если же Вы создаете файл или каталог из-под пользователя Express777, то добавьте пользователя daemon в группу Express777, этим апач сможет менять файлы, созданные пользователем Express777:
usermod -a -G Express777 daemon
Ответ написан
Endru9
@Endru9
Админ Linux
Не рекомендую использовать права 777 для файлов.

по теме:
/etc/apache2/envvars
umask 000
или
umask 002

так же, можно запускать apache от пользователя, под которым работаете:

AssignUserId user01 group01
Ответ написан
@serega_kaktus
Программист-самоучка, фрилансер
добавьте своего юзера в группу www-data или www-data в свою группу
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы