EOMY.NET
Хостинг EOMY.NET: Форум поддержки
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
RSS Feed  

chmod

 
Начать новую тему   Ответить на тему    Список форумов EOMY.NET -> Программирование для WEB
chmod
Автор Сообщение
Wink
Согнул ложку
Согнул ложку


Зарегистрирован: 08.08.2006
Сообщения: 904
Откуда: Россия, Омск
113638 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 14:54    Заголовок сообщения: chmod Ответить с цитатой

А вот объясните мне как нибудь "сильно для чайников" про chmod. В каком случае какие наборы правил используются?



Под какой набор попадают следующие действия с файлами, к примеру:
1. Файл создается/изменяется скриптом, который запускает пользователь, набрав его адрес в строке URL.
2. То же, но скриптом, который запущен через cron
3. То же, но мной, зашедшим через FTP.

Владелец, член группы, прочие - кто все эти люди вообще? Cool
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
[LP]LordPro.teus
Призрак Лорда
Призрак Лорда


Зарегистрирован: 26.07.2007
Сообщения: 5092

42282 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 15:02    Заголовок сообщения: Ответить с цитатой

1. Срабатывают права того, от чьего имени запущен Apache/PHP (вебсервер, проще говоря)
2. Аналогично, cron использует те же права, так как лишь служит оболочкой для запуска по расписанию... если, конечно, он сам не запускается от имени другого пользователя с отличными правами
3. Срабатывают ваши собственные права

Владелец - тот, кто создал данный файл и имеет на него основные права
Группа - категория, к которой он принадлежит
Прочие - эмм... ну, вроде ноу комментс)
_________________

До выхода LiteDiary 0.3.0: парам-пам-пам-пам! Она уже здесь!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Wink
Согнул ложку
Согнул ложку


Зарегистрирован: 08.08.2006
Сообщения: 904
Откуда: Россия, Омск
113638 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 15:20    Заголовок сообщения: Ответить с цитатой

Если первое и второе аналогично, то почему когда я набираю URL скрипта и он создает файл, то потом этот файл нельзя изменить тем же самым скриптом, запущенным через cron? Apache/PHP в данном случае "прочие" или "владелец"?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
[LP]LordPro.teus
Призрак Лорда
Призрак Лорда


Зарегистрирован: 26.07.2007
Сообщения: 5092

42282 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 16:10    Заголовок сообщения: Ответить с цитатой

Это зависит от настроек каждого хостинга Very Happy Ведь пользователей можно создать в Лине бесконечное множество с разными правами для каждого... а вообще, как по мне - chmod - полная чушь... если мой скрипт неожиданно не может изменить или что-либо сделать с моим файлом - это уже тупость...
_________________

До выхода LiteDiary 0.3.0: парам-пам-пам-пам! Она уже здесь!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
eomysupport
Администратор
Администратор


Зарегистрирован: 25.12.2005
Сообщения: 5083

66342 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 16:38    Заголовок сообщения: Ответить с цитатой

На большинстве linux-хостингов apache работает от имени пользователя "nobody", а PHP установлен как модуль apache. Соответственно, файлы создаются от имени nobody:nobody (пользователь:группа).

Когда вы загружаете файлы по FTP, вы будете являться их владельцем (username:username). Задачи крона также выполняются от имени пользователя (username:username).

На всех наших серверах (кроме нового zoxt), PHP работает через механизм SuExec (вообще, сейчас это работает уже через SuPHP, но в данном случае это не имеет значения), вследствие чего файлы, созданные php-скриптом, принадлежат непосредственно пользователю (username:username).

На сервере zoxt механизм SuExec временно отключен, и сегодня мы решим, как это исправить.

Соответственно, когда PHP работает через SuExec/SuPHP, права на php-скрипты достаточно выставить в 400 (так как процесс, считывающий php-скрипт, запущен от имени пользователя, которому принадлежит файл скрипта).

Если PHP работает как модуль apache (nobody:nobody), то нужно дать «другим пользователям» (в данном случае nobody:nobody) право читать файлы php-скриптов (права 444).

Примерно так, если не очень углубляться Smile
_________________
Дмитрий

Техническая поддержка бесплатного хостинга осуществляется только через форум поддержки
Часто задаваемые вопросы по хостингу
Условия предоставления услуг бесплатного хостинга
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Wink
Согнул ложку
Согнул ложку


Зарегистрирован: 08.08.2006
Сообщения: 904
Откуда: Россия, Омск
113638 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 17:11    Заголовок сообщения: Ответить с цитатой

С правами на php скрипты проблем вроде нет. После закачки скрипта на FTP у них выставляется 644 и запускаются они любыми способами нормально. Ситуация вот какая была:

1. Через cron запускается скрипт
Код:
php /home/ejik/get.php
который получает некоторые данные раз в сутки и записывает их в файлик data.txt к примеру.
2. Если ничего не трогать больше, то всё прекрасно, но иногда возникает необходимость пересоздать data.txt досрочно, вне расписания. И если напрямую запустить скрипт
Код:
http://www.site.ru/get.php
то обновление происходит, но после этого файлик с данными перестает обновляться по расписанию - скрипт отрабатывает, но файл не обновляется.

Где-то читал, что в таких случаях можно изначально использовать в cron не
Код:
php /home/ejik/get.php
а нечто вроде
Код:
wget  http://www.site.ru/get.php
тогда при любом способе запуска он будет происходить одинаково (от одного и того же пользователя). Правда не пробовал еще.

Вот и интересно стало, может при записи data.txt просто надо было устанавливать ему определенные атрибуты (типа 666 или еще каких)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
eomysupport
Администратор
Администратор


Зарегистрирован: 25.12.2005
Сообщения: 5083

66342 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 17:52    Заголовок сообщения: Ответить с цитатой

В этом случае достаточно установить права на файл 666.
_________________
Дмитрий

Техническая поддержка бесплатного хостинга осуществляется только через форум поддержки
Часто задаваемые вопросы по хостингу
Условия предоставления услуг бесплатного хостинга
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
madhamster
Согнул ложку
Согнул ложку


Зарегистрирован: 09.10.2006
Сообщения: 902

432 Монеты

СообщениеДобавлено: Ср, 28 Ноя, 2007 19:45    Заголовок сообщения: Ответить с цитатой

Сатанистские права Twisted Evil
_________________
NextStage - live music competition
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов EOMY.NET -> Программирование для WEB Часовой пояс: GMT
Страница 1 из 1

 


EOMY TOP 100 Rambler's Top100   Рейтинг@Mail.ru    



Powered by phpBB © 2001, 2005 phpBB Group


Рейтинг SIMPLETOP.NET