PHP를 7.4.30으로 업그레이드하는 방법은 무엇입니까?

PHP를 7.4.30으로 업그레이드하는 방법은 무엇입니까?

Ubuntu Server 20.04의 기본 PHP 버전은 7.4.3인데, 7.4.30으로 업그레이드하고 싶습니다. ppa:ondrej/php를 apt 저장소에 추가했지만 apt 업그레이드는 PHP를 8.1로 업그레이드한다는 것을 보여줍니다. PHP 8로 건너뛰고 싶지 않다고 apt에 어떻게 알릴 수 있나요?

답변1

tl;dr:

sudo apt install php7.4=1:7.4.30-5+ubuntu20.04.1+deb.sury.org+1

전체 설명:

ppa:ondrej/php이미 (를 통해 sudo add-apt-repository ppa:ondrej/php) 리포지토리를 추가했으므로 를 사용 apt-cache하여 설치할 수 있는 사용 가능한 버전을 나열한 다음 apt install특정 버전을 설치할 수 있습니다.

apt도구는 별칭을 사용하여 널리 사용되는 응용 프로그램의 설치를 단순화합니다. 실수로 발견한 것처럼 은(는) apt install php이제 의 별칭입니다 apt install php8.1. ondrej/php 저장소는 php8.1, php8.0및 에 대한 패키지를 추가하고 를 가리키는 php7.4별칭을 추가합니다 .phpphp8.1

PHP 7.4.30을 설치하려면 apt install명령에 버전 번호를 명시적으로 포함해야 합니다. 이 apt-cache명령은 사용 가능한 모든 버전을 나열합니다. 나는 or apt-cache madison보다 출력을 읽기가 더 쉽기 때문에 를 사용하는 것을 선호 하지만 이들 중 어느 것이든 필요한 정보를 제공할 것입니다. 원하는 명령을 사용하십시오.apt-cache showpkgapt-cache policy

apt-cache madison php7.4

다음과 같은 결과가 반환됩니다.

php7.4 | 1:7.4.30-5+ubuntu20.04.1+deb.sury.org+1 | http://ppa.launchpad.net/ondrej/php/ubuntu focal/main amd64 Packages
php7.4 | 7.4.3-4ubuntu2.12 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
php7.4 | 7.4.3-4ubuntu2.12 | http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
php7.4 | 7.4.3-4ubuntu1 | http://archive.ubuntu.com/ubuntu focal/main amd64 Packages

열은 다음과 같이 구성됩니다.

<package name> | <version> | <repository>

apt선택적 구문을 사용하여 특정 버전의 패키지 설치를 지원합니다 package=version. 이 경우 원하는 버전은 1:7.4.30-5+ubuntu20.04.1+deb.sury.org+1ondrej/php 저장소의 입니다.

함께 모아서:

 sudo apt install php7.4=1:7.4.30-5+ubuntu20.04.1+deb.sury.org+1

답변2

Ubuntu 관리자는 공식 패키지에 버그 수정 및 보안 업데이트를 포함합니다. 메이저 버전을 유지합니다. 따라서 업스트림 마이너 릴리스로 업그레이드할 필요가 없습니다.

7.4.3-4ubuntu2.12Ubuntu 20.04에 PHP 버전이 있음을 알 수 있습니다 .

당신은 참조 할 수 있습니다변경 로그

이러한 유형의 "업그레이드"를 찾는 것은 빈번한 실수입니다.

관련 정보