ipython 许多事情只有在我使用 sudo 时才有效

ipython and many things work only when i use sudo

我在 redhat 7.4

上遇到 python3.6 的奇怪问题

当我使用 sudo 时启动 ipython3 有效。

sudo ipython3
Python 3.6.3 (default, Oct 11 2017, 18:17:37)
Type 'copyright', 'credits' or 'license' for more information
IPython 6.2.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]: from flask import Flask

In [3]: exit

但作为普通用户,我遇到了以下错误

$ ipython3
Traceback (most recent call last):
  File "/usr/bin/ipython3", line 7, in <module>
    from IPython import start_ipython
**ImportError: cannot import name 'start_ipython'**

任何想法这里有什么问题

python3.6 -c 'import sys; print(sys.path)'
['', '/usr/local/lib/python36.zip', '/usr/local/lib/python3.6', '/usr/local/lib/python3.6/lib-dynload', 
'/usr/local/lib/python3.6/site-packages']

sudo python3.6 -c 'import sys; print(sys.path)'
['', '/usr/local/lib/python36.zip', '/usr/local/lib/python3.6', '/usr/local/lib/python3.6/lib-dynload', 
'/root/.local/lib/python3.6/site-packages', '/usr/local/lib/python3.6/site-packages']


which ipython3
/usr/local/bin/ipython3
sudo which ipython3
ls -ltr /bin/ipython3
lrwxrwxrwx 1 root root 23 Oct 31 14:11 /bin/ipython3 -> /usr/local/bin/ipython3

我建议 运行 strace ipython3 以普通用户的身份(出现问题的地方)并查看日志以发现 EACCES 错误。然后你可以修复那些 files/directories.

的权限

普通用户不受限制吗?如果没有,您还需要注意 SELinux 问题。