Makedirs Python permissão negada

1

Eu tenho um servidor Apache httpd executando código Python usando o framework Django e mod_wsgi. Na minha view.py, eu preciso fazer uma chamada de subprocesso para executar outro arquivo Python que, no processo, precisa criar alguns diretórios.

No entanto, estou recebendo OSERROR 13: Permission denied não importa onde eu tente criar o diretório.

Somente criar um diretório em /tmp é bem-sucedido.

Alguém pode me orientar sobre como corrigir esse problema?

    
por Amm Sokun 23.07.2012 / 08:31

1 resposta

3

Apenas um palpite desde que eu não sou um desenvolvedor de python, mas o seu script provavelmente está rodando como o usuário do apache2 (normalmente www-data em ubuntu / debian machines, você terá que verificar o seu). Se você criar um diretório gravável para esse usuário ou grupo, poderá criar o diretório dentro dele.

Por exemplo:

# creating the application dir
sudo mkdir /var/www/myapp

# creating the writable dir
sudo mkdir /var/www/myapp/writable

# change the group of this folder
sudo chgrp www-data /var/www/myapp/writable

# grant the group write access
sudo chmod g+w /var/www/myapp/writable
    
por 23.07.2012 / 08:52

Tags