我在使用 apt-get 命令 一个组件一个组件的 安装 LAMP 并进行实验时, 碰到了以下问题:
在我使用以下命令安装LAMP软件包:
sudo apt-get install apache2 libapache2-mod-php5 php5-mysql mysql-server
后发生了下列依赖问题(由于发生问题时,没有全部逐一记录, 只是搜索了以下关键词, 所以现在整理时,也只能提供以下关键词了):
libapache2-mod-php5 : 依赖: apache2-mpm-prefork (> 2.0.52) 但是它将不会被安装
apache2.2-common (= 2.2.22-1Ubuntu1) 但是 2.2.22-1ubuntu1.1 正要被安装
apache2-mpm-itk 但是它将不会被安装
无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
这个解决方法, 我在网上一直没有搜索到, 直到翻倒<Ubuntu Server 最佳方案>这本书后面第86页, 才发现一个终极解决方法, 那就是把以前安装的LAMP相关软件包全部卸载, 命令如下:
完全卸载命令为
sudo apt-get remove --purge apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl libpq5 mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 php5-common php5-mysql
sudo rm -R /etc/php5
如果不想完全卸载, 想要保留配置文件, 可以把上述命令中的 --purge 去掉, 使之变为以下命令:
sudo apt-get remove apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl libpq5 mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 php5-common php5-mysql
sudo rm -R /etc/php5
然后在网上找到最新安装包源
更新/etc/apt/sources.list源文件列表
运行apt-get update更新软件包列表
再安装LAMP就OK了,遇到其它类似情况也可采取上面方法一并解决!!