Otázka: Ve výchozím nastavení je CentOS 6 dodáván s verzí Pythonu 2.4. Pro aplikaci SQLMAP potřebuji upgradovat Python na verzi 2.6 a vyšší. I když jsem se jej pokusil upgradovat pomocí yum, stále upgradoval na menší verzi 2.4 a ne 2.6 nebo novější. Prosím, pomozte mi, jak to upgradovat ručně? Nebude to v rozporu se stávajícím?
Odpověď: Je třeba poznamenat, že před upgradem musíte aktualizovat několik vývojových sad, jako je openssl-devel , sqlite-devel atd., Takže stačí yum -y upgradovat python by také aktualizoval závislý software.
Stáhnout Python:
Zde si také můžete stáhnout nejnovější verzi pythonu a postupujte stejným způsobem jako níže:
#wget -c https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz --no-check-certificate
Rozbalit:
#tar -xvzf Python-2.7.6.tgz
#cd Python-2.7.6
Zkompilovat:
#./configure
Instalovat Python:
#make && make install
Zálohujte starý spustitelný soubor pythonu:
mv /usr/bin/python /usr/bin/python_bak
Propojte nejnovější nainstalovaný python s výchozím pythonem
ln -s /usr/local/bin/python2.7 /usr/bin/python
Poznámka:Výše uvedený postup sice aktualizoval python, ale pokazilo to yum. Můžete to vyzkoušet pomocí níže uvedeného příkazu:
Pokud se například pokusíte nainstalovat balíček pomocí příkazu yum, řekněte „yum install ntp “, pak se může zobrazit chyba, jak je uvedeno níže:
#yum install ntp There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: No module named yum Please install a package which provides this module, or verify that the module is installed correctly. It's possible that the above module doesn't match the current version of Python, which is: 2.7.6 (default, Dec 2 2015, 12:03:19) [GCC 4.1.2 20080704 (Red Hat 4.1.2-55)] If you cannot solve this problem yourself, please go to the yum faq at: http://wiki.linux.duke.edu/YumFaq
Je to proto, že yum je závislý na Pythonu2.4, ale my jsme vytvořili výchozí python tak, aby ukazoval na python2.7
Řešením je upravit 1. řádek souboru:/usr/bin/yum jak je uvedeno níže:
#/usr/bin/python2.4
nebo Spusťte níže uvedený příkaz:
#sed -i 's/python/python2.4/g' /usr/bin/yum
To je vše, yum by také mělo fungovat.