今天想删除Apache服务重装一遍过一遍流程。
rpm -e httpd --nodeps
结果发现一直卡在这里ctrl+c也退不出来,经过搜索发现说是在执行rpm系列命令时卡住了,原因是rpm包数据库坏了。
解决办法:
rm -f /var/lib/rpm/__db*
rpm -vv --rebuilddb
解决了卡住的问题后但是还是删除不了httpd,报下面这个错:
error reading information on service httpd: No such file or directory
error: %preun(httpd-2.0.40-21) scriptlet failed, exit status 1
经搜索,其解决方法为加 --noscripts 标记来删除RPM --noscripts 相当于 --nopre --nopost
--nopreun --nopostun。即卸载命令变为:
rpm -e httpd --noscripts --nodeps
终于可以了! 正在开心的时候结果安装php时候报:error: libxml2 version 2.5.10 or greater required.
我晕!搜索发现是版本不够高造成,下载了一个libxml2-2.9.0.tar.gz重新进行编译安装
rpm -e --nodeps libxml2
删掉原来的libxml2
具体编译安装步骤:
$tar zxvf libxml2-2.6.20.tar.gz
$cd libxml2-2.6.20
$./configure
$make
$make install
安装libxml2这个过程中又报了一个cannot remove `libtoolT': No such file or directory的错,修改configure文件:
$ vim configure
删除这一行: $RM "$cfgfile"
重新再运行 $ ./configure
安装好后,需要重新定义环境变量:
export LD_LIBRARY_PATH=/usr/local/lib
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
然后再安装php发现可以了,真是坎坷的一天!!!