我正在尝试对一个aws实例上的芹菜配置进行后台管理。
在celery docs之后,我有:
/etc/init.d/celeryd
/etc/default/celerybeat我已经创建了celery用户和celery组,并设置了如下权限:
sudo chown -R celery:celery /var/log/celery/
sudo chown -R celery:celery /var/run/celery/
sudo chown celery:celery /home/sfree/meampy/bin/celery当我检查文件的权限时,它看起来很好:
(meampy)[]$ ls -l /home/sfree/meampy/bin/celery
-rwxrwxrwx 1 celery celery 237 Sep 13 15:15 /home/sfree/meampy/bin/celery但当我运行脚本时:
sudo sh -x /etc/init.d/celeryd start
...
Starting celeryd...
+ _chuid -f /var/log/celery/beat.log -l INFO --detach --pidfile=/var/run/celery/beat.pid
+ su celery -c '/home/sfree/meampy/bin/celery beat -f /var/log/celery/beat.log -l INFO --detach --pidfile=/var/run/celery/beat.pid'
bash: /home/sfree/meampy/bin/celery: Permission denied
+ exit 0如果我单独运行有问题的行,我会得到相同的错误。
meampy是我的虚拟环境的名称。virtualenv是我遇到权限问题的原因吗?
编辑:virtualenv上的权限:
lrwxrwxrwx 1 sfree www-data 24 Sep 1 19:49 meampy -> /usr/local/python/meampy我将celery用户添加到www-data组,仍然出现相同的错误
发布于 2018-08-15 16:50:35
因为virtualenv meampy属于sfree,所以您应该修改您的celery配置文件(/etc/default/celeryd)
设置
CELERYD_USER="sfree"
CELERYD_GROUP="sfree"别忘了
sudo chown -R sfree:sfree /var/log/celery/
sudo chown -R sfree:sfree /var/run/celery/https://stackoverflow.com/questions/46670640
复制相似问题