使用sudo导入Python 3.6中的错误?
我编写了一个使用使用sudo导入Python 3.6中的错误?,python,linux,ubuntu,sudoers,Python,Linux,Ubuntu,Sudoers,我编写了一个使用Scapy的程序Python能够完美地导入scapy模块,但是使用scapy的sniff功能需要以管理员身份运行程序。 但是,以sudo python3运行程序会产生导入错误,为什么会这样 这是导入行:import scapy.all as scapy您可以使用以下方法修复它: $ sudo pip install scapy 然后再试一次 不过,我建议您使用virtualenv来运行您的程序。而不是在主环境中一个接一个地安装软件包。您可以使用以下方法修复它: $ sudo p
Scapy
的程序Python
能够完美地导入scapy
模块,但是使用scapy
的sniff
功能需要以管理员身份运行程序。
但是,以sudo python3
运行程序会产生导入错误
,为什么会这样
这是导入行:import scapy.all as scapy
您可以使用以下方法修复它:
$ sudo pip install scapy
然后再试一次
不过,我建议您使用virtualenv
来运行您的程序。而不是在主环境中一个接一个地安装软件包。您可以使用以下方法修复它:
$ sudo pip install scapy
然后再试一次
不过,我建议您使用
virtualenv
来运行您的程序。不要在主环境中一个接一个地安装软件包。我建议使用python3
sudo python3 -m pip install scapy
当然,pyenv也可以工作,我希望您熟悉它。我建议您使用python3
sudo python3 -m pip install scapy
当然,pyenv也可以工作,我想你对它很熟悉。如果你在virtualenv中安装并使用scapy,这种情况还会发生吗?所以:
virtualenv-p$(哪种python)venv
source-venv/bin/activate
pip-install-scapy
然后在virtualenv@Arnoux我试过virtualenv,错误仍然存在如果你在virtualenv中安装并使用scapy,这种情况还会发生吗?所以:virtualenv-p$(哪种python)venv
source-venv/bin/activate
pip-install-scapy
然后在virtualenv@Arnoux我试过virtualenv,错误仍然存在sudo pip install scapy
这是我得到的:目录'/home/user/.cache/pip/http'或其父目录不属于当前用户,缓存已被禁用。请检查该目录的权限和所有者。如果使用sudo执行pip,您可能需要sudo的-H标志。
另外,尝试了virtualenv,错误仍然存在。使用sudo pip install scapy
我得到的结果是:目录'/home/user/.cache/pip/http'或其父目录不属于当前用户,并且缓存已被禁用。请检查该目录的权限和所有者。如果使用sudo执行pip,您可能需要sudo的-H标志。
另外,如果尝试了virtualenv,错误仍然存在。