OpenERP OSError: [错误 13] 权限被拒绝: '/.local
我在服务器上有一个OpenERP的代码(从git仓库获取),路径是/home/openerp/openerp,而/home/openerp是openerp用户的主目录。我正在使用uwsgi,如果我直接使用:
uwsgi --ini myconf.ini --http 80
这样是可以正常工作的,但当我用supervisord来启动uwsgi时,就出现了错误:
OSError: [Errno 13] Permission denied: '/.local'
我的uwsgi配置是:
[uwsgi]
uid=openerp
gid=openerp
socket=/home/openerp/openerp.sock
chdir=/home/openerp/openerp
module=openerp-wsgi:application
master=True
workers=10
pidfile=/home/openerp/openerp.pid
vacuum=True
harakiri=50
max-request=5000
而我的supervisord配置文件是:
[program:openerp]
command=/usr/local/bin/uwsgi --ini /home/openerp/openerp/uwsgi.ini
stopsignal=QUIT
autostart=true
autorestart=true
stderr_logfile=/var/log/openerp/err.log
stdout_logfile=/var/log/openerp/out.log
user=openerp
所有的错误日志如下:
Traceback (most recent call last):
File "/home/openerp/openerp/openerp-wsgi.py", line 15, in <module>
import openerp
File "./openerp/__init__.py", line 70, in <module>
import cli
File "./openerp/cli/__init__.py", line 7, in <module>
from openerp.modules import module
File "./openerp/modules/__init__.py", line 27, in <module>
from . import db, graph, loading, migration, module, registry
File "./openerp/modules/loading.py", line 43, in <module>
from openerp.modules.module import initialize_sys_path, \
File "./openerp/modules/module.py", line 45, in <module>
ad_paths = [tools.config.addons_data_dir]
File "./openerp/tools/config.py", line 645, in addons_data_dir
os.makedirs(d, 0700)
File "/usr/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/usr/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/usr/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/usr/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/.local'
1 个回答
1
我可以通过在我的 uwsgi.ini 文件中写入以下内容来解决这个问题:
env=XDG_DATA_HOME=/home/openerp/.local/share
但是我不明白为什么要把 ~/.local/share 扩展到 /.local/share。