我正在本地PC上使用带有PyCharm的服务器(SSH)进行远程开发。我使用sudo权限从本地PC安装了tensorflow(pip)。当我在终端(MobaXterm)中运行tensorflow代码时]
python projects/example.py
代码可以工作,但是由于权限的原因不能将结果数据保存在服务器中,但是当我使用sudo运行相同的代码来解决权限错误时。
sudo python projects/example.py
我收到了tensorflow导入错误。
ImportError: Traceback (most recent call last): File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow.py", line 58, in <module> from tensorflow.python.pywrap_tensorflow_internal import * File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 28, in <module> _pywrap_tensorflow_internal = swig_import_helper() File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/pywrap_tensorflow_internal.py", line 24, in swig_import_helper _mod = imp.load_module('_pywrap_tensorflow_internal', fp, pathname, description) File "/usr/lib/python3.6/imp.py", line 243, in load_module return load_dynamic(name, filename, file) File "/usr/lib/python3.6/imp.py", line 343, in load_dynamic return _load(spec) ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory
此外,我在PyCharm中设置了远程开发环境,并使用PyCharm遇到了相同的错误。 PyCharm总是以sudo特权从服务器执行代码。这个问题仅与tensorflow代码有关。其他代码(PyTorch,Caffe等)可以在终端或PyCharm中与sudo一起正常工作。
请向我建议一些有价值的解决方案,>
我搜索了有关此问题的解决方案,但找不到任何解决方案。
我正在本地PC上使用带有PyCharm的服务器(SSH)进行远程开发。我使用sudo权限从本地PC安装了tensorflow(pip)。当我在终端(MobaXterm)中运行tensorflow代码时python ...
我怀疑这是因为root具有与普通用户不同的环境和环境变量。
要么使用sudo
选项执行-E
命令来保存环境,要么在sudo命令中调用python之前设置LD_LIBRARY_PATH
如下: