Ubuntu 16.04命令:
ls -l /usr/local/lib/python3.5/ | grep dist-packages
返回:
drwxrwsr-x 2 root staff 4096 Jul 19 2016 dist-packages
表示pip3
,需要sudo
才能写入该区域。一种替代方法是消除权限障碍:
sudo chmod 777 /usr/local/lib/python3.5/dist-packages/
在这种情况下是否有实际原因需要root用户权限?
是。该路径由系统Python使用:
$ python -c "import sys; print(sys.path)"
['','/usr/lib/python2.7','/usr/lib/python2.7/plat-i386-linux-gnu','/usr/lib/python2.7/lib-tk' ,'/usr/lib/python2.7/lib-old','/usr/lib/python2.7/lib-dynload','/home/phd/.local/lib/python2.7/site-packages' ,'/ usr / local / lib / python2.7 / dist-packages','/ usr / lib / python2.7 / dist-packages']
通过将模块安装到系统路径中,您有可能破坏系统序列号。
是否有任何理由不删除权限...?
是,除非确实需要将软件包安装到系统上的所有Python库和脚本中,否则避免将软件包安装到系统目录中。
安装Python库和脚本的正确方法是使用Python虚拟环境。 virtualenv或python -m venv
。