RuWeb.net Forum

А чего вы вопять на Корбине поменяли?
Аскольд - 8.11.2004 в 10:41

C правами доступа или еще с чем-то около этого? Раньше ставил файлам данных права 0606 и все работало, а теперь не все. Отсюда 2 вопроса:
1. какие права надо ставить файлам, чтобы они были доступны как мне, так и PHP и скриптам, вызываемым по cron-у?
2. когда вы наконец поймете, что об изменениях в настройках, влияющих на работу скриптов, надо предупреждать, причем заблаговременно?


Аскольд - 8.11.2004 в 10:48

3. как так получилось, что файлы, созданные одним и тем же скриптом, но в разное время, имеют теперь одинаковый UID, но разный GID и, соответственно, требуют разных прав доступа, и что с этим бредом теперь делать?


cosupport - 8.11.2004 в 10:49

Самое первое. На КОРБИНЕ у нас 3 сервера в разной конфигурации, завтра введем четвертый. Поэтому пожалуйста называйте сайт или сервер.


Аскольд - 8.11.2004 в 10:59

velo.nsk.ru
А у вас что, еще и на всех серверах насторйки разные?


cosupport - 8.11.2004 в 11:01

к сожалению да. Даже системы разные.


support - 8.11.2004 в 12:01

1. Разве последняя цифра 6 (World Read+World Write) не делает файлы доступными для чтения и записи всем? Упс... Мда. Был некомпетентен. :( Не знал, что, если Group Read отсутствует, то процесс с привиллегиями группы не сможет прочесть файл даже если он World Read. Значит нужно ставить 660, но на всякий случай лучше 666.
2. Извиняюсь, моя ошибка. Т.к. был не в курсе данной особенности, счел, что на работе существующих скриптов это не отразится. Но все-таки чаще всего используют права 666, ибо 606 в случае владельца apache:apache не имеет особого смысла.
3. Потому что файловая система теперь настроена так, чтобы создаваемый файл наследовал группу папки в которой он создан. (Т.е. по сути группу реального владельца.) В будуще это позволит изменить некотрые проверки в php, чтобы safe_mode доставлял меньше неудобств при доступе к файлам и папкам созданным из php. Используйте chmod 666.


Аскольд - 8.11.2004 в 12:18

А теперь скажите как мне эти права для >1000 файлов поменять? Ни ftp ни file manager делать этого для файлов, имеющих владельца apache не желают (Operation not permitted). Кстати, странно - раньше вроде меняли. Права на директорию 0777.

Права 606 имели раньше вполне очевидный смысл - они позволяли иметь доступ по ftp и из cron-а к файлам, созданным из PHP, а 666 были как раз бессмысленны.

[Изменено 8.11.04 от Аскольд]


Аскольд - 8.11.2004 в 12:42

Цитата:
сообщение support
3. файловая система теперь настроена так, чтобы создаваемый файл наследовал группу папки в которой он создан. (Т.е. по сути группу реального владельца.)

А почему бы ему тогда уж не наследовать и owner-а?


support - 8.11.2004 в 13:26

Цитата:
А теперь скажите как мне эти права для >1000 файлов поменять?
На старые-то можно не менять. Или вы уже 1000 новых успели создать? Ну если пхп-скриптом поменять не получается - скажите нам где и что - поменяем.
Цитата:
Права 606 имели раньше вполне очевидный смысл - они позволяли иметь доступ по ftp и из cron-а к файлам, созданным из PHP, а 666 были как раз бессмысленны.
Я говорю о том, что на практике - не было никакой разницы.
Цитата:
А почему бы ему тогда уж не наследовать и owner-а?
Нет таких фокусов в стандартных возможностях ОС. Да и слишком небезопасно это было бы.


Аскольд - 8.11.2004 в 14:18

Цитата:
Цитата:
А теперь скажите как мне эти права для >1000 файлов поменять?
На старые-то можно не менять. Или вы уже 1000 новых успели создать? Ну если пхп-скриптом поменять не получается - скажите нам где и что - поменяем.

А мне больше делать нечего, как писать специальные скрипты, чтобы поменять права собственным файлам? Что это вообще за бред, что я не могу своими файлами распоряжаться? И насчет "можно не менять" не уверен - у меня php-скрипт, вызываемый по cron и обрабатывающий все файлы данных, работать перестал и никакой диагностики я от него получить не могу. При том тот же скрипт, вызываемый из apache, работает нормально. В любом случае проще поменять права всем файлам, чем разбираться каким менять, а каким нет. Ну если хотите сами этим заниматься, вместо того чтобы обеспечить мне нормальный доступ на изменение моих файлов - пожалуйста: поставьте права 666 всем файлам во всех поддиректориях domains/velo.nsk.ru/data/ (включая те, что по simlink)
Цитата:
Я говорю о том, что на практике - не было никакой разницы.
Ну правильно, а при этом все здравомыслящие люди ставят минимально достаточные права.


support - 8.11.2004 в 17:39

Цитата:
Что это вообще за бред, что я не могу своими файлами распоряжаться?
Не роворите, что первый раз слышите, о том что файлы создаваемые из PHP (когда он работает как модуль апача) "принадлежат" пользователю апача а не вашему пользователю.
Цитата:
И насчет "можно не менять" не уверен - у меня php-скрипт, вызываемый по cron и обрабатывающий все файлы данных, работать перестал и никакой диагностики я от него получить не могу.
А почему не можете?
Цитата:
При том тот же скрипт, вызываемый из apache, работает нормально.
Естесственно. И chmod на созданные таким скриптом файлы вы сможете сделать только из скрипта "вызываемого из apache".
Цитата:
пожалуйста: поставьте права 666 всем файлам во всех поддиректориях domains/velo.nsk.ru/data/ (включая те, что по simlink)
готово
Цитата:
Ну правильно, а при этом все здравомыслящие люди ставят минимально достаточные права
Ну, беcпредметный спор :) Но вы ведь не ставите на пхп-скрипты 604 вместо 644 и на папки 705 вместо 755...


