Не удалось установить Завихрение

(См. оба редактирования). Ubuntu 18.04, PHP 7.4.2. Я хотел бы справку, устанавливающую Вихревой пакет PHP на моем сервере. Вот проблема, с которой я встречаюсь, и что я попробовал до сих пор:

Когда я работаю sudo apt-get install php-curl, Я встречен следующей ошибкой:

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:
 php-curl : Depends: php7.4-curl but it is not going to be installed

Я выполнил эти шаги, чтобы определить и удалить поврежденные пакеты, чтобы попытаться исправить первую половину.

Когда я работаю sudo apt-get install php7.4-curl Я получаю эту ошибку:

The following packages have unmet dependencies:
 php7.4-curl : Depends: libcurl4 (>= 7.56.1) but it is not going to be installed

Таким образом, я попробовал sudo apt-get install libcurl4, и полученный это:

The following additional packages will be installed:
  php7.4-fpm
The following packages will be REMOVED:
  apache2 apache2-bin libapache2-mod-php libapache2-mod-php7.0
  libapache2-mod-php7.4 libcurl3 python-certbot-apache python3-certbot-apache
The following NEW packages will be installed:
  libcurl4 php7.4-fpm
0 upgraded, 2 newly installed, 8 to remove and 0 not upgraded.
Remv python-certbot-apache [0.31.0-1+ubuntu18.04.1+certbot+1]
Remv python3-certbot-apache [0.31.0-1+ubuntu18.04.1+certbot+1]
Remv apache2 [2.4.41-1+ubuntu16.04.1+deb.sury.org+5]
Remv libapache2-mod-php [2:7.4+75+ubuntu18.04.1+deb.sury.org+1]
Inst php7.4-fpm (7.4.4-1+ubuntu18.04.1+deb.sury.org+1 ***** The main PPA for supported PHP versions with many PECL extensions *****:18.04/bionic [amd64])
Remv libapache2-mod-php7.4 [7.4.4-1+ubuntu18.04.1+deb.sury.org+1]
Remv libapache2-mod-php7.0 [7.0.33-26+ubuntu18.04.1+deb.sury.org+1]
Remv apache2-bin [2.4.41-1+ubuntu16.04.1+deb.sury.org+5]
Remv libcurl3 [7.58.0-2ubuntu2]
Inst libcurl4 (7.58.0-2ubuntu3.8 Ubuntu:18.04/bionic-security [amd64])
Conf php7.4-fpm (7.4.4-1+ubuntu18.04.1+deb.sury.org+1 ***** The main PPA for supported PHP versions with many PECL extensions *****:18.04/bionic [amd64])
Conf libcurl4 (7.58.0-2ubuntu3.8 Ubuntu:18.04/bionic-security [amd64])

Я не понимаю, почему это хочет удалить apache2, certbot, и различные другие важные пакеты. Кто-либо может консультировать по вопросам того, как Завихрение может быть установлено, не удаляя столько других пакетов?


Править:

Я следовал за этим руководством для удаления всего связанного с PHP, затем это для установки PHP7.2 (как советуйте: версия, что 18,04 поставленных с). PHP -v теперь возвраты PHP 7.2.29-1+ubuntu18.04.1+deb.sury.org+1. Однако я все еще встречаюсь с теми же проблемами. После рекомендации попытаться установить со способностью, сообщение об ошибке немного более подробно:

    The following NEW packages will be installed:
  libcurl4{ab} php7.4-common{a} php7.4-curl
The following packages will be REMOVED:
  libonig4{u} libpcre2-8-0{u}
0 packages upgraded, 3 newly installed, 2 to remove and 0 not upgraded.
Need to get 245 kB/1,243 kB of archives. After unpacking 7,098 kB will be used.
The following packages have unmet dependencies:
 libcurl3 : Conflicts: libcurl4 but 7.58.0-2ubuntu3.8 is to be installed
 libcurl4 : Conflicts: libcurl3 but 7.58.0-2ubuntu2 is installed
The following actions will resolve these dependencies:

     Remove the following packages:
1)     apache2 [2.4.41-1+ubuntu16.04.1+deb.sury.org+5 (now)]
2)     apache2-bin [2.4.41-1+ubuntu16.04.1+deb.sury.org+5 (now)]
3)     libapache2-mod-php7.2 [7.2.29-1+ubuntu18.04.1+deb.sury.org+1 (bionic, now
4)     libcurl3 [7.58.0-2ubuntu2 (bionic, now)]
5)     python-certbot-apache [0.31.0-1+ubuntu18.04.1+certbot+1 (bionic, now)]
6)     python3-certbot-apache [0.31.0-1+ubuntu18.04.1+certbot+1 (bionic, now)]

Эта информация дает какой-либо признак на том, почему это хочет удалить apache2 и другие модули в списке, прежде чем curl/libcurl сможет быть установлен?


Редактирование 2:

После большой игры и разочарования (и отчаяние) я попробовал следующее, как рекомендуется на этом потоке:

sudo add-apt-repository main
sudo add-apt-repository universe
sudo add-apt-repository restricted
sudo add-apt-repository multiverse
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php-curl

Вывод для первых четырех команд репозитория был component is already enabled for all sources. ppa:ondrej/php был уже добавлен, как был ondrej/apache2. Я работал sudo apt-get update несколько раз.

Но так или иначе выполнение тех вещей в том порядке зафиксировало то, чем была проблема, и у меня теперь есть ЗАВИХРЕНИЕ, функционирующее на моем сервере.

0
задан 2 April 2020 в 17:00

1 ответ

Вы используете другое хранилище, названное PPA (Персональный Архив Пакета). Как объяснено здесь:

Пакеты в PPAs не подвергаются тому же процессу проверки как пакеты в основных репозиториях.

Это означает, что зависимости будут не обязательно работать на все основные системы (и это также имеет последствия безопасности):

PPAs являются альтернативой низкой безопасности основным репозиториям, таким образом, пользователь будет устанавливать программное обеспечение в их собственном риске.

1
ответ дан 7 April 2020 в 23:23

Другие вопросы по тегам:

Похожие вопросы: