python-1-centos7中离线和在线安装python3.6.6

    技术2022-07-12  64

    1 离线编译安装python3

    CentOS7升级Python2.x到3.x CentOS 7中默认安装了Python,版本比较低(2.7.5),为了使用新版3.x,需要对旧版本进行升级。由于很多基本的命令、软件包都依赖旧版本,比如:yum。所以,在更新Python时,建议不要删除旧版本(新旧版本可以共存)。 (1)安装依赖包

    打包安装相关工具包 #yum -y groupinstall "Development tools" #yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel #yum install libffi-devel -y #yum install zlib zlib-devel -y #yum install yum-utils #yum install gcc gcc-c++ -y #yum install openssl openssl-devel -y

    (2)解压

    #wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tar.xz #tar xvf Python-3.6.9.tar.xz #cd Python-3.6.9/ 或者 #tar -xzvf Python-3.6.6.tgz -C /tmp #cd /tmp/Python-3.6.6/

    (3)编译安装 #./configure --prefix=/usr/local #make #make install #rm -rf /tmp/Python-3.6.6

    (4)查看安装情况 #python3

    (5)设置3.X为默认版本 查看Python的路径,在/usr/bin下面。可以看到python链接的是python 2.7,所以,执行python就相当于执行python 2.7。

    #ls -al /usr/bin | grep python -rwxr-xr-x. 1 root root 11232 Dec 2 2016 abrt-action-analyze-python lrwxrwxrwx. 1 root root 7 May 26 2017 python -> python2 lrwxrwxrwx. 1 root root 9 May 26 2017 python2 -> python2.7 -rwxr-xr-x. 1 root root 7136 Nov 6 2016 python2.7

    将原来python的软链接重命名: #mv /usr/bin/python /usr/bin/python.bak 将 python 链接至 python3: #ln -s /usr/local/bin/python3 /usr/bin/python

    (6)配置yum 升级Python之后,由于将默认的python指向了python3,yum不能正常使用,需要编辑yum的配置文件,此时:

    #yum list File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: SyntaxError: invalid syntax

    修改/usr/bin/yum和/usr/libexec/urlgrabber-ext-down,将 #!/usr/bin/python 改为 #!/usr/bin/python2.7,保存退出即可。

    2 在线yum安装python3

    (1)centos中自带python2.7 #whereis python

    /usr/bin/python /usr/bin/python2.7 /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/include/python2.7 /usr/share/man/man1/python.1.gz

    没有自带pip。 (2)安装EPEL EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux。

    使用很简单:首先需要安装一个叫”epel-release”的软件包,这个软件包会自动配置yum的软件仓库。当然也可以不安装这个包,自己配置软件仓库也是一样的。 #yum -y install epel-release (3)安装IUS软件源 IUS只为RHEL和CentOS这两个发行版提供较新版本的rpm包。

    Old URL: https://centos7.iuscommunity.org/ius-release.rpm New URL: https://repo.ius.io/ius-release-el7.rpm

    替换URL #yum -y install https://repo.ius.io/ius-release-el7.rpm (4)清除缓存再建立缓存 #yum clean all #yum makecache (5)安装python3.6 #yum install --downloadonly --downloaddir=/root -y python36u #yum install -y *.rpm #whereis python3

    /usr/bin/python3 /usr/bin/python3.6 /usr/bin/python3.6m /usr/lib/python3.6 /usr/lib64/python3.6 /usr/include/python3.6m /usr/share/man/man1/python3.1.gz

    #python3 -V Python 3.6.8

    3 pip3安装相关包

    #pip3 download numpy -d /root #pip3 install *.whl

    Processed: 0.013, SQL: 9