É possível instalar o pacote deb do mediawiki sem precisar do apache?

3

Eu gostaria de instalar o pacote mediawiki no Debian Wheezy. mediawiki tem dependências em ( apache2 OR httpd ) e MySQL, mas eu quero usar nginx-extras (que fornece httpd ) e Sqlite (ou seja, não Apache e não MySQL).

Instalei pela primeira vez nginx-extras , que instalou automaticamente httpd . Mas quando tentei instalar o mediawiki com

apt-get install mediawiki

tentou instalar vários módulos do Apache.

Como posso lembrar a apt-get que ele não deve instalar o Apache porque o pacote httpd já foi fornecido?

Também instalei php5-sqlite e mediawiki precisa de php5-sqlite , php5-pgsql ou php5-mysql . No entanto, apt-get também queria instalar os módulos associados ao servidor MySQL.

Eu tentei

apt-get install mediawiki

em um sistema Ubuntu e pareceu respeitar o fato de que httpd já estava instalado.

Descobri um bug no Debian ou falta alguma opção de configuração no Debian?

    
por Stephen Winnall 31.12.2014 / 00:08

2 respostas

4

Estou suspeitando de um bug no arquivo de controle apt ou mediawiki. O mediawiki precisa do apache2 ou do httpd instalado. O APT prefere o primeiro pacote e, se não estiver disponível, passa para o próximo, mas, neste caso, o próximo é um pacote virtual httpd, que também é fornecido pelo apache2-bin. Eu presumo que isso confunda com o apt que decide instalar o apache2 apenas para jogar com segurança.

Isso pode ser resolvido de duas maneiras, você pode dizer de uma maneira explícita que não deseja instalar o apache:

➜  ~  apt-get -s install nginx-extras mediawiki apache2-bin-
NOTE: This is only a simulation!
      apt-get needs root privileges for real execution.
      Keep also in mind that locking is deactivated,
      so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package 'apache2-bin' is not installed, so not removed
The following extra packages will be installed:
  libdbd-mysql-perl libjs-jquery-cookie libjs-jquery-form libjs-jquery-tipsy
  libluajit-5.1-2 libluajit-5.1-common libonig2 libqdbm14 mediawiki-classes
  mediawiki-extensions-base mysql-client-5.5 mysql-server mysql-server-5.5
  mysql-server-core-5.5 nginx-common php-wikidiff2 php5 php5-cgi php5-cli
  php5-json php5-mysql php5-readline ssl-cert
Suggested packages:
  imagemagick php5-gd mediawiki-extensions-math memcached clamav tinyca
  fcgiwrap nginx-doc php-pear openssl-blacklist
The following NEW packages will be installed:
  libdbd-mysql-perl libjs-jquery-cookie libjs-jquery-form libjs-jquery-tipsy
  libluajit-5.1-2 libluajit-5.1-common libonig2 libqdbm14 mediawiki
  mediawiki-classes mediawiki-extensions-base mysql-client-5.5 mysql-server
  mysql-server-5.5 mysql-server-core-5.5 nginx-common nginx-extras
  php-wikidiff2 php5 php5-cgi php5-cli php5-json php5-mysql php5-readline
  ssl-cert
