如题,centos 6 系统,试了下升级到 2.7 以后, 以前装的很多软件都要重装才能用。
换成 centos 7 的话,很多自己写的一键脚本又得重新写了
1
sagaxu 2017-08-15 09:52:58 +08:00 via Android
不要升级系统级的 Python
|
2
holinhot 2017-08-15 09:53:58 +08:00
不用吧。我写了个脚本升级,好像没啥异常。
#!/bin/bash yum install make gcc gcc-c++ git zlib* openssl openssl-devel make -y #version pyv='2.7.12' cd /tmp wget https://www.python.org/ftp/python/$pyv/Python-$pyv.tgz tar zxvf Python-$pyv.tgz cd Python-$pyv sed -i 's/#zlib zlibmodule.c/zlib zlibmodule.c/'g Modules/Setup.dist ./configure make all make install make clean make distclean mv /usr/bin/python /usr/bin/python2.6.6 ln -s /usr/local/bin/python2.7 /usr/bin/python sed -i 's#/usr/bin/python#/usr/bin/python2.6.6#g' /usr/bin/yum wget https://bootstrap.pypa.io/get-pip.py python get-pip.py rm -rf /tmp/zxvf Python-$pyv.tgz rm -rf /tmp/Python-$pyv |
3
rocksolid 2017-08-15 09:54:11 +08:00
pyenv
|
4
XiaoFaye 2017-08-15 09:54:42 +08:00
我的经验是没事不要手贱去升级。。。
|
5
wildcat007 2017-08-15 10:09:06 +08:00
不要升级啊 自己脚本里面指定 python 路径呀
比如 #! /usr/bin/python2.7 # coding=utf-8 import xxxx |
6
brucedone 2017-08-15 10:48:09 +08:00
肯定不会去升级系统自带的,因为各种依赖,还不如装个虚拟环境,pyenv 或者 vitrual env .
|
7
carlonelong 2017-08-15 10:50:15 +08:00
还好不是 2.7 升到 3
|
8
Buffer2Disk OP @wildcat007 直接 down 源码下来编译安装会不会影响到 2.6 版本呐?
|
9
Buffer2Disk OP @holinhot 我试过这样升级后,原本装的 supervisor 就用不了了
|
10
wizardoz 2017-08-15 11:08:02 +08:00
为啥要升级?自己开发用的自己单独安装就好了。
|
11
wildcat007 2017-08-15 11:48:12 +08:00
@Buffer2Disk 不会的,你编译安装可以指定安装路径的,然后用上 virtulenv 会感觉 世界如此美好
|
12
littleylv 2017-08-15 11:53:37 +08:00
年轻不懂事的时候曾经升过,然后悲剧了
建议不要动系统的 python |
13
aaronzjw 2017-08-15 11:59:15 +08:00 via Android
你需要 anaconda
|
14
ericgui 2017-08-15 12:04:22 +08:00
你应该升级的是 CentOS 的版本,而不是 python 的版本
|
15
1runningbird 2017-08-15 12:14:21 +08:00
我折腾过, 印象中是 yum 依赖于 python 2.6, 所以系统自带的 2.6 是不能被覆盖的。要不然很麻烦
你需要自己手动安装 python2.7, 然后用 python2.7 安装 pip, 安装 virtualenv.......... 具体咋操作, 忘了....... |
16
dreamwar 2017-08-15 12:44:41 +08:00
建议还是升级系统吧...
|
17
douglas1997 2017-08-15 13:06:53 +08:00
装个 anaconda 吧
|
18
UnisandK 2017-08-15 13:09:05 +08:00
yum install centos-release-SCL
yum install python27 scl enable python27 bash |
19
wlsnx 2017-08-15 13:15:38 +08:00
直接装一个新的 python 就好了,不用动系统自带的
|
20
ysicing 2017-08-15 13:17:52 +08:00
感觉 Debian 大法,至少没考虑 python 版本哈哈
|
21
nosugar 2017-08-15 14:01:36 +08:00
装 py3,跟系统不冲突,自己脚本改改,PY3 是未来!
|
22
whwq2012 2017-08-15 14:20:48 +08:00 via Android
源码安装,不和系统的冲突就好。
|
23
BOYPT 2017-08-15 14:27:32 +08:00
configure --prefix 指定一个特别目录,比如 /opt/python27,不会影响系统的。
|
24
NoAnyLove 2017-08-15 14:36:14 +08:00
要么用 pyenv,要么不覆盖安装,用 make altinstall。推荐这篇文章: http://toomuchdata.com/2014/02/16/how-to-install-python-on-centos/
|
26
otakustay 2017-08-15 22:04:30 +08:00
什么,python 连小版本都有 breaking change ?
|
27
lolizeppelin 2017-08-15 23:25:34 +08:00
用兼容方法写代码, 2.6 2.7 的兼容还是比较简单的
|
29
ferstar 2017-08-16 18:03:07 +08:00
经验就是不要动系统级的 Python 版本,有需要上 virtualenv,pyenv,anaconda 都是很好的办法,互不影响
|