например ведет базу данных гостевой
Ваш скрипт может обращатся к
вашим файлам ( например ведет базу данных гостевой книги). Все выглядит нормально,но только ничего не работает,файл в который вы намеревались писать,
не открывается,знакомая проблема
;(( ?.Так вот чтобы вы не мучались в догадках
Ваш скрипт не может получить доступ к
вашим файлам,потому что он выполняется
не вами (не с вашим идентификатором), а от имени
nobody (непривелигированый пользователь).Это мера предосторожности направлена на то, чтоб скрипты ,взбесившись из-за неправильно переданых параметров(или вообще от глюков) не могли ничего повредить ценного и важного на сервере.
Поэтому к тем файлам,к которым скрипт по смыслу должен обращатся нужно присвоить самые широкие права доступа
0777
Например в случае гостевой книги
chmod 0777 guestbook.dat
Если также важно чтоб скрипты могли заводить новые файлы в
cgi-bin то надо дать также права на это
chmod 0777 cgi-bin
Если вы видите что ваш скрипт
не может обратится к какому-то файлу,то это в
99% случаев из-за вашей забывчивости.!!!
На самый крайний случай воспользуйтесь
setuid-скриптами (к этому делу ,если вы на это решились,отнеситесь
ОЧЕНЬ серьезно,так как целые тома по безопасности в
Unix посвящены именно
setuid-скриптам). Хочу сразу предупредить ,сам я таких не писал,да и вам не особенно советую.Но для общего как говорится развития,имейте в виду следующую информацыю.
Кроме указания прав доступа,существуют специальные биты у файла.Это биты установки пользователя и группы. Когда процесс выполняется(простой процесс) то его
реальный и
эффективный идентификаторы пользователей совпадают,
идентификаторы групп тоже. На самом деле значение имеют как раз
эффективные значения пользователя и группы,они учавствуют в сравнении прав доступа. Нельзя ли их как-то изменить,когда уж совсем нужда заставит? Можно! .На этот вопрос дают ответ программы с
установленым битом пользователя.Когда система запускает такую программу,она присваивает новому процессу
не идентификатор того пользователя,что запустил ее, а
идентификатор пользователя-владельца исполняемого файла.
Содержание Назад Вперед