remi 저장소에서 가져오고 로컬 저장소를 생성하는 PHP를 설치하는 방법은 무엇입니까?

remi 저장소에서 가져오고 로컬 저장소를 생성하는 PHP를 설치하는 방법은 무엇입니까?

여기에 내 문제가 있습니다. PHP 8.2를 almalinux 8.6에 (강제) 설치하려고 하는데 이상한 방법이 있습니다. 인터넷 없이도 설치할 수 있다는 아이디어가 있었지만 일부 로컬 저장소에서 잘못된 버전이 나왔습니다.

내 생각은 rpm 파일을 다운로드하고, 로컬 저장소를 생성하고, 이를 설치해야 하는 컴퓨터로 전송하고 설치하는 것입니다.

지금까지 내가 한 일은 다음과 같습니다.

remi를 다운로드한 후 다음 명령을 사용하여 rpm 패키지를 다운로드했습니다.

dnf --downloadonly --downloaddir=path/to/folder install php

모든 것이 잘되었습니다.

그런 다음 명령을 사용하여 로컬 저장소를 만듭니다 createrepo.

그런 다음 모든 것을 새 기계에 넣으십시오. 거기에서 나는 다음을 수행했습니다. 파일을 myphp.repo/etc/yum.repos.d/`에 넣습니다. 파일 내용은 다음과 같습니다.

[myphp]
name= myphp
baseurl=file:///share/myphp/
enabled=1
gpgcheck=0

그런 다음 /share/myphp/모든 rpm과 repodata가 포함된 폴더를 배치했습니다.

명령을 사용할 때 yum repolist all활성화 myphp하십시오.

다음 명령을 사용하는 경우: sudo yum --disablerepo "*" --enablerepo myphp list php

나는 다음과 같은 결과를 얻습니다.php.x86_64

그러나 설치하려고 했을 때 그는 php7.2(기본값)만 사용하라고 제안했고 명령을 작성하는 동안 sudo yum module list php다음 목록만 받았습니다.

AlmaLinux 8.6 - AppStream
Name                                      Stream                                       Profiles                                                       Summary
php                                       7.2 [d]                                      common [d], devel, minimal                                     PHP scripting language
php                                       7.3                                          common [d], devel, minimal                                     PHP scripting language
php                                       7.4                                          common [d], devel, minimal                                     PHP scripting language
php                                       8.0                                          common [d], devel, minimal                                     PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

저장소 생성, 전송 또는 기타 항목에서 버그를 찾을 수 없습니다... 아이디어가 있습니까? 팁? 도움주셔서 정말 감사드립니다, 감사합니다 :)

추신: 설치해야 할 PHP 라이브러리가 많기 때문에 새로 설치할 수 있어야 하며, 이를 설치해야 하는 시스템이 많기 때문에 이를 자동화하는 것이 아이디어입니다.

답변1

rsync를 사용하여 전체 저장소와 해당 메타데이터를 추출하고 이를 로컬 미러로 사용하는 것이 더 쉽습니다.

메타데이터(repodata 디렉터리)를 생성하는 방법을 잘 모르지만 모듈 정보가 누락된 것 같습니다. 해결 방법은 module_hotfixes=1로컬 저장소 구성에서 옵션을 사용하는 것입니다.

관련 정보