2010-07-26 13 views
48

Sono voler utilizzare alcuni software più recente che richiede Python 2.6, e al momento abbiamo sia 2.4 e 2.6 installato sul nostro server CentOS dedicato, che assomiglia a questo:Modifica versione di default Python 2,4-2,6

$ which python 
/usr/local/bin/python 
$ which python2.6 
/usr/bin/python2.6 
$ which python2.4 
/usr/local/bin/python2.4 
$ ls -l /usr/local/bin/py* 
-rwxr-xr-x 1 root root  81 Aug 9 2007 /usr/local/bin/pydoc 
-rwxr-xr-x 2 root root 3394082 Aug 9 2007 /usr/local/bin/python 
-rwxr-xr-x 2 root root 3394082 Aug 9 2007 /usr/local/bin/python2.4 

Come posso iniziare a utilizzare 2.6 come predefinito python?

+0

possibile duplicato di [Due versioni di python su linux. come rendere 2.7 l'impostazione predefinita] (http://stackoverflow.com/questions/19256127/two-versions-of-python-on-linux-how-to-make-2-7-the-default) – Pureferret

+1

È stato chiesto 3 anni dopo ed è per 2.7 non 2.6, quindi non è un duplicato. –

+0

Ma penso che abbia una risposta migliore, e la versione discussa non è irrilevante - è il fatto che ne hai due, e vuoi cambiare l'impostazione predefinita. "Probabilmente non vuoi cambiare il tuo Python predefinito ...... Oltre a questo, la monkeying con/usr/bin può compromettere la capacità del tuo gestore di pacchetti di gestire i pacchetti.* "- Questo si distingue dai problemi di versione che hai e mostra perché la risposta più votata non fornisce abbastanza informazioni. Inoltre, presumibilmente, vuoi che le persone siano puntate all'ultima risposta, quindi la data non importa – Pureferret

risposta

52

Come root:

ln -sf /usr/bin/python2.6 /usr/local/bin/python 

questo renderà un link simbolico da/usr// bin/python locale -> /usr/bin/python2.6 (che sostituisce il vecchio collegamento reale).

+1

in base alla domanda 2.6 è in/usr/bin – SiggyF

+0

@SiggyF: Oops, sì. Grazie! – unutbu

+0

e se sembra non funzionare (ho notato su SLC5), prova ad uscire/in – roman

10

rm /usr/local/bin/python
ln -s /usr/local/bin/python2.6 /usr/local/bin/python

+1

Questo ha funzionato per me, ma invece di /usr/local/bin/python2.6 ho usato /usr/bin/python2.6! :) –

+0

Questo ha funzionato per me su CentOS Solaris –

14

In alternativa, si può anche solo aggiungere un alias per il comando "python" nel file di avvio della vostra shell bash.

quindi aprire il file di avvio: emacs ~/.bashrc

nell'editor u Aggiungi: alias "python" "python2.6"

e riavviare il guscio.

1

Ho avuto un problema simile durante l'utilizzo di fusione, ho semplicemente ribattezzato quello in locale e ha funzionato. Non è una buona soluzione, lo so, ma posso sempre riprenderlo.

sudo mv /usr/local/bin/python /usr/local/bin/re_python 
2

aggiungere un alias per il comando "python" nel file di avvio della vostra shell bash. Non cambio un link simbolico da/usr/bin/python, perché cambiare il valore di default di Python (in Ubuntu o Linux Mint per esempio) potrebbe rompersi il sistema

PS: leggere altre risposte

2

In CentOS

ln -sf /usr/local/bin/python2.6 /usr/local/bin/python 
ln -sf /usr/local/bin/python2.6 /usr/bin/python 

Per verificare la versione fare:

python -V 

Poi per fissare yum "No module named yum", si dovrebbe fare:!!

vi `which yum` 

e modificare #/usr/bin/python a #/usr/bin/python2.4

Problemi correlati