Debian Wheezy: apache2の再インストール

Debian Wheezy: apache2の再インストール

私のDebianサーバーのapache2パッケージが壊れていたので、まずすべてのapache2関連パッケージを削除しました。今、すべてが正しく削除されたようです。

dpkg -l | grep 'apache'何も返さない

しかし、apache2はインストールできません...

そしてapt-get

sudo apt-get install apache2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 apache2 : Depends: apache2-mpm-worker (= 2.2.22-13+deb7u6) but it is not going to be installed or
                    apache2-mpm-prefork (= 2.2.22-13+deb7u6) but it is not going to be installed or
                    apache2-mpm-event (= 2.2.22-13+deb7u6) but it is not going to be installed or
                    apache2-mpm-itk (= 2.2.22-13+deb7u6) but it is not going to be installed
           Depends: apache2.2-common (= 2.2.22-13+deb7u6) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

そしてaptitude

sudo apt-get install apache2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 apache2 : Depends: apache2-mpm-worker (= 2.2.22-13+deb7u6) but it is not going to be installed or
                    apache2-mpm-prefork (= 2.2.22-13+deb7u6) but it is not going to be installed or
                    apache2-mpm-event (= 2.2.22-13+deb7u6) but it is not going to be installed or
                    apache2-mpm-itk (= 2.2.22-13+deb7u6) but it is not going to be installed
           Depends: apache2.2-common (= 2.2.22-13+deb7u6) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
root@dora:~# sudo aptitude install apache2
The following NEW packages will be installed:
  apache2 apache2-mpm-worker{a} apache2-utils{a} apache2.2-bin{a} apache2.2-common{a} libaprutil1-dbd-sqlite3{ab} libaprutil1-ldap{ab} 
0 packages upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 1 290 kB of archives. After unpacking 5 146 kB will be used.
The following packages have unmet dependencies:
 libaprutil1-dbd-sqlite3 : Depends: libaprutil1 (= 1.4.1-3) but 1.5.4-1+b1 is installed.
 libaprutil1-ldap : Depends: libaprutil1 (= 1.4.1-3) but 1.5.4-1+b1 is installed.
The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     apache2 [Not Installed]                            
2)     apache2-mpm-worker [Not Installed]                 
3)     apache2.2-bin [Not Installed]                      
4)     apache2.2-common [Not Installed]                   
5)     libaprutil1-dbd-sqlite3 [Not Installed]            
6)     libaprutil1-ldap [Not Installed]                   



Accept this solution? [Y/n/q/?] Y
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

この問題を解決してApacheを再起動するにはどうすればよいですか?


Martinの編集者の答え:

cat /etc/apt/sources.list
deb http://debian.mirrors.ovh.net/debian/ wheezy main
deb-src http://debian.mirrors.ovh.net/debian/ wheezy main

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

deb http://packages.dotdeb.org wheezy all
deb-src http://packages.dotdeb.org wheezy all

deb http://packages.dotdeb.org wheezy-php55 all
deb-src http://packages.dotdeb.org wheezy-php55 all

deb http://security.debian.org/ testing/updates main
deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main

deb http://repo.mysql.com/apt/debian/ wheezy mysql-5.6
deb-src http://repo.mysql.com/apt/debian/ wheezy mysql-5.6

deb http://dl.google.com/linux/mod-pagespeed/deb/ stable main

ついに:

apt-cache policy libaprutil1
libaprutil1:
  Installed: 1.5.4-1+b1
  Candidate: 1.5.4-1+b1
  Version table:
 *** 1.5.4-1+b1 100
        100 /var/lib/dpkg/status
     1.4.1-3 500
        500 http://debian.mirrors.ovh.net/debian wheezy/main amd64 Packages

答え1

によると、aptitude名前付きApacheの依存関係は、libaprutil1リポジトリに提供されているものよりも最新のバージョンでインストールされます。

The following packages have unmet dependencies: 
libaprutil1-dbd-sqlite3 : Depends: libaprutil1 (= 1.4.1-3) but
1.5.4-1+b1 is installed.  libaprutil1-ldap : Depends: libaprutil1 (= 1.4.1-3) but 1.5.4-1+b1 is installed.

以下を使用してパッケージのソースを特定できますapt-cache policy

apt-cache policy libaprutil1

libaprutil1=1.5.4-1+b1Debian sidから来たようです... sidリポジトリからApacheをインストールする機会がありますか?これは良い考えではないようです...最新のApacheバージョンが必要な場合はお勧めします。Debian 提示にアップグレード

あなたの質問にの出力を添付してくださいapt-cache policy(そうするときの出力もあなたの質問に添付してください)。 wheezyおよびsidリポジトリのURLを含めるcat /etc/apt/sources.listことができます。これは悪いことです。sources.list

最新のパッケージを削除してみてくださいlibaprutil1

aptitude purge libaprutil1

それからApacheを再インストールしてみてください。

aptitude install apache2

答え2

libaprutil1問題を引き起こすパッケージです(ほとんどの依存関係である可能性が高いlibapr1)。以下を行う必要があります。

  • testing/security;から/etc/apt/sources.list対応する行を削除します。
  • パッケージキャッシュの更新:

    sudo apt-get update
    
  • 削除libaprutil1libapr1:

    sudo aptitude remove libaprutil1 libapr1
    

    (およびそれに依存するすべてのパッケージ)

  • 次に、以下をインストールしますapache2

    sudo aptitude install apache2
    

関連情報