GNU/Linux >> Linux の 問題 >  >> Linux

Red HatEnterpriseLinuxインストールISOイメージの最適化

編集者注:Red Hat Enterprise Linuxインストールメディアの変更はサポートされているプロセスではありませんが、この便利な回避策が役立つ場合があります。ご使用の環境で検討する可能性のある詳細およびその他のオプションについては、RedHatカスタマーポータルでこのソリューションを参照してください。

誰もがRedHatEnterprise Linux(RHEL)をインストールする必要がある場所への高速ネットワーク接続を持っているわけではありません。顧客は、インストールメディアを減らして、低速のネットワークでの配信を高速化する方法をよく尋ねます。カスタムの小さなRHELインストールISOを構築する手順を説明します。デフォルトのRHEL7.8ISOのサイズは4GBを超えています。これらの手順は、サイズが1GBで小規模なRHELインストールをサポートするRHEL7.8ISOを作成する方法を示しています。

ステップ1:目的のパッケージセットを使用してRHEL7.8システムを構築する

任意のインストール方法を使用して、RHEL7.8を目的の状態にインストール/構成します。グラフィカルインストーラーを使用して、「最小」パッケージオプションでビルドしました。再起動後、インストールされているすべてのRPMパッケージのリストを作成して、そのリストをソースとして使用して、カスタマイズされた小さなISOを構築できるようにします。このRPMのソースリストにより、新しい小さなISOには、インストールに必要なパッケージのみが含まれるため、インストールに必要なISOの全体的なサイズが削減されます。

ステップ2では、ビルドRPMリストがパッケージリストのソースとして使用されます。

# rpm -qa > rpmlist.txt

rpmlist.txtをコピーします 手順2でISOビルドシステムディレクトリに移動します。

ステップ2:小さなISOを作成する

次の手順では、小さなISOディレクトリ構造を構築し、手順1で提供されたRPMリストからコンテンツをコピーしてから、インストールに使用する小さなISOファイルを生成します。

1. RHEL7.8バイナリISOをダウンロードします:

https://access.redhat.com/downloads/content/69/ver=/rhel---7/7.8/x86_64/product-software

2.ループマウントして、その内容を操作する場所にコピーできるようにします。

# mkdir /mnt/rhel7.8-master
# mount -o loop rhel-server-7.8-x86_64-dvd.iso /mnt/rhel7.8-master

3.作業ディレクトリ構造を作成し、マスターISOコンテンツをコピーします。

# mkdir /mnt/rhel7.8-small
# cp -aR /mnt/rhel7.8-master/* /mnt/rhel7.8-small/

4.既存のパッケージをすべて削除します:

# chmod u+w /mnt/rhel7.8-small/Packages
# rm -rf /mnt/rhel7.8-small/Packages/*

5.すべてのアドオンを削除します(オプション):

# chmod -R u+w /mnt/rhel7.8-small/addons
# rm -rf /mnt/rhel7.8-small/addons/*

6.手順1で生成したRPMリストテキストファイルからRPMリストを/mnt/rhel7.8-small/Packages/にコピーします。 :

# for i in `cat rpmlist.txt`; do cp /mnt/rhel7.8-master/Packages/$i* /mnt/rhel7.8-small/Packages/; done

7. ISOを作成します:

次のISOツールをインストールします:

# yum install genisoimage isomd5sum syslinux

# chmod -R u+w /mnt/rhel7.8-small/isolinux

# cd /mnt/rhel7.8-small

# mkisofs -o ../rhel7small.iso -b isolinux/isolinux.bin -J -R -l -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -graft-points -V "RHEL-7.8 Server.x86_64"  -jcharset utf-8 .

8. MD5の合計をISOに埋め込みます:

# implantisomd5 rhel7small.iso

9. ISOイメージをUSBブートイメージと互換性があるように変換します:

# isohybrid -uefi rhel7small.iso

ステップ3:Satellite6コンテンツビューから最新のRPMでISOを更新する

Satellite 6をお持ちの場合は、yumdownloaderを使用できます サテライトコンテンツビューから更新されたコンテンツをダウンロードするユーティリティ。これにより、最新のコンテンツで更新された小さなISOが生成され、導入後すぐにシステムにパッチを適用する必要がなくなります。

yumdownloaderをインストールします 、更新されたコンテンツをダウンロードし、新しい更新された小さなISOを作成します。

1. yum-utilsをインストールします プラグイン:

# yum install yum-utils

2.Satellite6コンテンツビューから最新のRPMをダウンロードします。これは、システムが現在登録されており、Satellite6の更新されたコンテンツビューにサブスクライブされていることを前提としています。

# mkdir /mnt/downloads

# cd /mnt/downloads

手順1で作成したRPMリストをforループのソースとして使用して、x86_64アーキテクチャパッケージのみをダウンロードし、i686パッケージをすべて除外するようにします。

# for i in `cat rpmlist.txt | sed -e 's/\([^.]*\).*/\1/' -e 's/\(.*\)-.*/\1/'`;do yumdownloader -x *i686 --archlist=x86_64 $i; done

3.更新されたRPMをPackagesディレクトリ構造にコピーしてから、RPMメタデータを再作成します。

# chmod -R u+w /mnt/rhel7.8-small/Packages

# rm -rf /mnt/rhel7.8-small/Packages

# cp /mnt/downloads/* /mnt/rhel7.8-small/Packages

# cd /mnt/rhel7.8-small

# chmod -R u+w /mnt/rhel7.8-small/repodata

# createrepo -g repodata/*comps*.xml . --update

4.更新されたISOを作成します:

# cd /mnt/rhel7.8-small

# mkisofs -o ../rhel7small-updated.iso -b isolinux/isolinux.bin -J -R -l -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -e images/efiboot.img -no-emul-boot -graft-points -V "RHEL-7.8 Server.x86_64" -jcharset utf-8 .

5. MD5の合計をISOに埋め込みます:

# implantisomd5 rhel7small.iso

6. ISOイメージをUSBブートイメージとして互換性があるように変換します:

# isohybrid -uefi rhel7small-updated.iso

まとめ

要約すると、パッケージの数を目的のインストールに必要な数だけに減らすことで、インストールメディアのISOファイルのサイズを大幅に縮小できます。このサイズの縮小により、遅いネットワーク接続速度を処理する場合に、より迅速な展開またはステージング時間を実現できます。

[無料のオンラインコース:Red HatEnterpriseLinuxの技術概要。 ]


Linux
  1. Red Hat EnterpriseLinux8でFTPベースのYUM/DNFリポジトリを作成します

  2. Red Hat EnterpriseLinux8でApacheベースのYUM/DNFリポジトリを作成します

  3. Red Hat EnterpriseLinux8でNginxベースのYUM/DNFリポジトリを作成します

  1. Red Hat Enterprise Linuxをグラフィカルモードでインストール–インストール後

  2. Red HatEnterpriseLinuxをグラフィカルモードでインストールする

  3. Red Hat Enterprise Linux への IBM DB2 のインストール

  1. Red HatEnterpriseLinuxをテキストモードでインストールする

  2. Red Hat Enterprise Linuxを登録し、Ansibleにサブスクリプションを添付します

  3. Red Hat EnterpriseLinux7および8でのIPv6アドレスの設定