centos7安装较高版本python3.5/3.6
应用环境:
Centos7或者RHEL7下默认安装的python版本为2.7.x,更新不够及时,现在很多时候需要额外安装较高版本的python环境,
网上搜罗一圈总结记录一下常用两种方式:
① 源码编译安装
② 第三方SCLo源安装
测试环境:
CentOS 7.4 minimal(虚拟机)
安装步骤:
方法一:源码编译安装(推荐)
1. 下载源码包(官方下载:https://www.python.org/downloads/source/)
[root@server-1 ~]# wget http://www.python.org/ftp/python/3.5.5/Python-3.5.5.tgz
2. 安装编译依赖
|
1
|
[root@server-1 ~]# yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel gcc gcc-c++ make |
3. 编译安装
[root@server-1 ~]# tar zxvf Python-3.5.5.tgz
[root@server-1 ~]# cd Python-3.5.5
[root@server-1 Python-3.5.5]# ./configure --prefix=/opt/python3.5.5
[root@server-1 Python-3.5.5]# make && make install
4. 检查
[root@server-1 Python-3.5.5]# cd /opt/python3.5.5/


5. 将高版本python配置到环境变量
[root@server-1 ~]# echo 'export PATH=$PATH:/opt/python3.5.5/bin' >> /etc/profile
[root@server-1 ~]# . /etc/profile

6. 修改系统默认python版本为python3
[root@server-1 ~]# mv /usr/bin/python /usr/bin/python2.7.5 //把原来的重命名
[root@server-1 ~]# ln -s /opt/python3.5.5/bin/python3 /usr/bin/python

7. 解决python默认版本升级后yum不能正常工作

原因:yum报错是因为yum运行后,其配置文件中指定python(默认2.x)版本不对了,因为我们上面将高版本的python做了软连接至/usr/bin/python。
处理:重新修改配置文件中的python指向
[root@server-1 ~]# vim /usr/bin/yum

保存,退出;再次运行yum命令即可正常;
说明:其实不推荐修改系统的默认python版本,虽然方便,但是譬如以上出现的yum命令问题,虽然容易解决,但是,整个系统中不仅仅是
yum单独这个命令用到了调用了python,还设有其他文件或者文件也用到,解决方法可以一如既往地尝试修改头部python版本,不过
就怕万一遗忘在某次使用中。或者可以在使用python命令的时候不嫌麻烦地带上个数字3,即python3 。
补充:需要修改python头文件的还有以下文件:
/usr/libexec/urlgrabber-ext-down
/usr/bin/yum-config-manager (yum-utils包生成)
方法二:第三方yum源安装
1. 下载SCLo源
[root@server-1 ~]# yum -y install centos-release-scl-rh
2. yum安装所需python版本
[root@server-1 ~]# yum install rh-python36
3. 载入环境变量
[root@server-1 ~]# scl enable rh-python36 bash
4. 检查

5. 使开机启动生效
[root@server-1 ~]# vim /etc/profile
添加如下两句:
source /opt/rh/rh-python36/enable export X_SCLS="`scl enable rh-python36 'echo $X_SCLS'`"
说明:此种安装方式比较便捷,不过需要主机可以联网,并且部分关键字和命令不够通用熟悉。
结束.
centos7安装较高版本python3.5/3.6的更多相关文章
- 转:centos7/rhel7安装较高版本ruby2.2/2.3/2.4+
centos7/rhel7安装较高版本ruby2.2/2.3/2.4+ 环境需求: 在Centos7.3中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比 ...
- CentOS6编译安装gcc高版本
编译安装gcc高版本 因CentOS中gcc版本仅有4.4,故编译安装gcc高版本. 安装依赖库(如果你已安装过gcc低版本,可跳过这步) yum install glibc-static libst ...
- 安装了高版本OS X 之后无法使用MacPorts的port命令
安装了高版本OS X 之后无法使用MacPorts的port命令 pod update提示: Current platform "darwin 14" does not match ...
- centos7/rhel7安装较高版本ruby2.2/2.3/2.4+
环境需求: 在Centos7.3中,通过yum安装ruby的版本是2.0.0,但是如果有些应用需要高版本的ruby环境,比如2.2,2.3,2.4...那就有点麻烦了,譬如:我准备使用redis官方给 ...
- centos7 安装gitlab任意版本
主要还是根据官网:https://www.gitlab.cc/installation/#centos-7 1.安装依赖: sudo yum install curl policycoreutils ...
- Linux安装MySQL8高版本压缩包(通用)
前言 前段时间领导让我部署测试环境,希望安装高版本的MySQL,过程遇到很多问题,特此记录帮助迷失的人们 下载 MySQL官方下载地址:https://dev.mysql.com/downloads/ ...
- centos7 安装 mysql5.7 版本(全)
centos 安装 版本说明 :centos7,mysql5.7 ,不是 centos7 可能有些命令不兼容 安装 mysql-server # 下载并安装 mysql yum wget -i -c ...
- Centos下安装git高版本2.1.2
安装依赖软件 # yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel asciidoc # yum in ...
- Linux Centos7安装Oracle12c第二版本
环境: CentOS7@VMware12,分配资源:CPU:2颗,内存:4GB,硬盘空间:30GB Oracle12C企业版64位 下载地址:http://www.oracle.com/technet ...
随机推荐
- [转帖]Docker save and load镜像保存
Docker save and load镜像保存 https://www.cnblogs.com/zhuochong/p/10064350.html docker save 和 load 以及 imp ...
- 运行pip报错:Fatal error in launcher: Unable to create process using '"'
参考: https://blog.csdn.net/cjeric/article/details/73518782
- Redux学习(3) ----- 结合React使用
Redux 和React 进行结合, 就是用React 做UI, 因为Redux中定义了state,并且定义了改变或获取state的方法,完全可以用来进行状态管理,React中就不用保存状态了,它只要 ...
- redis知识汇总
redis是一个内存数据库,使用key-value形式在内存中管理数据. 一.redis使用场景 1.热数据存储.对于需要频繁读写的数据,可以放到redis中,不用频繁的请求数据库.再设置策略持久化到 ...
- 微信小程序——部署云函数【三】
部署login云函数 不部署的话,点击获取openid会报错,报错如下 解决方案呢,很明显的已经告诉我们了 搭建云环境 开通 同意协议 新建环境 每个小程序账号可以创建两个免费环境 确定 部署后再次请 ...
- C - A Simple Problem with Integers POJ - 3468 线段树模版(区间查询区间修改)
参考qsc大佬的视频 太强惹 先膜一下 视频在b站 直接搜线段树即可 #include<cstdio> using namespace std; ; int n,a[maxn]; stru ...
- 洛谷P1063能量项链题解
$题目$ 不得不说,最近我特别爱刷这种区间DP题,因为这个跟其他的DP有些不一样的地方,主要是有一定的套路,就是通过小区间的状态更新大区间,从而得到原题给定区间的最优解. $但是$ 这个题应该跟$石子 ...
- BZOJ 1912 巡逻(算竞进阶习题)
树的直径 这题如果k=1很简单,就是在树的最长链上加个环,这样就最大化的减少重复的路程 但是k=2的时候需要考虑两个环的重叠部分,如果没有重叠部分,则和k=1的情况是一样的,但是假如有重叠部分,我们可 ...
- Python里的单下划线,双下划线,以及前后都带下划线的意义
Python里的单下划线,双下划线,以及前后都带下划线的意义: 单下划线如:_name 意思是:不能通过from modules import * 导入,如需导入需要:from modules imp ...
- power designer 一般常用快捷键(转)
一般快捷键 快捷键 说明 F4 打开检查模型窗口,检查模型 F5 如果图窗口内的图改变过大小,恢复为原有大小即正常大小 F6 放大图窗口内的图 F7 缩小图窗口内的图 F8 在图窗口内中查看全部图内容 ...