簡體   English   中英

scikit-learn joblib:導入權限錯誤,以串行模式運行

[英]scikit-learn joblib: Permission error importing, run in Serial mode

當我嘗試從腳本或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,))
  • 通過pip安裝並強制重新安裝joblib
  • 導入以超級用戶身份運行
  • 我在joblib文件夾chmod -R 777 /usr/local/lib/python2.7/dist-packages/joblib上設置了完全權限; 無濟於事:許可錯誤仍然存​​在

因此,即使每個用戶和組在joblib目錄上都具有完整的rwx權限,它也會給我一個權限錯誤。 如何確定joblib在導入時執行寫入權限檢查的目錄? 為什么在我指定寫操作之前它甚至會進行檢查?

通過查看joblib源代碼找到它:

問題是我的系統上沒有啟用信號量:Joblib檢查多處理.Semaphore(),結果證明只有root對/ dev / shm中的共享內存有讀/寫權限。 通過在/ etc / fstab中添加以下內容,永久設置正確的權限(即使重啟后),修復了此問題

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM