Kali下不能安装pip3问题的解决方案

Kali最新的版本(2020.2)中安装的是是py3.8,只能安装tf2+。

下面先说一下通常的解决方案,这也是Google出来最多的解决方案:更新源,重新安装。也就是下面的1~3步骤,但自己的问题并未解决,最后采用终极解决方案,终于解决问题,成功安装pip3。

1、问题描述

Kali老版本(4.12.6-1kali6 (2017-08-30))中,使用apt-get install python3-pip安装pip3,安装失败,提示:E: Unable to locate package python3-pip,详细信息如下所示。
在这里插入图片描述

2、问题分析 & Solution

上面提示E: Unable to locate package python3-pip是因为在说明在当前源(此时未做任何修改)中,找不到python3-pip的安装包,可以通过apt search python3-pip命令进行查看,以下内容是我的虚拟机中的查找结果,这里结果为空,说明不存在,这也就是上面的E: Unable to locate package python3-pip提示原因。
在这里插入图片描述
在当前源(此时未做任何修改)中,找不到python3-pip的安装包,所以需要更换源操作。网上试用了几个源,比较推荐阿里云的源,如下:

deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib

具体操作:

  • 1、将上述内容添加到/etc/apt/sources.list文件中(自己在这里注释掉了其他内容,只有上面两行有效),保存退出;
  • 2、apt update更新内容;
  • 3、使用apt-get install python3-pip安装pip3。

更新源后,可以再次查找,就能搜到该文件了。
在这里插入图片描述

3、最终解决方案

3.1 上述方法存在的问题

经过上面的操作,按照网上的教程就应该成功了,但自己在安装时遇到了如下运行错误:

root@kali:~/Desktop# apt-get install python3-pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 gnome-session-common : Breaks: eog (< 3.36.0) but 3.26.2-2 is to be installed
 libgirepository-1.0-1 : Breaks: python3-gi (< 3.34.0-4~) but 3.26.1-2 is to be installed
 python3-pip : Depends: python3-setuptools but it is not going to be installed
               Recommends: python3-dev (>= 3.2) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

安装这里推荐的软件:eog,安装了以下,安装过程中发现路径中有一个py3.8的内容,所以取消了(个人猜测阿里云源的是py3.8的版本了,具体是否没去定位了)。

3.2 最终解决方案

该方法不仅仅适用于kali,对Mac、ubuntu等都适用。

  1. 首先安装setuptools
    可以通过官方模块库来下载:https://pypi.python.org/pypi,这里直接用wget到服务器上下载了版本为19.6。

    wget --no-check-certificate  https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz
    
    tar -zxvf setuptools-19.6.tar.gz
    
    cd setuptools-19.6
    
    python3 setup.py build
    
    python3 setup.py install
    
  2. 下载并安装pip
    到pypi.python.org中下载最新的版本。

    wget --no-check-certificate  https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz
    
    tar -zxvf pip-8.0.2.tar.gz
    
    cd pip-8.0.2
    
    python3 setup.py build
    
    python3 setup.py install
    
    pip3 install --upgrade pip -i https://pypi.douban.com/simple/ #升级到最新pip,非必须
    

经过如上两步,成功安装pip3。

这里安装的版本比较低,可以通过pip3 install --upgrade pip -i https://pypi.douban.com/simple/升级pip到最新版本。

这里的方法主要参考了【install pip3 for python 3.x】,文中除了上述两点,还包括如何安装特定版本python。该文彻底解决了自己的问题,让自己折腾几小时有了一个圆满结局,太感谢了。

4、其他

在上面第二步中进行apt update操作时,可能会报GPG error错,如下

# apt-get update
 
Get:1 http://kali.mirror.garr.it/mirrors/kali kali-rolling InRelease [30.5 kB]
Err:1 http://kali.mirror.garr.it/mirrors/kali kali-rolling InRelease
  The following signatures were invalid: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository <devel@kali.org>
Reading package lists... Done
W: GPG error: http://kali.mirror.garr.it/mirrors/kali kali-rolling InRelease: The following signatures were invalid: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository <devel@kali.org>
E: The repository 'http://kali.mirror.garr.it/mirrors/kali kali-rolling InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

解决方法: 下载最新key添加到keylist:wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add

参见:【kali 国内源 与 apt-get update 报错-GPG error的解决方案】

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值