インターネットに接続していない、ローカル環境下でISOファイルによるdfnインストールを実施します。
環境
AlmaLinux release 9.2 (Turquoise Kodkod)
AlmaLinux-9.2-x86_64-dvd.iso
1.ISOファイルの接続
ISOファイル(CD/DVD)をサーバ機器に接続します。
私の環境はESXi上のVMであるため、ISOファイルを接続します。
2.ISOファイルのマウント
次に、OS側からマウントを実行します。
まずはマウント先ディレクトリを作成します。
# mkdir /mnt/cdrom
続いて、作成したディレクトリにCD/DVDドライブをマウントします。
# mount -t iso9660 /dev/cdrom /mnt/cdrom
mount: /mnt/cdrom: 警告: ソースは書き込み禁止です、読み込み専用でマウントします.
3.ローカルリポジトリファイルの作成
CD/DVD内のパッケージを参照するように、リポジトリファイルを作成します。
# touch /etc/yum.repos.d/local_dvd.repo
# vi /etc/yum.repos.d/local_dvd.repo
リポジトリファイルの内容は以下で設定します。
[local_dvd_BaseOS]
name=AlmaLinux 9 x86_64 DVD - BaseOS
baseurl=file:///mnt/cdrom/BaseOS/
enabled=0
gpgcheck=0
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-AlmaLinux-9
[local_dvd_AppStream]
name=AlmaLinux 9 x86_64 DVD - AppStream
baseurl=file:///mnt/cdrom/AppStream/
enabled=0
gpgcheck=0
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-AlmaLinux-9
BaseOS
BaseOS リポジトリーには、すべてのインストールの基盤となるオペレーティングシステム機能のコアセットが含まれています。このコンテンツは RPM パッケージの形式で入手でき、Red Hat Enterprise Linux の以前のリリースと同様のサポート条件が適用されます。AppStream
AppStream リポジトリーには、さまざまなワークロードとユースケースをサポートする追加のユーザー空間アプリケーション、ランタイム言語、およびデータベースが同梱されます。AppStream のコンテンツ形式には RPM パッケージと、RPM 形式の拡張 (モジュール と呼ばれます) の 2 つが利用できます。
4.dnfを使用したインストール
まずはインストール前にclean all
を実行しておきます。
# dnf clean all
0 ファイルが削除されました
インストール前にlist
コマンドを利用して接続確認を行います。
--disablerepo=\*
既存の全てのリポジトリを使用しません。
--enablerepo=local_dvd_*
ローカルリポジトリを使用します(local_dvd_BaseOS、local_dvd_AppStream)。
# dnf --disablerepo=\* --enablerepo=local_dvd_* list
AlmaLinux 9 x86_64 DVD - BaseOS 19 MB/s | 1.9 MB 00:00
AlmaLinux 9 x86_64 DVD - AppStream 28 MB/s | 6.9 MB 00:00
インストール済みパッケージ
NetworkManager.x86_64 1:1.42.2-1.el9 @anaconda
NetworkManager-config-server.noarch 1:1.42.2-1.el9 @anaconda
NetworkManager-libnm.x86_64 1:1.42.2-1.el9 @anaconda
NetworkManager-team.x86_64 1:1.42.2-1.el9 @anaconda
NetworkManager-tui.x86_64 1:1.42.2-1.el9 @anaconda
PackageKit.x86_64 1.2.4-2.el9 @AppStream
PackageKit-glib.x86_64 1.2.4-2.el9 @AppStream
<中略>
利用可能なパッケージ
389-ds-base.x86_64 2.2.4-3.el9 local_dvd_AppStream
389-ds-base-libs.x86_64 2.2.4-3.el9 local_dvd_AppStream
Box2D.i686 2.4.1-7.el9 local_dvd_AppStream
Box2D.x86_64 2.4.1-7.el9 local_dvd_AppStream
CUnit.i686 2.1.3-25.el9 local_dvd_AppStream
CUnit.x86_64 2.1.3-25.el9 local_dvd_AppStream
HdrHistogram_c.i686 0.11.0-6.el9 local_dvd_AppStream
ModemManager.x86_64 1.20.2-1.el9 local_dvd_BaseOS
ModemManager-glib.i686 1.20.2-1.el9 local_dvd_BaseOS
ModemManager-glib.x86_64 1.20.2-1.el9 local_dvd_BaseOS
NetworkManager-adsl.x86_64 1:1.42.2-1.el9 local_dvd_BaseOS
NetworkManager-bluetooth.x86_64 1:1.42.2-1.el9 local_dvd_BaseOS
<後略>
インストールを実施してみます。
# dnf --disablerepo=\* --enablerepo=local_dvd_* install -y bind
依存関係が解決しました。
=================================================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
=================================================================================================================
インストール:
bind x86_64 32:9.16.23-11.el9 local_dvd_AppStream 488 k
依存関係のインストール:
bind-dnssec-doc noarch 32:9.16.23-11.el9 local_dvd_AppStream 45 k
python3-bind noarch 32:9.16.23-11.el9 local_dvd_AppStream 61 k
python3-ply noarch 3.11-14.el9 local_dvd_BaseOS 103 k
弱い依存関係のインストール:
bind-dnssec-utils x86_64 32:9.16.23-11.el9 local_dvd_AppStream 113 k
トランザクションの概要
=================================================================================================================
インストール 5 パッケージ
《中略》
完了しました!
インストールが問題なく成功しました。
参考