Вторник, 09.07.2024 17:28

Установка PHP 8.3 на Debian 12 Bookworm после блокировки репозитория deb.sury.org

Установка PHP 8.3 на Debian 12 Bookworm после блокировки репозитория deb.sury.org

2 июля 2024 года мейнтейнер репозитория deb.sury.org включил геоблокировку для всех IP адресов из Российской Федерации. Источник на Github- https://github.com/oerdnj/deb.sury.org/issues/2155.

В июне США ввели новый пакет санкций против РФ, несмотря на то, что было сказано, что санкции не повлияют на гражданское общество, но возможно автору «позвонили» из «органов» и он заблокировал доступ с российских IP-адресов.

Здесь мы не будем давать оценки словам автора, который – «не видит смысла почему страна, начавшая войну должна получать доступ к его работе» и прочие лицемерные комментарии. Нас интересует именно способ обхода блокировок.

Сегодня мы рассмотрим способ обхода блокировок репозиториев с обновлениями PHP со стороны США.

Обновление с репозитория deb.surry.org

При попытке обновиться по команде 

sudo apt update

Вы получите ошибку:

Err:5 https://packages.sury.org/php bookworm InRelease
  451   [IP: 93.189.63.149 443]
Reading package lists... Done
E: Failed to fetch https://packages.sury.org/php/dists/bookworm/InRelease  451  [IP: 93.189.63.149 443]
E: The repository 'https://packages.sury.org/php bookworm InRelease' is not signed.
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.

451 – означает Unavailable For Legal Reasons –Недоступно по юридическим причинам.

Установка из PPA

Ранее можно было просто установить нужные пакеты из PPA репозитории, но видимо автор никак не успокоится, и установка больше не работает, так как в репозитории теперь отсутствует папка с пакетами для Debian 12.

Изображение удалено.

Мы воспользуемся альтернативными зеркалами.

Удаление репозитория deb.sury.org

Просто удалите файл с ссылкой на официальный репозиторий из

/etc/apt/sources.list.d/

Добавление зеркала репозитория deb.sury.org

Вы можете воспользоваться любым из двух репозиториев:

debian.octopuce.fr

Запустим:

echo " deb http://debian.octopuce.fr/sury-php/ bookworm main" |sudo tee /etc/apt/sources.list.d/surry-mirror.list

или

ftp.mpi-inf.mpg.de

Запустим:

echo " deb https://ftp.mpi-inf.mpg.de/mirrors/linux/mirror/deb.sury.org/repositories/php/ bookworm main" |sudo tee /etc/apt/sources.list.d/surry-mirror.list

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

Если мы сейчас запустим 

sudo apt update

То получим ошибку:

Get:5 https://ftp.mpi-inf.mpg.de/mirrors/linux/mirror/deb.sury.org/repositories/php bookworm InRelease [7,542 B]
Err:5 https://ftp.mpi-inf.mpg.de/mirrors/linux/mirror/deb.sury.org/repositories/php bookworm InRelease
  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY B188E2B695BD4743
Reading package lists... Done
W: GPG error: https://ftp.mpi-inf.mpg.de/mirrors/linux/mirror/deb.sury.org/repositories/php bookworm InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY B188E2B695BD4743
E: The repository 'https://ftp.mpi-inf.mpg.de/mirrors/linux/mirror/deb.sury.org/repositories/php bookworm InRelease' is not signed.
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.

Так как репозиторий подписан PGP, а ключ был изменен автором, то нам нужно обновить ключ с официального сайта!

Добавление нового ключа PGP

Помимо блокировки репозитория автор сменил PGP-ключи. Чтобы загрузить новый ключ воспользуйтесь анонимайзером, прокси либо VPN, чтобы скачать файл:

https://packages.sury.org/php/apt.gpg

Скачать файл вы можете с Яндекс-диска:

https://disk.yandex.ru/d/ZxgB_kRu-mwqGg

Загрузим файл на наш сервер и скопируем в домашнюю папку.

Запустим:

sudo mv ~/apt.gpg /etc/apt/trusted.gpg.d/php.gpg

Ключ установлен

Проверка зеркала

Запустим

sudo apt update
Hit:1 http://mirror.docker.ru/debian bookworm InRelease
Hit:2 http://mirror.docker.ru/debian bookworm-updates InRelease
Hit:3 http://security.debian.org/debian-security bookworm-security InRelease
Hit:4 https://download.docker.com/linux/debian bookworm InRelease
Hit:5 https://ftp.mpi-inf.mpg.de/mirrors/linux/mirror/deb.sury.org/repositories/php bookworm InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
68 packages can be upgraded. Run 'apt list --upgradable' to see them.

Попробуем установить:

sudo apt install php8.3
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libltdl7 libslirp0 pigz slirp4netns
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php8.3 libapr1 libaprutil1 libaprutil1-dbd-sqlite3
  libaprutil1-ldap liblua5.3-0 php8.3-cli php8.3-common php8.3-opcache php8.3-readline ssl-cert
Suggested packages:
  apache2-doc apache2-suexec-pristine | apache2-suexec-custom www-browser php-pear
The following NEW packages will be installed:
  apache2 apache2-bin apache2-data apache2-utils libapache2-mod-php8.3 libapr1 libaprutil1 libaprutil1-dbd-sqlite3
  libaprutil1-ldap liblua5.3-0 php8.3 php8.3-cli php8.3-common php8.3-opcache php8.3-readline ssl-cert
0 upgraded, 16 newly installed, 0 to remove and 68 not upgraded.
Need to get 6,900 kB of archives.
After this operation, 30.6 MB of additional disk space will be used.
Do you want to continue? [Y/n]

Всё работает

Заключение

Сегодня мы рассмотрели установку php версии 8.3 из альтернативного зеркала, после блокировки на территории РФ репозитория deb.sury.org

Удалили старый репозиторий.

Прописали новый репозиторий.

Загрузили и установили официальные PGP ключи deb.sury.org

Запустили обновление репозитория и проверили как работает установка.

Категория Debian

Комментарии

Спасибо, все получилось

Все получилось! Спасибо автору!

супер! Автор, благодарю!

Благодарность автору! Способ рабочий, всё получилось.

Спасибо за статью, полезно.

Жалко только, что ни одна компания, из тех, кто мнит себя российским big tech'ом, ни нашла ресурсов (ни времени, ни средств) для того, чтобы нанять человека, который бы поднял репу со сборками php для debian'а.

Больше спасибо, статья очень помогла. Не хватает только команды для переключению версии ПХП

Отключить старую версию
a2dismod php7.2

Включить новую
a2enmod php8.1

Спасибо тебе :)

Добавить комментарий

Простой текст

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Строки и абзацы переносятся автоматически.
  • Адреса веб-страниц и email-адреса преобразовываются в ссылки автоматически.
Просмотров: 3238