第24章 ネットワークからのインストールの準備
インストールサーバーを使用したネットワークインストールでは、ネットワークブート サーバーを使用して複数のシステムに Red Hat Enterprise Linux をインストールできます。この方法では、PXE インストール設定されたシステムはすべてこのサーバーによって提供されるイメージを使用して起動し、インストールプログラムを自動的に開始します。
注記
Red Hat Satellite には、PXE サーバーを自動設定する機能があります。詳細は、 Red Hat Satellite のドキュメント を参照してください。
ネットワークからのインストールには、少なくとも以下の 2 つのシステムが必要になります。
- サーバー: DHCP サーバー、起動ファイルを提供する TFTP サーバー、およびインストールイメージを格納している HTTP、FTP もしくは NFS サーバーを稼働するシステム。理論的には、これらの各サーバーは別個のシステム上で稼働することが可能です。本セクションの手順では便宜上、単一のシステムがこれらすべてのサーバーを稼働していることを前提とします。
- クライアント - Red Hat Enterprise Linux をインストールするシステムインストールが開始されると、クライアントは DHCP サーバーにクエリーを行い、TFTP サーバーから起動ファイルを取得し、HTTP、FTP または NFS サーバーからインストールイメージをダウンロードします。
他のインストール方法とは異なり、インストールを開始するためにクライアント (インストール先のシステム) に物理的な起動メディアを挿入する必要はありません。本章では、ネットワークからのインストールの準備に必要となるステップを説明します。
ネットワークインストールの準備として次の手順を実行してください。
- ネットワークサーバー(
NFS
、HTTPS
、HTTP
、またはFTP
)を設定して、インストールツリーまたはインストール ISO イメージをエクスポートします。設定を記述する手順は、「インストールソース - ネットワーク」 を参照してください。 - ネットワークブートに必要な tftp サーバーでファイルを設定し、
DHCP
を設定し、PXE サーバーでtftp
サービスを開始します。詳細は 「ネットワークブートサービスの設定」 を参照してください。重要GRUB2 ブートローダーは、tftp サーバーに加えて、HTTP
からのネットワークブートをサポートします。ただし、このプロトコルによる起動ファイル (カーネルおよびインストーラー用初期 RAM ディスク) の取得は時間がかかり、タイムアウトになるリスクがあります。tftp サーバーを使用してブートファイルを提供することが推奨されます。この警告は、カーネルと初期 RAM ディスク(vmlinuz
およびinitrd
)にのみ適用されます。HTTP
サーバーから インストールソース を取得しても、このリスクはありません。 - クライアント (Red Hat Enterprise Linux をインストールするシステム) を起動し、インストールを開始します。
注記
本章の手順では、Red Hat Enterprise Linux 7 システムにネットワークブートサーバーを設定する方法を説明します。以前の Red Hat Enterprise Linux リリースでネットワークからの起動を設定する方法については、各リリースの『インストールガイド』を参照してください。
24.1. ネットワークブートサービスの設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
インストールで使用するパッケージリポジトリーが格納されたネットワークサーバーの設定が完了したら、次は PXE サーバー自体を設定します。このサーバーには、Red Hat Enterprise Linux を起動し、インストールを開始するために必要なファイルが含まれます。さらに、
DHCP
サーバーを設定し、必要なすべてのサービスを有効にして起動する必要があります。
注記
ネットワークブートの設定手順は、Red Hat Enterprise Linux をインストールする AMD64/Intel 64 システムが BIOS または UEFI を使用するかどうかによって異なります。ご使用のシステムがどちらを使用しているかを製造元が提供する説明書でご確認の上、該当する手順に従ってください。
GRUB2 ブートローダーを使用してネットワーク上の場所から IBM Power Systems を起動する方法は別途提供されています。詳細は 「GRUB2 を使用した IBM Power Systems 向けのネットワークブートの設定」 を参照してください。
ヘッドレスシステム (ディスプレイ、キーボード、マウスが直接接続されていないシステム) で使用するネットワークブートサーバーの設定に関する詳細情報は、26章ヘッドレスシステムを参照してください。
24.1.1. BIOS ベースの AMD64 と Intel 64 クライアント向け TFTP サーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下の手順では、BIOS ベースの AMD64 および Intel 64 システムの起動用の PXE サーバーの準備について説明しています。UEFI ベースのシステムの詳細は 「UEFI ベースの AMD64/Intel 64 および ARM クライアント向け TFTP サーバーの設定」 を参照してください。
手順24.1 BIOS ベースのシステム向けに TFTP ブートサーバーを設定する
- tftp-server パッケージをインストールします。これを行うには、
root
で以下のコマンドを入力します。yum install tftp-server
# yum install tftp-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ファイアウォールで
tftp
サービスへの着信接続を許可します。firewall-cmd --add-service=tftp
# firewall-cmd --add-service=tftp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記上記のコマンドが有効にするのは、次回のサーバー再起動までのアクセスのみです。アクセスを永続的に許可するには、--permanent
オプションを追加します。ファイアウォール設定の詳細は、Red Hat Enterprise Linux 7 セキュリティーガイドを参照してください。 - SYSLINUX に同梱されているブートイメージを使用するように
DHCP
サーバーを設定します。DHCP サーバーがインストールされていない場合は、Red Hat Enterprise Linux 7 ネットワークガイドを参照してください。/etc/dhcp/dhcpd.conf
ファイルの設定例は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - これで、完全インストール DVD の ISO イメージファイルにある SYSLINUX パッケージの
pxelinux.0
ファイルが必要になります。このファイルにアクセスするには、次のコマンドを root で実行します。mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
# mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp -pr /mount_point/Packages/syslinux-version-architecture.rpm /publicly_available_directory
# cp -pr /mount_point/Packages/syslinux-version-architecture.rpm /publicly_available_directory
Copy to Clipboard Copied! Toggle word wrap Toggle overflow umount /mount_point
# umount /mount_point
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パッケージを展開します。rpm2cpio syslinux-version-architecture.rpm | cpio -dimv
# rpm2cpio syslinux-version-architecture.rpm | cpio -dimv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow tftpboot/
内にpxelinux/
ディレクトリーを作成し、pxelinux.0
ファイルをそこにコピーします。mkdir /var/lib/tftpboot/pxelinux
# mkdir /var/lib/tftpboot/pxelinux
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp publicly_available_directory/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux
# cp publicly_available_directory/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pxelinux/
ディレクトリーにpxelinux.cfg/
ディレクトリーを作成します。mkdir /var/lib/tftpboot/pxelinux/pxelinux.cfg
# mkdir /var/lib/tftpboot/pxelinux/pxelinux.cfg
Copy to Clipboard Copied! Toggle word wrap Toggle overflow default
という名前の設定ファイルをpxelinux.cfg/
ディレクトリーに追加します。/var/lib/tftpboot/pxelinux/pxelinux.cfg/default
にある設定ファイルのサンプルは以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要上記の例のinst.repo=
Anaconda オプションを使用して、インストールプログラムのイメージとインストールソースを指定するために常に使用する必要があります。このオプションを使用しないと、インストールプログラムは起動できなくなります。Anaconda の起動オプションの詳細は、「ブートメニューによるインストールシステムの設定」 を参照してください。/var/lib/tftpboot/
ディレクトリーにブートイメージファイルを保存するサブディレクトリーを作成し、そのディレクトリーにブートイメージファイルをコピーします。この例では、/var/lib/tftpboot/pxelinux/images/RHEL-release_number/
ディレクトリーを使用します。mkdir -p /var/lib/tftpboot/pxelinux/images/RHEL-7.1/ cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/images/RHEL-release_number/
# mkdir -p /var/lib/tftpboot/pxelinux/images/RHEL-7.1/ # cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/pxelinux/images/RHEL-release_number/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 最後に、サービスを開始して有効にします。
dhcpd
サービス:systemctl start dhcpd systemctl enable dhcpd
# systemctl start dhcpd # systemctl enable dhcpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - tftpd サービスを管理する
xinetd
サービス:systemctl start xinetd systemctl enable xinetd
# systemctl start xinetd # systemctl enable xinetd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
この手順を完了すると、PXE ブートサーバーが PXE クライアントにサービスを提供できるようになります。Red Hat Enterprise Linux をインストールするシステムを起動し、ブートソースを指定するように求められたら PXE ブート を選択して、ネットワークインストールを開始できます。詳細は、「PXE を使ったネットワークからの起動」 を参照してください。
24.1.2. UEFI ベースの AMD64/Intel 64 および ARM クライアント向け TFTP サーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
以下の手順では、UEFI ベースの AMD64/Intel 64 および ARM システムの起動用の PXE サーバーの準備について説明しています。BIOS ベースのシステムの詳細は、「BIOS ベースの AMD64 と Intel 64 クライアント向け TFTP サーバーの設定」 を参照してください。
手順24.2 UEFI ベースのシステム向けに TFTP での起動を設定する
注記
Red Hat Enterprise Linux 7 UEFI PXE ブートは、MAC ベースの grub メニューファイルの小文字のファイル形式に対応します。たとえば、grub2 の MAC アドレスのファイル形式は
grub.cfg-01-aa-bb-cc-dd-ee-ff
です。
- tftp-server パッケージをインストールします。これを行うには、
root
で以下のコマンドを入力します。yum install tftp-server
# yum install tftp-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ファイアウォールで
tftp
サービスへの着信接続を許可します。firewall-cmd --add-service=tftp
# firewall-cmd --add-service=tftp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記上記のコマンドが有効にするのは、次回のサーバー再起動までのアクセスのみです。アクセスを永続的に許可するには、--permanent
オプションを追加します。ファイアウォール設定の詳細は、Red Hat Enterprise Linux 7 セキュリティーガイドを参照してください。 - shim に同梱されている EFI ブートイメージを使用するように
DHCP
サーバーを設定します。DHCP サーバーがインストールされていない場合は、Red Hat Enterprise Linux 7 ネットワークガイドを参照してください。/etc/dhcp/dhcpd.conf
ファイルの設定例は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - これで、shim パッケージの
shim.efi
ファイルと、ISO イメージファイルの grub 2-efi パッケージのgrubx64.efi
ファイルが必要になります。これらのファイルにアクセスするには次のコマンドを root で実行します。mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
# mount -t iso9660 /path_to_image/name_of_image.iso /mount_point -o loop,ro
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp -pr /mount_point/Packages/shim-version-architecture.rpm /publicly_available_directory
# cp -pr /mount_point/Packages/shim-version-architecture.rpm /publicly_available_directory
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp -pr /mount_point/Packages/grub2-efi-version-architecture.rpm /publicly_available_directory
# cp -pr /mount_point/Packages/grub2-efi-version-architecture.rpm /publicly_available_directory
Copy to Clipboard Copied! Toggle word wrap Toggle overflow umount /mount_point
# umount /mount_point
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パッケージを抽出します。rpm2cpio shim-version-architecture.rpm | cpio -dimv
# rpm2cpio shim-version-architecture.rpm | cpio -dimv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow rpm2cpio grub2-efi-version-architecture.rpm | cpio -dimv
# rpm2cpio grub2-efi-version-architecture.rpm | cpio -dimv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ブートディレクトリーから EFI ブートイメージをコピーします。
cp publicly_available_directory/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/
# cp publicly_available_directory/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp publicly_available_directory/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/
# cp publicly_available_directory/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow grub.cfg
という名前の設定ファイルをtftpboot/
ディレクトリーに追加します。/var/lib/tftpboot/grub.cfg
の設定ファイルの例を以下に示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要上記の例のinst.repo=
Anaconda オプションを使用して、インストールプログラムのイメージとインストールソースを指定するために常に使用する必要があります。このオプションを使用しないと、インストールプログラムは起動できなくなります。Anaconda の起動オプションの詳細は、「ブートメニューによるインストールシステムの設定」 を参照してください。/var/lib/tftpboot/
ディレクトリーにブートイメージファイルを保存するサブディレクトリーを作成し、そのディレクトリーにブートイメージファイルをコピーします。この例では、/var/lib/tftpboot/images/RHEL-7.1/
ディレクトリーを使用します。mkdir -p /var/lib/tftpboot/images/RHEL-7.1/# cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/images/RHEL-7.1/
# mkdir -p /var/lib/tftpboot/images/RHEL-7.1/# cp /path_to_x86_64_images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/images/RHEL-7.1/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 最後に、サービスを開始して有効にします。
dhcpd
サービス:systemctl start dhcpd systemctl enable dhcpd
# systemctl start dhcpd # systemctl enable dhcpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - tftpd サービスを管理する
xinetd
サービス:systemctl start xinetd systemctl enable xinetd
# systemctl start xinetd # systemctl enable xinetd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
この手順を完了すると、PXE ブートサーバーが PXE クライアントにサービスを提供できるようになります。Red Hat Enterprise Linux をインストールするシステムを起動し、ブートソースを指定するように求められたら PXE ブート を選択して、ネットワークインストールを開始できます。詳細は、「PXE を使ったネットワークからの起動」 を参照してください。
24.1.3. GRUB2 を使用した IBM Power Systems 向けのネットワークブートの設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
手順24.3 GRUB2 を使用した IBM Power Systems 向けのネットワークブートサーバーの設定
- tftp-server パッケージをインストールします。これを行うには、
root
で以下のコマンドを入力します。yum install tftp-server
# yum install tftp-server
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ファイアウォールで
tftp
サービスへの着信接続を許可します。firewall-cmd --add-service=tftp
# firewall-cmd --add-service=tftp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記上記のコマンドが有効にするのは、次回のサーバー再起動までのアクセスのみです。アクセスを永続的に許可するには、--permanent
オプションを追加します。ファイアウォール設定の詳細は、Red Hat Enterprise Linux 7 セキュリティーガイドを参照してください。 - tftp のルートに、GRUB2 ネットワーク起動ディレクトリーを作成します。
grub2-mknetdir --net-directory=/var/lib/tftpboot
# grub2-mknetdir --net-directory=/var/lib/tftpboot Netboot directory for powerpc-ieee1275 created. Configure your DHCP server to point to /boot/grub2/powerpc-ieee1275/core.elf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンドの出力に注意してください。これは、DHCP
設定でどのファイルをファイル名
として設定する必要があるかについて通知します。これは、本手順でさらに重要になります。 - GRUB2 設定ファイル(
/var/lib/tftpboot/boot/grub2/grub.cfg)
を作成します。grub.cfg
の構文については、Red Hat Enterprise Linux 7 システム管理者のガイドを参照してください。以下は設定ファイルの例になります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要上記の例のinst.repo=
Anaconda オプションを使用して、インストールプログラムのイメージとインストールソースを指定するために常に使用する必要があります。このオプションを使用しないと、インストールプログラムは起動できなくなります。Anaconda の起動オプションの詳細は、「ブートメニューによるインストールシステムの設定」 を参照してください。 - GRUB2 に同梱されているブートイメージを使用するように
DHCP
サーバーを設定します。DHCP サーバーがインストールされていない場合は、Red Hat Enterprise Linux 7 ネットワークガイドを参照してください。/etc/dhcp/dhcpd.conf
ファイルの設定例は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ネットワーク設定に合わせて、サンプルパラメーターのsubnet
、netmask
、routers
、fixed-address
、およびhardware ethernet
を変更します。filename
パラメーターにも注意してください。これは、手順の前の grub2-mknetdir コマンドで出力されたファイル名です。 - 最後に、サービスを開始して有効にします。
dhcpd
サービス:systemctl start dhcpd systemctl enable dhcpd
# systemctl start dhcpd # systemctl enable dhcpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - tftpd サービスを管理する
xinetd
サービス:systemctl start xinetd systemctl enable xinetd
# systemctl start xinetd # systemctl enable xinetd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
この手順を完了すると、PXE ブートサーバーが PXE クライアントにサービスを提供できるようになります。12章IBM Power Systems でのインストールの起動 で説明されている手順に従って、このサーバーから Power Systems クライアントを起動します。
IBM Power Systems クライアント向けにネットワーク起動を設定する詳細情報については、IBM DeveloperWorks ウェブサイトのNetbooting on POWER - An Introductionを参照してください。