python - scikit-learn joblib : Permission error importing, 在串行模式下运行

标签 python permissions scikit-learn python-import joblib

当我尝试从脚本或 python -c 'import joblib' 导入 joblib 时,出现以下权限错误:

/usr/local/lib/python2.7/dist-packages/joblib//joblib_multiprocessing_helpers.py:29: UserWarning: [Errno 13] Permission denied.  joblib will operate in serial mode
      warnings.warn('%s.  joblib will operate in serial mode' % (e,))
  • joblib 已安装并通过 pip 强制重新安装
  • 以 super 用户身份导入
  • 我对 joblib 文件夹设置了完全权限chmod -R 777/usr/local/lib/python2.7/dist-packages/joblib;无济于事:权限错误仍然存​​在

因此,即使每个用户和组都对 joblib 目录具有完整的 rwx 权限,它也会给我一个权限错误。如何确定导入时对哪个目录 joblib 进行写权限检查?为什么它甚至在我指定写入操作之前进行检查?

最佳答案

通过查看 joblib 源代码找到它:

问题是我的系统上未启用信号量:Joblib 检查 multiprocessing.Semaphore(),结果发现只有 root 对/dev/shm 中的共享内存具有读/写权限。按照this answer修复它通过将以下内容添加到/etc/fstab 来永久设置正确的权限(即使在重新启动后):

none/dev/shm tmpfs rw,nosuid,nodev,noexec 0 0 然后重新挂载 mount/dev/shm -o remount

关于python - scikit-learn joblib : Permission error importing, 在串行模式下运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39146371/

相关文章:

Java file.setReadable(True) 不起作用,即使在管理员用户上也是如此?

scikit-learn - Scikit Learn 中是否有与 caret 的 getmodelinfo() 函数等效的函数?

python - 即使似乎已安装,也无法导入 scikits-learn

python - 有没有办法使用伪随机序列或哈希函数模拟队列的 python random.shuffle?

python - 有没有一种方法可以调整 NumPy 数组的大小/形状,从而保留每行的 sum()

php复制函数,无法打开流: Permission denied

android - 动态获取Android权限

python - 如何使用校准图和概率分布来改进分类模型?

python - 编程语言在什么情况下真正使用了 Infinity 值?

python - Keras错误: TypeError: 'int' object is not iterable