我想使用 安装一些 Python 包pip
。我收到一个令人惊讶的错误:
error: could not create '/home/brian/anaconda/lib/python2.7/site-packages/PyDSTool': Permission denied
----------------------------------------
Command "/home/brian/anaconda/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-EIkik9/pydstool/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-ipWEV7-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-EIkik9/pydstool
好的,显然,该命令没有权限在我的主目录中创建文件夹。这对我来说已经很麻烦了! 我一直遇到这个问题,不知道该怎么办......
无论如何,这样做sudo pip install <package of interest>
也行不通,因为:
brian@brian-linux:~$ sudo pip install pydstool
[sudo] password for brian:
sudo: pip: command not found
那么,现在怎么办?我宁愿不深入研究 sudoers 并手动添加 sudo 无权访问的 bin 路径。我宁愿我的主目录正常运行。也许设置我的内存驱动器(在/
SSD 上,并/home
安装在 HDD 上)是一个非常糟糕的主意?
答案1
看起来你的权限~/
搞乱了。那里的所有文件都应该归你所有。使用find ~/ -user root
查看 root 是否已接管其中的一些文件,尤其是你发布的错误中的目录。在必要时将权限改回你自己。
您从哪里获得“pip”以及它是如何安装的?
答案2
我不知道这是否会起作用,但我会尝试创建独立于打开或安装软件包的目录。
我真的不知道为什么你不能写入你的主目录。它是你的主目录,对吧?因为如果你试图将它安装到别人的主目录中,那就可以解释这一点了。
您的硬盘上只安装了一个 Linux 吗?如果您有多个 Linux 系统,您很容易搞不清楚自己登录的是哪个逻辑驱动器。
如果您执行 sudo su,您将以 root 身份登录并可以执行任何您想做的事情 - 但要小心,因为这也更容易破坏您的系统。