遇坑记录
0x01 安装新版本python
目前我本机是2.7版本
1 2 3 4 5 6 7 8 9 10 11 12 13
| # 建立安装目录 mkdir /usr/local/python3 cd /usr/local/python3 # 寻找合适的版本https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz # 解压 tar -xzvf Python-3.9.9.tgz # 进入解压缩后的文件夹 cd Python-3.9.9.tgz #编译安装 ./configure --with-ssl --prefix=/usr/local/python3 make make install
|
0x02 更换软连接
1 2 3 4 5 6 7 8
| # 备份python2.7的软连接 mv /usr/bin/python /usr/bin/python_2 # 建立新版本python的软连接 ln -s /usr/local/python3/bin/python3 /usr/bin/python # 查看下目前的版本 python -V # 安装mysqldb库 pip3 install mysqldb
|

0x03 版本冲突处理
yum依赖于python2.x,升级后yum会报错

修改yum的依赖,将它指向python2
1 2
| # vim /usr/bin/yum #!/usr/bin/python =>
|
修改后正常回显

执行yum update
时可能还会用到一个文件,同样也需要处理一下,相同的方法修改python版本的指向就行。
1
| vi /usr/libexec/urlgrabber-ext-down
|
0x04 pip更换国内镜像源
设置一次性的
1 2
| # pip install <package> -i http://<mirror>/simple pip install packagename -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
|
永久性设置,用户根目录~/.pip/pip.conf
下添加可信源,不存在文件可以直接创建
1 2 3 4 5 6 7 8 9 10
| # ~/.pip/pip.conf 如: [root@localhost ~]# cd [root@localhost ~]# mkdir .pip [root@localhost ~]# cd .pip [root@localhost .pip]# vim pip.conf 写入如下内容 [global] index-url=http://pypi.douban.com/simple trusted-host = pypi.douban.com
|
trusted-host 是指设置为受信源,否则在安全性较高的连接下是连接不上
旧版pip无法下载文件设置
1 2 3 4 5 6 7 8 9 10 11 12
| # 卸载原有的pip pip install --upgrade pip # 新增拓展源 yum -y install epel-release # 清空cache yum clear all # 执行makecache yum makecache #安装pip yum -y install python-pip #升级pip pip install --upgrade pip
|
或者直接用脚本安装
1 2 3 4 5
| # 获取脚本 # 3.* https://bootstrap.pypa.io/get-pip.py -o get-pip.py curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py # 安装pip python get-pip.py
|
pip版本指向混乱,切换到目录cd /usr/local/bincd /usr/local/bin
1 2 3 4 5 6 7 8 9 10 11
| #!/usr/bin/python3.6
# -*- coding: utf-8 -*- import re import sys
from pip._internal import main
if __name__ == '__main__': sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(main())
|
看第一行,第一行指定了这个脚本对应的python版本,如果想把pip对应的python版本改为2.7的,只需修改python3.6为python2.7即可。
1 2
| # pip -V pip 20.3.4 from /usr/lib/python2.7/site-packages/pip (python 2.7)
|
0x05 参考