当前位置:  开发笔记 > 编程语言 > 正文

Django Celery实现 - OSError:[Errno 38]函数未实现

如何解决《DjangoCelery实现-OSError:[Errno38]函数未实现》经验,为你挑选了1个好方法。

我安装了django-celery,我试图启动工作服务器,但是我得到一个没有实现函数的OSError.我在VPS上运行CentOS 5.4版(最终版):

    . broker -> amqp://guest@localhost:5672/
    . queues ->
        . celery -> exchange:celery (direct) binding:celery
    . concurrency -> 4
    . loader -> djcelery.loaders.DjangoLoader
    . logfile -> [stderr]@WARNING
    . events -> OFF
    . beat -> OFF
[2010-07-22 17:10:01,364: WARNING/MainProcess] Traceback (most recent call last):
[2010-07-22 17:10:01,364: WARNING/MainProcess] File "manage.py", line 11, in 
[2010-07-22 17:10:01,364: WARNING/MainProcess] execute_manager(settings)
[2010-07-22 17:10:01,364: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/django/core/management/__init__.py", line 438, in execute_manager
[2010-07-22 17:10:01,364: WARNING/MainProcess] utility.execute()
[2010-07-22 17:10:01,364: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/django/core/management/__init__.py", line 379, in execute
[2010-07-22 17:10:01,365: WARNING/MainProcess] self.fetch_command(subcommand).run_from_argv(self.argv)
[2010-07-22 17:10:01,365: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/django/core/management/base.py", line 191, in run_from_argv
[2010-07-22 17:10:01,365: WARNING/MainProcess] self.execute(*args, **options.__dict__)
[2010-07-22 17:10:01,365: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/django/core/management/base.py", line 218, in execute
[2010-07-22 17:10:01,365: WARNING/MainProcess] output = self.handle(*args, **options)
[2010-07-22 17:10:01,365: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/django_celery-2.0.0-py2.6.egg/djcelery/management/commands/celeryd.py", line 22, in handle
[2010-07-22 17:10:01,366: WARNING/MainProcess] run_worker(**options)
[2010-07-22 17:10:01,366: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/bin/celeryd.py", line 385, in run_worker
[2010-07-22 17:10:01,366: WARNING/MainProcess] return Worker(**options).run()
[2010-07-22 17:10:01,366: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/bin/celeryd.py", line 218, in run
[2010-07-22 17:10:01,366: WARNING/MainProcess] self.run_worker()
[2010-07-22 17:10:01,366: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/bin/celeryd.py", line 312, in run_worker
[2010-07-22 17:10:01,367: WARNING/MainProcess] worker.start()
[2010-07-22 17:10:01,367: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/worker/__init__.py", line 206, in start
[2010-07-22 17:10:01,367: WARNING/MainProcess] component.start()
[2010-07-22 17:10:01,367: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/concurrency/processes/__init__.py", line 54, in start
[2010-07-22 17:10:01,367: WARNING/MainProcess] maxtasksperchild=self.maxtasksperchild)
[2010-07-22 17:10:01,367: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/concurrency/processes/pool.py", line 448, in __init__
[2010-07-22 17:10:01,368: WARNING/MainProcess] self._setup_queues()
[2010-07-22 17:10:01,368: WARNING/MainProcess] File "/usr/local/lib/python2.6/site-packages/celery-2.0.1-py2.6.egg/celery/concurrency/processes/pool.py", line 564, in _setup_queues
[2010-07-22 17:10:01,368: WARNING/MainProcess] self._inqueue = SimpleQueue()
[2010-07-22 17:10:01,368: WARNING/MainProcess] File "/usr/local/lib/python2.6/multiprocessing/queues.py", line 315, in __init__
[2010-07-22 17:10:01,368: WARNING/MainProcess] self._rlock = Lock()
[2010-07-22 17:10:01,368: WARNING/MainProcess] File "/usr/local/lib/python2.6/multiprocessing/synchronize.py", line 117, in __init__
[2010-07-22 17:10:01,369: WARNING/MainProcess] SemLock.__init__(self, SEMAPHORE, 1, 1)
[2010-07-22 17:10:01,369: WARNING/MainProcess] File "/usr/local/lib/python2.6/multiprocessing/synchronize.py", line 49, in __init__
[2010-07-22 17:10:01,369: WARNING/MainProcess] sl = self._semlock = _multiprocessing.SemLock(kind, value, maxvalue)
[2010-07-22 17:10:01,369: WARNING/MainProcess] OSError
[2010-07-22 17:10:01,369: WARNING/MainProcess] :
[2010-07-22 17:10:01,369: WARNING/MainProcess] [Errno 38] Function not implemented

我只是完全搞砸了或有一个简单的方法来解决这个问题?



1> Andrew..:

在ubuntu 10上同样的问题,即使在给予shmem完全权利之后 - 问题仍然在这里......

UP-最后完成,/ dev/shm没有安装.所以在/ dev/shm上添加shm到fstab mount shm set full 777权限


通过将`none/dev/shm tmpfs rw,nosuid,nodev,noexec 0 0`添加到`/ etc/fstab`并重新启动来获得它,从http://stackoverflow.com/questions/2009278/python-获取此信息多-许可被拒绝#评论-6467139
为什么重启?是不是"mount -a"足够了?
推荐阅读
低调pasta_730
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有