0 upgraded, 25 newly installed, 0 to remove and 0 not upgraded.
Inst libluajit-5.1-common (2.0.3+dfsg-3 Debian:testing [all])
Inst libluajit-5.1-2 (2.0.3+dfsg-3 Debian:testing [amd64])
Inst libonig2 (5.9.5-3.1 Debian:testing [amd64])
Inst libdbd-mysql-perl (4.028-2+b1 Debian:testing [amd64])
Inst mysql-client-5.5 (5.5.40-1 Debian:testing [amd64])
Inst mysql-server-core-5.5 (5.5.40-1 Debian:testing [amd64])
Inst mysql-server-5.5 (5.5.40-1 Debian:testing [amd64])
Inst php5-mysql (5.6.4+dfsg-1 Debian:testing [amd64])
Inst libqdbm14 (1.8.78-5+b1 Debian:testing [amd64])
Inst php5-json (1.3.6-1 Debian:testing [amd64])
Inst php5-cli (5.6.4+dfsg-1 Debian:testing [amd64])
Inst php5-readline (5.6.4+dfsg-1 Debian:testing [amd64])
Inst libjs-jquery-cookie (10-1 Debian:testing [all])
Inst libjs-jquery-form (10-1 Debian:testing [all])
Inst libjs-jquery-tipsy (10-1 Debian:testing [all])
Inst nginx-common (1.6.2-5 Debian:testing [all])
Inst nginx-extras (1.6.2-5 Debian:testing [amd64])
Inst php5-cgi (5.6.4+dfsg-1 Debian:testing [amd64])
Inst php5 (5.6.4+dfsg-1 Debian:testing [all])
Inst mediawiki-classes (1:1.19.20+dfsg-2.2 Debian:testing [all])
Inst mediawiki (1:1.19.20+dfsg-2.2 Debian:testing [all])
Inst mediawiki-extensions-base (3.7 Debian:testing [all])
Inst mysql-server (5.5.40-1 Debian:testing [all])
Inst php-wikidiff2 (1.2+git03ea59f-1 Debian:testing [amd64])
Inst ssl-cert (1.0.35 Debian:testing [all])
Conf libluajit-5.1-common (2.0.3+dfsg-3 Debian:testing [all])
Conf libluajit-5.1-2 (2.0.3+dfsg-3 Debian:testing [amd64])
Conf libonig2 (5.9.5-3.1 Debian:testing [amd64])
Conf libdbd-mysql-perl (4.028-2+b1 Debian:testing [amd64])
Conf mysql-client-5.5 (5.5.40-1 Debian:testing [amd64])
Conf mysql-server-core-5.5 (5.5.40-1 Debian:testing [amd64])
Conf mysql-server-5.5 (5.5.40-1 Debian:testing [amd64])
Conf php5-mysql (5.6.4+dfsg-1 Debian:testing [amd64])
Conf libqdbm14 (1.8.78-5+b1 Debian:testing [amd64])
Conf php5-json (1.3.6-1 Debian:testing [amd64])
Conf php5-cli (5.6.4+dfsg-1 Debian:testing [amd64])
Conf php5-readline (5.6.4+dfsg-1 Debian:testing [amd64])
Conf libjs-jquery-cookie (10-1 Debian:testing [all])
Conf libjs-jquery-form (10-1 Debian:testing [all])
Conf libjs-jquery-tipsy (10-1 Debian:testing [all])
Conf nginx-common (1.6.2-5 Debian:testing [all])
Conf nginx-extras (1.6.2-5 Debian:testing [amd64])
Conf php5-cgi (5.6.4+dfsg-1 Debian:testing [amd64])
Conf php5 (5.6.4+dfsg-1 Debian:testing [all])
Conf mediawiki-classes (1:1.19.20+dfsg-2.2 Debian:testing [all])
Conf mediawiki (1:1.19.20+dfsg-2.2 Debian:testing [all])
Conf mediawiki-extensions-base (3.7 Debian:testing [all])
Conf mysql-server (5.5.40-1 Debian:testing [all])
Conf php-wikidiff2 (1.2+git03ea59f-1 Debian:testing [amd64])
Conf ssl-cert (1.0.35 Debian:testing [all])

ou você pode relatar um bug para o pacote mediawiki pedindo que a dependência do apache2 seja removida, já que ele já está listado como provedor do pacote virtual httpd, e nesse caso ele deve resolver o problema.

Sempre que você não quiser que um pacote seja instalado, você pode acrescentar menos - ao nome do pacote que você não deseja instalar, e o apt irá respeitá-lo, como visto no exemplo.

    
por 31.12.2014 / 00:27
1

apt-get sabe que httpd foi fornecido. Ele deve estar instalando o Apache para preencher alguma outra dependência, possivelmente php5 que prefere libapache2-mod-php5 . Tente instalar explicitamente php5-cgi ou php5-fpm para cumprir a dependência de php5 .

Se você não entender por que apt-get está puxando algum pacote, use o Aptitude. É um front end de linha de comando com um pouco mais de recursos do que apt-get e uma interface de tela inteira em modo de texto. Quando um pacote é retirado para instalação automática, o aptitude diz-lhe porque (na interface em tela cheia, é visível sem barulho: pressione g depois de fazer suas seleções e realce o pacote que você está pensando na tela de confirmação). / p>     

por 31.12.2014 / 01:39

Tags