ここに私の問題があります。 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
リポジトリの作成、転送、またはその他のアイテムにバグが見つかりません...アイデアはありますか?ヒント?助けてくれてありがとう、ありがとうございます:)
PS:インストールする必要があるPHPライブラリが多いため、新しくインストールできる必要があり、インストールする必要があるシステムが多いため、これを自動化するのがアイデアです。
答え1
rsyncを使用してリポジトリ全体とそのメタデータを抽出し、それをローカルミラーとして使用する方が簡単です。
メタデータ(repodataディレクトリ)を作成する方法はわかりませんが、モジュール情報が欠落しているようです。回避策は、module_hotfixes=1
ローカルストレージ構成でオプションを使用することです。