2017-05-22 5 views
0

Ich versuche, die Python-Version in meiner Linux-Box zu aktualisieren.Installieren Sie Python2.7 in Linux obwohl Chefrezept

[[email protected] ~]# python --version 
Python 2.6.6 
[[email protected] ~]# 

I ausgeführt wird:

yum install python27 

und danach Python 2.7-Version zu reflektieren, ich bin mit:

scl enable python27 bash 

für die aktuelle Sitzung wird es

geben
[[email protected] ~]# python --version 
Python 2.7.8 
[[email protected] ~]# 

Wenn ich versuche zu schreiben Chef Kochbuch, sieht mein Rezept wie folgt aus:

# install python27 package 
yum_package 'python27' do 
action :install 
end 

# enable python27 bash 
execute 'python27_bash' do 
    command 'scl enable python27 bash' 
end 

und ich rufe dieses Kochbuch in den Knoten, aber es ist nicht für die aktuelle Sitzung auf die python2.7 aktualisieren.

+0

Überprüfen Sie die Ausgabe von Chef-Client – AlexD

+0

Ich habe die Kochbücher in der Runlist hinzugefügt und den "Chef-Client" genannt. Aber kein Glück. – joy

Antwort

0

Wenn Sie also scl enable python27 bash ausführen, wird tatsächlich ein neuer Bash-Prozess von Ihrer aktuellen Shell erzeugt. Aufgrund der Funktionsweise von SCLs können Sie sie nur für einen neuen Prozess aktivieren. Verwenden Sie das poise-python Kochbuch, um dies zu umgehen, seine python_runtime Ressource hat einen SCL-Anbieter, der die interne Magie für Sie behandelt.

Verwandte Themen