相关疑难解决方法(0)

Python多处理:权限被拒绝

我在尝试执行使用多处理包的python程序时遇到错误:

  File "/usr/local/lib/python2.6/multiprocessing/__init__.py", line 178, in RLock
    return RLock()
  File "/usr/local/lib/python2.6/multiprocessing/synchronize.py", line 142, in __init__
    SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1)
  File "/usr/local/lib/python2.6/multiprocessing/synchronize.py", line 49, in __init__
    sl = self._semlock = _multiprocessing.SemLock(kind, value, maxvalue)
OSError: [Errno 13] Permission denied
Run Code Online (Sandbox Code Playgroud)

看起来用户没有访问共享内存的权限.使用root权限执行时,它可以正常工作.

是否有任何解决方案以普通用户(非root用户身份)运行它?

Python版本2.6.2,操作系统是Linux 2.6.18(CentOS版本5.4),它是VPS机器.

python linux

49
推荐指数
2
解决办法
3万
查看次数

OSError 38 [Errno 38]具有多处理功能

我有以下错误:

$ sudo chmod a+rwxt /dev/shm/
$ ls -ld /dev/shm/
drwxrwxrwt 2 root root 4096 Feb  4 06:56 /dev/shm/
$ python
Python 2.6.6 (r266:84292, Dec 26 2010, 22:31:48) 
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import multiprocessing
>>> mp = multiprocessing.Pool(2)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/multiprocessing/__init__.py", line 227, in Pool
    return Pool(processes, initializer, initargs)
  File "/usr/lib/python2.6/multiprocessing/pool.py", line 84, in __init__
    self._setup_queues()
  File "/usr/lib/python2.6/multiprocessing/pool.py", line 131, …
Run Code Online (Sandbox Code Playgroud)

python linux multiprocessing

14
推荐指数
2
解决办法
1万
查看次数

标签 统计

linux ×2

python ×2

multiprocessing ×1