DVD ISO を使用して Red Hat Enterprise Linux 5/6/7/8/9 の Apache 経由で更新やインストールを配信できるようにローカルのレポジトリーを作成する方法
Environment
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise Linux 8
- Red Hat Enterprise Linux 9
Issue
yum
ローカルレポジトリーを Apache 経由で配信し、Red Hat Enterprise Linux の HTTP 経由で DVD ISO の内容を共有するように設定するにはどうすればよいですか。http
ソースを使用して Red Hat Enterprise Linux のネットワークインストール方法を使用するために必要な手順は何ですか。- 更新またはインストール用に DVD iso を使用して Red Hat Enterprise Linux 5/6/7/8/9 のローカルリポジトリーを作成する方法を教えてください。
- インターネットに接続していない場合に RHEL のマイナーバージョンをアップグレードするにはどうすればよいですか。
- 内部 yum リポジトリーを設定するにはどうすればよいですか。
Resolution
このサーバー自体 (セルフホスト) でのみ使用できる ISO イメージ経由でリポジトリーを作成します。
-
iso ファイルを yum の宛先として/mnt/rhiso にマウントします。
# mkdir -p /mnt/rhiso # mount -o loop RHELX-XXXX.iso /mnt/rhiso
-
DVD を使用する場合は、DVD を cdrom に挿入し、DVD を yum の宛先として/mnt/rhiso にマウントします。
# mkdir -p /mnt/rhiso # mount /dev/cdrom /mnt/rhiso
-
サーバー上に
yum repo
ファイル (/etc/yum.repos.d/dvd.repo
) を作成します。[RHEL5-Server-DVD] name=Red Hat Enterprise Linux $releasever - $basearch (DVD) baseurl=file:///mnt/rhiso/Server enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
-
ワークステーションに RHEL を使用する場合は、次のようになります。
[RHEL-Server-DVD] name=Red Hat Enterprise Linux $releasever - $basearch (DVD) baseurl=file:///mnt/rhiso/Workstation enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
-
Red Hat Enterprise Linux 8/9 を使用している場合は、次のようになります。
# vi /etc/yum.repos.d/BaseOS.repo [BaseOS] name=Red Hat Enterprise Linux 8.0 BaseOS baseurl=file:///mnt/rhiso/BaseOS/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release # vi /etc/yum.repos.d/AppStream.repo [AppStream] name=Red Hat Enterprise Linux 8.0 AppStream baseurl=file:///mnt/rhiso/AppStream/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
このサーバーと別のサーバーで使用できる apache (httpd) ベースの yum リポジトリーを設定します。
要件:
yum
リポジトリーをホストするサーバーには、httpd
およびyum
パッケージがインストールされている必要があります。yum
リポジトリーを使用するクライアントサーバーには、yum
パッケージがインストールされている必要があります。
手順
-
httpd
サーバーで、Red Hat Enterprise Linux DVD ISORHELX-XXXX.iso
の内容を宛先の Web ディレクトリーにコピーします。# mkdir -p /var/www/html/cdrom/ # mount -o loop RHELX-XXXX.iso /media # shopt -s dotglob # cp -apvR /media/* /var/www/html/cdrom/
-
/etc/httpd/conf/httpd.conf
の以下のエントリーを変更します。<ip_address>
は、リポジトリーサーバーの IP アドレスです。ServerAdmin root@<ip_address> DocumentRoot /var/www/html/ ServerName <ip_address>
注記: ServerName パラメーターが存在しない可能性があります。
-
httpd
の設定を確認して、サービスを再起動します。# httpd -t # service httpd start
-
これで、
lynx
を使用して、非常に重要なrepomd.xml
ファイルにアクセスできるようになります。# lynx http://<ip_address>/cdrom/repodata/repomd.xml
-
Apache で 403 forbidden error を発生する場合、SELinux が原因の可能性があります。
httpd
コンテンツの SELinux コンテキストが正しいことを確認します。# chcon -R -t httpd_sys_content_t /var/www/html/cdrom/ Or # restorecon -vR /var/www/html/cdrom/
-
コンテキストの変更を確認します。
iso9660_t
などの代わりに、コンテキストにhttpd_sys_content_t
を指定する必要があります。# ls -ldZ /var/www/html/cdrom/* dr-xr-xr-x. 2 root root system_u:object_r:httpd_sys_content_t:s0 61440 Dec 21 21:02 /var/www/html/cdrom/Packages dr-xr-xr-x. 2 root root system_u:object_r:httpd_sys_content_t:s0 4096 Jan 17 08:12 /var/www/html/cdrom/repodata <snip>
-
クライアントシステムで、サーバーを参照する
yum
リポジトリーファイルを設定します。# cat /etc/yum.repos.d/dvd.repo [RHEL5-Server-DVD] name=Red Hat Enterprise Linux $releasever - $basearch (DVD) baseurl=http://<ip_address>/cdrom/ enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
- RHEL5 で Cluster および Cluster Storage パッケージをインストール/更新する場合は、/etc/yum.repos.d/dvd.repo ファイルに以下の行を追加します。
# cat /etc/yum.repos.d/dvd.repo [RHEL5-Cluster] name=Red Hat Enterprise Linux Cluster baseurl=http://<ip_address>/cdrom/Cluster enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release [RHEL5-ClusterStorage] name=Red Hat Enterprise Linux - ClusterStorage baseurl=http://<ip_address>/cdrom/ClusterStorage enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
- RHEL6 で HighAvailability および ResilientStorage パッケージを更新する場合は、/etc/yum.repos.d/dvd.repo ファイルに以下の行を追加します。
# cat /etc/yum.repos.d/dvd.repo [RHEL6-HighAvailability] name=Red Hat Enterprise Linux HighAvailability baseurl=http://<ip_address>/cdrom/HighAvailability enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release [RHEL6-ResilientStorage] name=Red Hat Enterprise Linux - ResilientStorage baseurl=http://<ip_address>/cdrom/ResilientStorage enabled=1 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
-
クライアント設定を確認します。
# yum clean all # yum repolist [...] RHEL5-Server-DVD | 1.5 kB 00:00 RHEL5-Server-DVD/primary | 920 kB 00:00 RHEL5-Server-DVD 3285/3285 repo id repo name status RHEL5-Server-DVD Red Hat Enterprise Linux 5Server - x86_64 (DVD) 3,285 repolist: 3,285
-
クライアントを更新します。
# yum update
キックスタートインストール用の HTTPD ソース:
-
httpd
パッケージをインストールします。インストールされている場合は、この手順をスキップします。# yum install httpd
-
/var/www/html/rhel6/
ディレクトリーを作成します。作成されている場合は、この手順をスキップします。# mkdir /var/www/html/rhel6/
-
RHEL DVD を DVD ドライブに挿入し、
/mnt
の下にマウントします。# mount /dev/sr0 /mnt
-
次に、シェルを作成して、すべてのコンテンツを
/var/www/html/rhel6/
ディレクトリーにコピーします。# shopt -s dotglob # cp -apvrf /mnt/* /var/www/html/rhel6/
-
サービスを開始し、
chkconfig
でサービスをオンにします。# service httpd restart;chkconfig httpd on
-
次に、キックスタートファイルで次の
URL
を使用します。インストールはhttp
ソースを通じて実行されます。url --url=http://<ip>/rhel6/
Red Hat Enterprise Linux 8 と 9 の場合、DVD ISO で設定する必要があるリポジトリーが 2 つある点が唯一の違いです。
手順は次のようになります。
-
Red Hat Enterprise Linux 8/9 DVD ISO を次のようにマウントします。
# mount -o loop rhel-8.0-x86_64-dvd.iso /mnt
-
すべてのデータを
/var/www/html/
または任意のローカルディレクトリーにコピーします。# shopt -s dotglob # cp -avRpf /mnt/* /var/www/html/
-
クライアント用に次のように
.repo
ファイルを作成します。RHEL 9 .repo エントリーに適切な 'name' ラベルを選択します。# cat /etc/yum.repos.d/BaseOS.repo [BaseOS] name=Red Hat Enterprise Linux 8.0 BaseOS enabled=1 gpgcheck=1 baseurl=http://<Server-IP>/BaseOS/ # cat /etc/yum.repos.d/AppStream.repo [AppStream] name=Red Hat Enterprise Linux 8.0 AppStream enabled=1 gpgcheck=1 baseurl=http://<Server-IP>/AppStream/
-
既存の
yum/dnf cache
を消去し、クライアント側で更新されたリポジトリーリストを取得します。# dnf clean all # rm -rf /var/cache/yum/* # dnf makecache # dnf repolist
Root Cause
Diagnostic Steps
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments