CentOS 升级 python 怎么弄? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
shyrock
V2EX    Linux

CentOS 升级 python 怎么弄?

  •  
  •   shyrock Apr 18, 2014 6185 views
    This topic created in 4391 days ago, the information mentioned may be changed or developed.
    CentOS6.5默认的python是2.6,升级2.7.6后,修改系统默认python指向2.7.6。结果系统各种不服,先是yum用不了,改了yum头指向旧版本后解决。
    接着输入法弹不出im-chooser,一查又是python版本不对。。。

    我估摸着没看见的地方还有无数需要修改指向旧版本python的地方,求高手指点怎么才能升级centos的python又不影响系统功能?
    28 replies    1970-01-01 08:00:00 +08:00
    ovalley
        1
    ovalley  
       Apr 18, 2014
    这是个坑,建议换成ubuntu
    wuxqing
        2
    wuxqing  
       Apr 18, 2014   1
    我是单独安装python2.7.6到/opt下面,然后配合virtualenv使用
    ehs2013
        3
    ehs2013  
       Apr 18, 2014   2
    use `make altinstall` instead of `make install`
    halfbloodrock
        4
    halfbloodrock  
       Apr 18, 2014
    如果你是因为开发要引入多个Python的版本的话,单独安装到某个目录然后导入$PATH,不要随意改系统默认的Python。。。
    skyworker
        5
    skyworker  
       Apr 19, 2014 via Android
    用Debian系的OS
    0bit
        6
    0bit  
       Apr 19, 2014
    可以用pyenv来管理多个不同的python版本
    gaicitadie
        7
    gaicitadie  
       Apr 19, 2014
    linux自带python,是优点也是缺点。不像ruby,想装哪个版本装哪个版本
    shyrock
        8
    shyrock  
    OP
       Apr 19, 2014
    @ovalley ubuntu的内置python是2.7?
    @wuxqing 哦,学习一下virtualenv怎么用。。。
    @ehs2013 这样做的效果是?系统程序继续2.6?我用2.7的时候怎么办呢?
    ehs2013
        9
    ehs2013  
       Apr 19, 2014   1
    @shyrock 不把 python 软连接到 python2.7
    用 2.7 的时候直接 python2.7
    shyrock
        10
    shyrock  
    OP
       Apr 19, 2014
    @halfbloodrock 是说系统的继续保留python指向2.6。自己开发使用的时候显式指定2.7?
    @skyworker Debian没有这个问题?原因是什么?
    @0bit 意思是用pyenv切换开发用python版本,同时系统python不变是吧?
    @gaicitadie 哎,就是因为windows下面python编译报告vc环境问题很难解决所以才尝试linux,没想到也不轻松。。。
    shyrock
        11
    shyrock  
    OP
       Apr 19, 2014
    @ehs2013 明白意思了。。。
    echo1937
        12
    echo1937  
       Apr 19, 2014
    在这个方面,ruby比python先进太多了.

    rvm好东西.
    gaicitadie
        13
    gaicitadie  
       Apr 19, 2014
    @shyrock windows下面不用编译啊,activepython直接安装,非常好用
    kodango
        14
    kodango  
       Apr 19, 2014   2
    我印象中 yum 是写死用 /usr/bin/python 的,所以你只要安装一个 python 不要覆盖这个路径就可以,比如安装到 /usr/local/bin 目录下,同事保证 /usr/local/bin 在 PATH 中位于 /usr/bin 之前,这样就没问题了。
    jiang42
        15
    jiang42  
       Apr 19, 2014
    这是个坑,换FreeBSD就好了
    simaoji
        16
    simaoji  
       Apr 19, 2014
    两个都保留着吧
    Comphuse
        17
    Comphuse  
       Apr 19, 2014
    SCL
    anheiyouxia
        18
    anheiyouxia  
       Apr 19, 2014 via Android
    我忘记我怎么搞的了
    也是centos
    python -V
    是2.7,yum也能正常运行,之前就是因为替换了系统自带的后yum用不了,上网找解决方案找到的,但现在似乎找不到这篇东西了
    nervouna
        19
    nervouna  
       Apr 19, 2014
    virtualenv 不行吗?
    yakczh
        20
    yakczh  
       Apr 19, 2014
    centos5.8是python2.4 因为要装nodejs 换成python2.7也是很多坑
    yemoluo
        21
    yemoluo  
       Apr 19, 2014
    哪里不能用就改变哪里的!/usr/bin/env python
    wangfeng3769
        22
    wangfeng3769  
       Apr 19, 2014
    #yum
    sed -i '1s/#!\/usr\/bin\/python$/#!\/usr\/bin\/python2.4/' /usr/bin/yum
    wangfeng3769
        23
    wangfeng3769  
       Apr 19, 2014
    只要把yum的具体版本具体依赖设定好就行了。
    ksc010
        24
    ksc010  
       Apr 19, 2014
    开发用的话 通过virtualenv就行
    P9
        25
    P9  
       Apr 19, 2014
    @wuxqing 就是这个方法。 还有好用的virtualenvwrapper
    Suanlatang
        26
    Suanlatang  
       Apr 19, 2014 via iPhone
    。。。我给你说正确的办法吧

    whereis python

    python: /usr/bin/python /usr/bin/python2.4 /usr/lib/python2.4 /usr/local/bin/python2.7-config /usr/local/bin/python /usr/local/bin/python2.7 /usr/local/lib/python2.7 /usr/include/python2.4 /usr/share/man/man1/python.1.gz

    手动修改/usr/bin/yum脚本头部
    将#!/usr/bin/python改成#!/usr/bin/python2.4

    备注,显示出来版本是多少就修改成多少


    好用点个感谢吧
    VYSE
        27
    VYSE  
       Apr 19, 2014 via Android   1
    从来就不是坑,编译后放在opt或home目录,bashrc修改PATH,PYTHONPATH,alias sudo,yum从来没因为python27坏过。坏过原因只有一次,PATH某目录里有高版本zlib。
    至于用Py3,只使用python3即可
    shyrock
        28
    shyrock  
    OP
       Apr 19, 2014
    @gaicitadie 我在windows下安全numpy的时候,告诉我找不到vc环境。。。
    About     Help     Advertise     Blog     API     FAQ     Solana     5784 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 92ms UTC 07:27 PVG 15:27 LAX 00:27 JFK 03:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86