Установка PHP на сервер Ubuntu 22.10

Я пытаюсь установить php на Ubuntu 22.10, раньше я мог сделать «apt install php» и покончить с этим, но теперь я не могу по какой-то причине?

Все, что я получаю, когда запускаю install php, это:

root@backups:/# apt install php
Reading package lists... Done
Building dependency tree... Done
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:
 php8.2 : Depends: libapache2-mod-php8.2 but it is not installable or
                   php8.2-fpm but it is not installable or
                   php8.2-cgi but it is not installable
          Depends: php8.2-common but it is not installable
E: Unable to correct problems, you have held broken packages.

Мне все равно, какую версию php я могу получить, пока это 7 или 8, я перепробовал много руководств, все они говорят вам либо добавить это (http://ppa.launchpad.net/ondrej /php/ubuntu/pool/main/p/php8.1/) (что не работает) или просто запустить apt install, что тоже не работает. Или какая-то его вариация.

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

При установке зависимости получаю:

root@backups:/# sudo apt install php8.1-fpm
Reading package lists... Done
Building dependency tree... Done
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:
 php8.1-fpm : Depends: php8.1-common (= 8.1.18-1+ubuntu20.04.1+deb.sury.org+1) but 8.1.7-1ubuntu3.3 is to be installed
E: Unable to correct problems, you have held broken packages.

Добавление репозитория ppa:ondrej/php приводит к:

root@backups:/var/www/snipeit# sudo add-apt-repository ppa:ondrej/nginx-mainline
PPA publishes dbgsym, you may need to include 'main/debug' component
Repository: 'deb https://ppa.launchpadcontent.net/ondrej/nginx-mainline/ubuntu/ kinetic main'
Description:
This branch follows latest NGINX Mainline packages compiled against latest OpenSSL for HTTP/2 and TLS 1.3 support.

BUGS&FEATURES: This PPA now has a issue tracker: https://deb.sury.org/#bug-reporting

PLEASE READ: If you like my work and want to give me a little motivation, please consider donating: https://donate.sury.org
More info: https://launchpad.net/~ondrej/+archive/ubuntu/nginx-mainline
Adding repository.
Press [ENTER] to continue or Ctrl-c to cancel.

Продолжение просто выдает мне ошибку при обновлении

E: The repository 'https://ppa.launchpadcontent.net/ondrej/nginx-mainline/ubuntu kinetic Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Я предполагаю, что эта проблема связана с тем, что 22.10 является довольно новым, но я всегда устанавливал последние версии Ubuntu и никогда не имел проблем с установкой программ, я думал, что в этом весь смысл Linux, стабильного и надежного.

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

Вместо этого вы можете использовать этот источник deb.sury.org

Marcin Orlowski 27.04.2023 16:10

Это тоже не работает

Alex 27.04.2023 16:23

Взгляните на github.com/oerdnj/deb.sury.org/issues/1662 — deb.sury.org не поддерживает выпуски, отличные от lts.

Nico Haase 27.04.2023 16:28

Я бы предположил, что вам нужно удалить пакеты deb.sury — 8.1.18-1+ubuntu20.04.1+deb.sury.org+1 не похож на версию пакета, которую вы должны были установить в Ubuntu 22.10.

Nico Haase 27.04.2023 16:30

я проверил репозиторий ondrej, и на сегодняшний день в нем нет пакета для Ubuntu 22.10 .... если вы хотите установить php на 22.10, вы можете скомпилировать его из исходного кода - но могут возникнуть ошибки или лучше понизить ОС до 22.04 ЛТС ...

Anant V 27.04.2023 17:02
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
5
127
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Я очень рекомендую установить PHP через PPA Ondřej Surý

sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt search php

Вы сможете не только установить PHP, но и большинство его популярных пакетов PECL.

Это не сработает, так как Ondrejs PPA не поддерживает выпуски, отличные от lts.

Nico Haase 27.04.2023 16:28

Не могли бы вы проверить, работает ли это для установки Ubuntu Server 22.10? потому что, если это произойдет, я просто переустановлю Ubuntu (более старую версию LTS) и покончу с этим.

Alex 27.04.2023 16:28

@Alex, я попробую и обновлю пост, если потребуются какие-либо изменения.

rogervila 27.04.2023 16:30

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

Alex 27.04.2023 17:23

Предоставленное @rogervila решение работает для всех выпусков LTS.

Alex 27.04.2023 17:24

Мораль этой истории: не используйте технологию Bleeding Edge для развертывания серверов. Оставайтесь на релизах LTS.

По-видимому, библиотека PHP еще не была скомпилирована для Ubuntu 22.10. Просто перейдите на версию 22.04 LTS, и она заработает с первого раза, вам даже не нужно добавлять какие-либо репозитории, просто установите ее.

Решение @rogervila providad тоже работает, и вы можете заставить его работать на Ubuntu 22.10, но проще перейти на выпуск LTS.

«Библиотека PHP еще не была скомпилирована для Ubuntu 22.10» — конечно, была. packages.ubuntu.com/kinetic/php перечисляет множество пакетов PHP, которые являются частью собственных репозиториев Ubuntu.

Nico Haase 28.04.2023 09:25

«Конечно, было», я имел в виду репозиторий ppa:ondrej/php. У него нет файла выпуска для Ubuntu 22.10. ``` E: В репозитории 'ppa.launchpadcontent.net/ondrej/nginx-mainline/ubuntukineti‌​c Release' нет файла Release. ```

Alex 29.04.2023 19:05

Этот комментарий кажется мне довольно странным — почему он относится к nginx для установки пакетов PHP? Кроме того, оригинальные исходники пакетов для Ubuntu 22.10 содержат все необходимые пакеты PHP. Если вы хотите использовать любой сторонний источник пакетов, выберите тот, который поддерживается

Nico Haase 02.05.2023 09:08

Еще раз, я имею в виду репозиторий ppa:ondrej/php, а не репозиторий Ubuntu по умолчанию. Проблема решена, в репозитории ppa:ondrej/php нет выпусков для Ubuntu 20.10, так как он официально поддерживает только выпуски LTS. В конце истории, если вы хотите использовать репозиторий ppa:ondrej/php, вам нужно получить выпуск LTS. Больше нечего обсуждать.

Alex 03.05.2023 17:30

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