質問: デフォルトでは、CentOS6にはPythonバージョン2.4が付属しています。 SQLMAPアプリケーションの場合、Pythonをバージョン2.6以降にアップグレードする必要があります。 yumを使用してアップグレードしようとしましたが、2.6以降ではなく2.4のマイナーバージョンにアップグレードしました。手動でアップグレードする方法を教えてください。既存のものと競合しませんか?
回答: アップグレードする前に、 openssl-develなどのいくつかの開発キットを更新する必要があることに注意してください。 、 sqlite-devel など、 yum -y upgrade pythonを実行するだけです。 依存関係ソフトウェアも更新します。
Pythonのダウンロード:
こちらから最新バージョンのPythonをダウンロードして、以下と同じ手順に従うこともできます。
#wget -c https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz --no-check-certificate
解凍:
#tar -xvzf Python-2.7.6.tgz
#cd Python-2.7.6
コンパイル:
#./configure
Pythonのインストール:
#make && make install
古いPython実行可能ファイルをバックアップします:
mv /usr/bin/python /usr/bin/python_bak
最新のインストール済みPythonをデフォルトのPythonにリンク
ln -s /usr/local/bin/python2.7 /usr/bin/python
注:上記の手順でPythonが更新されましたが、yumが壊れています。以下のコマンドを使用してテストできます:
たとえば、yumコマンドを使用してパッケージをインストールしようとする場合は、「 yum install ntp 」とすると、次のようなエラーが発生する可能性があります。
#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
これは、yumがPython2.4に依存しているためですが、デフォルトのpythonがpython2.7を指すようにしました
解決策は、ファイルの1行目を編集することです: / usr / bin / yum 以下について:
#/usr/bin/python2.4
または以下のコマンドを実行します:
#sed -i 's/python/python2.4/g' /usr/bin/yum
それだけです。yumも機能するはずです。