芹菜用户权限被拒绝/ bin /芹菜

时间:2017-10-10 15:33:48

标签: celery file-permissions daemon celeryd

我正在尝试在aws实例上守护celery配置。

celery docs之后,我有:

/etc/init.d/celeryd
/etc/default/celerybeat

我已经创建了芹菜用户和芹菜组,并设置了如下权限:

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是我遇到权限问题的原因吗?

编辑:virtualenv的权限:

lrwxrwxrwx  1 sfree www-data      24 Sep  1 19:49 meampy -> /usr/local/python/meampy

我将芹菜用户添加到www-data组,仍然是同样的错误

1 个答案:

答案 0 :(得分:0)

由于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/