LINUX.ORG.RU

права на кеш питона-cgi


0

1

такая ситуация
скрипты питона запускаются как обычный cgi с помощью апача
и юзаются через браузер

соответственно, рядом с ними появляется __pycache__ содержащий кеш-файлы (интересно кстати, почему в некоторых ситуациях эти кеш-файлы появляются вперемешку с исходниками, а не в отдельной папке)

от юзера я удалить этот pycache не могу, т.к.

ls -l __pycache__/
итого 16
-rw-r--r-- 1 apache apache 8550 Июн 19 14:27 test.cpython-32.pyc
-rw-r--r-- 1 apache apache 155 Июн 19 14:27 __init__.cpython-32.pyc

я знаю про смену юзера, про группы, но слишком мало, чтобы понять что мне нужно сделать, чтобы иметь возможность юзером удалять кеш

очевидно надо включить моего user в группу apache?

хотя я уже там:

$sudo useradd -G apache user useradd: пользователь user уже существует

$grep apache /etc/group apache:x:48: web:x:502:user,apache

значит мне не хватает прав но как сказать питону, чтобы он создавал кеш с правами, достаточными для удаления кеша членом группы?

★★★

Последнее исправление: sergey-novikov (всего исправлений: 1)

Ответ на: комментарий от Lumi

почитал, спасибо

как я понял, если его прописать в .bashrc, то все созданные мной файлы будут иметь определенные права по умолчанию.

как же сделать это по отношению к юзеру apache?

прямо на директорию поставить правила создания в ней файлов - тоже вроде нельзя

sergey-novikov ★★★
() автор топика
Ответ на: комментарий от sergey-novikov

> как же сделать это по отношению к юзеру apache?

Впиши нужный umask NNN в /usr/sbin/apachectl
По идее apachectl должен подсасывать файл для установки конфигурации сам (что-то вроде /etc/apache2/envars) и писать эту команду нужно туда, но во всех дистрибутивах это сделано по разному (если вообще сделано) и не факт, что этот файл есть в твоём. Поэтому можно вколотить в /usr/sbin/apachectl, но при обновлении всё соответственно сломается. Посмотри как у тебя запускается apache, какие конфиги и где использует. Ну и http://www.google.ru/#q=umask+apache2 в помощь, там можно найти костылей на любой вкус и цвет.

Lumi ★★★★★
()
Ответ на: комментарий от Lumi

простите за тупость, но вот прописал в /usr/sbin/apachectl

start|stop|graceful-stop)
$HTTPD $OPTIONS -k $ARGV
umask 0113
ERROR=$?
;;

перезапустил с помощью apachectl
файлы кэша появились все равно с rw--r--r--

хотя в консоли, после umask 0113, touch создает файл с rw--rw--r--

sergey-novikov ★★★
() автор топика
Ответ на: комментарий от sergey-novikov

а, все понял

надо было сначала изменить umask, а потом уже запускать апач

start|stop|graceful-stop)
umask 0113
$HTTPD $OPTIONS -k $ARGV

проблема решена, спасибо

sergey-novikov ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.