Аскольд - 8.11.2004 в 18:50

Цитата:
сообщение support
Цитата:
Что это вообще за бред, что я не могу своими файлами распоряжаться?
Не роворите, что первый раз слышите, о том что файлы создаваемые из PHP (когда он работает как модуль апача) "принадлежат" пользователю апача а не вашему пользователю.

Об этом я, разумеется, слышал. Но вот почему я могу перезаписать или удалить чужой файл, если у меня есть соответствующие права, но не могу сменить эти права (в своей директории) мне понять не дано. Так же как давно не дано понять, почему для этих файлов нельзя сделать touch.
Цитата:
А почему не можете?
Да могу, конечно. Просто не разобрался сразу.

А теперь вопрос: а что, все пользователи, имеющие доступ по ssh или хотя бы cgi могут делать с моими файлами все, что захотят? Права-то располагают. Я до сих пор наивно думал, что все пользователи относятся к одной группе, поэтому права 606 делают мои файлы недоступными другим пользователям. А как оно на самом деле?


support - 8.11.2004 в 22:23

Цитата:
Но вот почему я могу перезаписать или удалить чужой файл
Записать в него можете, если у вас есть права write на файл. Удалить - сможете, если у вас есть права write на папку в которой находится файл.
Цитата:
но не могу сменить эти права (в своей директории) мне понять не дано.
Потому что менять права доступа может _только_ владелец файла или суперпользователь.
Цитата:
Так же как давно не дано понять, почему для этих файлов нельзя сделать touch
А вот это уже глюк PHP как я понял...
Цитата:
А теперь вопрос: а что, все пользователи, имеющие доступ по ssh или хотя бы cgi могут делать с моими файлами все, что захотят?
Нет конечно.
Цитата:
Права-то располагают.
На папку domains стоят права 710 user:apache, т.ч. в нее и глубже никто не может проникнуть кроме вас и апача.
Цитата:
Я до сих пор наивно думал, что все пользователи относятся к одной группе, поэтому права 606 делают мои файлы недоступными другим пользователям. А как оно на самом деле?
У каждого пользователя своя одноименная группа.

[Изменено 8.11.2004 от support]