--> -->
調子に乗ってPython2.7をビルドしたのは良かったのですが、yumの管理外でpythonが2.7になってしまったため、yum実行時にこんなエラーが出るようになってしまいました。
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.8 (default, Jul 5 2014, 14:19:54) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] If you cannot solve this problem yourself, please go to the yum faq at: http://yum.baseurl.org/wiki/Faq
しかも、あろう事か古いpythonの実行ファイルは削除してしまいました。
仕方が無いので、rpmで再インストール。
wget http://mirror.centos.org/centos/6.5/updates/x86_64/Packages/python-2.6.6-52.el6.x86_64.rpm
普通にやっても「既に入っている」と怒られます。
$ sudo rpm -Uhv python-2.6.6-52.el6.x86_64.rpm Preparing... ########################################### [100%] package python-2.6.6-52.el6.x86_64 is already installed
そこで、強制インストール。
sudo rpm -i --force python-2.6.6-52.el6.x86_64.rpm
これで入りました。
$/usr/bin/python Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36) [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
あとは、再度python2.7に差し替えて、yumのpythonの指定を2.6にします。
sudo mv /usr/bin/python /usr/bin/python2.6 sudo ln -s /usr/local/bin/python /usr/bin/python sudo vi /usr/bin/yum
#!/usr/bin/python2.6
完成。
$ yum Loaded plugins: fastestmirror, security You need to give some command Usage: yum [options] COMMAND List of Commands: : :
sakuraのvpsにデフォルトでインストールされているCentOS 6 x86_64上でTrac1.0.1を動かして見ました。
色々はまったのでメモメモ。。
主に必要なもので私が入れたものは以下(他にもあるかも)。
yumで入れるとやたらと古いものが入れられてしまいますのでセキュリティの観点から使えません。
いつでも即最新版に上げられるよう、全てソースから入れます。
sudo vi /etc/ld.so.conf
include ld.so.conf.d/*.conf /usr/local/ssl/lib /usr/local/lib
sudo ldconfig
./config make sudo make install
./configure --enable-so --enable-ssl --with-apxs2=/usr/local/apache2/bin/apxs --with-ssl=/usr/local/ssl
mod_wsgi(pid=14058, process='',application=''): Loading WSGI script '/var/trac/project/cgi-bin/trac.wsgi'. [pid 14055:tid 140553899419392] AH00052: child pid 14058 exit signal Segmentation fault (11)そこでPythonもソースからビルドします。ただし、必要なモジュール ssl と zlib を入れるために、事前準備が必要です。
./configure make sudo make install
vi Modules/Setup
SSL=/usr/local/ssl _ssl _ssl.c \ -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ -L$(SSL)/lib -lssl -lcrypto
zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
./configure --with-threads --enable-shared make sudo make install
sudo mv /usr/bin/python /usr/bin/python2.6 sudo ln -s /usr/local/bin/python /usr/bin/python
wget -q http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-client-5.6.19-1.el6.x86_64.rpm \ http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-shared-compat-5.6.19-1.el6.x86_64.rpm \ http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-server-5.6.19-1.el6.x86_64.rpm \ http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-devel-5.6.19-1.el6.x86_64.rpm \ http://dev.mysql.com/get/Downloads/MySQL-5.6/MySQL-shared-5.6.19-1.el6.x86_64.rpm
sudo yum install MySQL-{client,devel,server,shared-compat}-5.6.19-1.el6.x86_64.rpm
sudo yum install MySQL-shared-5.6.19-1.el6.x86_64.rpm
./configure -with-apxs=/usr/local/apache2/bin/apxs make sudo make install
wget https://bootstrap.pypa.io/ez_setup.py -O - | python
sudo easy_install Trac-1.0.1.tar.gz
sudo easy_install http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz/download