1 インストール前の構成
警告:
Oracle Linux 7は現在拡張サポート中です。詳細は、Oracle Linux拡張サポートおよびOracleオープン・ソース・サポート・ポリシーを参照してください。
アプリケーションとデータをできるだけ早くOracle Linux 8またはOracle Linux 9に移行します。
この章では、Oracle Linux 7のシステム要件、ソフトウェアの取得方法、ネットワーク・インストール・サーバーの設定方法、およびインストールの準備に役立つ一般的なガイドラインについて説明します。
システム要件
Oracle Linux 7には、Unbreakable Enterprise Kernel (UEK)とRed Hat Compatible Kernel (RHCK)の両方が含まれています。最大2048個の論理CPUおよび64TBのメモリーを持つx86-64システムにOracle Linux 7をインストールできます。理論上の上限は5120個の論理CPUと64TBのメモリーですが、Oracleではこの構成をまだテストしていません。推奨される最小構成は、2個の論理CPUと論理CPUごとに1GBのメモリーです。インストールに必要な最小ディスク領域は1GBですが、5GB以上をお薦めします。
システムがUEFIモードをサポートしており、このモードでOracle Linux 7をブートしてインストールする場合は、UEFIファームウェアによってはUEFI/MBRのブートが許可されないため、ターゲット・ディスクがGPT (GUIDパーティション・テーブル)を使用していることを確認してください。
システム要件とインストールに関する既知の問題の詳細は、Oracle Linux 7リリースおよび更新レベルのリリース・ノートを参照してください(Oracle® Linux 7ドキュメント)
UEKを使用したOracle Linuxが動作保証されているx86ベースのサーバーについては、https://linux.oracle.com/hardware-certificationsでOracle LinuxおよびOracle VMのハードウェア動作保証リストを参照してください。
UEKシステム要件および既知の問題については、Unbreakable Enterprise KernelドキュメントにあるUEKリリースのドキュメントを参照してください。
インストール・メディアの取得および準備
Oracle Linuxディストリビューションは、無償でダウンロード、使用および配布できます。
Oracle Linuxインストール・メディアは、Oracle Software Delivery Cloud (https://edelivery.oracle.com/linux)からダウンロードできます。ログインすると、製品のリストを含む人気ダウンロード・ウィンドウが表示されます。
Oracle Linux 7インストール・メディアをダウンロードするには、次の手順を実行します。
- 
                        
                        
製品を取得するには、次のいずれかの方法を選択します。
- 
                              
                              
製品が人気ダウンロード・ウィンドウに含まれている場合は、その製品を選択してカートに追加します。
 - 
                              
                              
製品が人気ダウンロード・ウィンドウに含まれていない場合は、次の手順を実行します。
- 
                                    
                                    
検索ボックスに「Oracle Linux 7」と入力し、「検索」をクリックします。
 - 
                                    
                                    
検索結果リストから、ダウンロードしてカートに追加する製品を選択します。
 
 - 
                                    
                                    
 
 - 
                              
                              
 - 
                        
                        
カート・アイコンをクリックします。
 - 
                        
                        
プラットフォーム/言語ドロップダウン・リストから、使用しているシステムのプラットフォームを選択して続行します。
 - 
                        
                        
次のページで、ライセンス条項に同意してから続行します。
 - 
                        
                        
選択したOracle Linuxパッケージの内容をリストにした最後のページで、「ダウンロード」をクリックします。
 
メディア・パックには、次のISOイメージが含まれています。
- 
                        
                        
Oracle Linux 7 for x86_64 (64ビット)
このISOイメージには、システムをブートし、Oracle Linuxをインストールするために必要なものすべてが含まれています。
 - 
                        
                        
Oracle Linux 7 Boot ISO image for x86_64 (64 bit)
このISOイメージには、システムをブートし、インストールを開始するために必要なものすべてが含まれています。ただし、インストールを完了するには、ローカル・ディスクやNFS共有などのパッケージの場所を指定する必要があります。RHCKはインストール中に使用され、UEKカーネルとRHCKカーネルの両方がインストールされます。インストール後、システムではUEKカーネルがデフォルトでブートされます。
ノート:
Oracle Linux 7.3より前のリリースをインストールする場合は、Unbreakable Enterprise Kernelリリース3が使用されます。Oracle Linux 7.3以降の場合、デフォルトのカーネルはUnbreakable Enterprise Kernelリリース4です。
 - 
                        
                        
Oracle Linux 7 UEK Boot ISO image for x86_64 (64 bit)
このISOイメージには、システムをブートし、インストールを開始するために必要なものすべてが含まれています。ただし、インストールを完了するには、たとえば、ローカル・ディスク、NFS共有、Oracle Linux Yum Server上のOracle Linuxリリースのベース・リポジトリなどのHTTPリソースで、パッケージの場所を指定する必要があります。UEKはインストール中に使用され、インストール後にブートされるデフォルトのカーネルです。このブート・イメージは、UEKでのみサポートされているハードウェアがある場合、またはRHCKブート・イメージの使用時にインストーラで問題が発生している場合に使用します。このISOイメージは、Oracle Linux 7.2以降用のメディア・パックで使用できます。
 - 
                        
                        
Oracle Linux 7ソースDVD 1および2
これらのISOイメージには、リリースに同梱されているソフトウェア・パッケージのソース・コードが含まれています。
 
完全インストールISOイメージまたはブートISOイメージを使用して次のことを行うことができます。
- 
                        
                        
CDまたはDVDの作成。「CDまたはDVDインストール・メディアの準備」を参照してください
 - 
                        
                        
ブート可能USBドライブの作成。「USBインストール・メディアの準備」を参照してください
 
ISOイメージを仮想DVD-ROMドライブで使用して、Oracle VMまたはOracle VM VirtualBox仮想マシン(ゲスト)をブートおよびインストールできます。
完全インストールISOイメージを使用すると、インストール中に使用するために、NFS共有やHTTPサーバー・ディレクトリなどのネットワークの場所を準備できます。一般的に、ブート・イメージを使用してインストールを開始する場合にこのようにします。「ネットワーク・インストール・サーバーの構成」を参照してください。
メディア・パックには、Oracle Linuxの特定のリリース更新に関連する追加コンテンツが含まれている場合があります。ドライバ更新ディスクなどの項目も含まれている場合があります。これらの項目は、特定の更新リリースのリリース・ノートで詳しく説明されています。
インストール後に、Oracle LinuxパッケージをUnbreakable Linux Network (ULN)およびOracle Linux Yum Serverから取得できます。詳細は、「インストール後の構成」を参照してください。
CDまたはDVDインストール・メディアの準備
完全インストールISOイメージを格納できるだけの十分な記憶容量があるのは追記型DVDのみです。
追記型CDの記憶容量はブートISOイメージには十分ですが、完全インストールISOイメージには不十分です。
ISOイメージ・ファイルをCDまたはDVDに書き込むには、cdrecordなどのコマンドを使用します。たとえば:
sudo cdrecord -v -eject speed=16 dev=ATA:0,2,0 file_name.isocdrecord -scanbusコマンドを使用して、CDまたはDVDに対応するSCSIサブシステムおよびデバイスを表示できます。
USBインストール・メディアの準備
システムのファームウェアでUSBドライブからのブートがサポートされている場合は、USBドライブ上にブート・イメージを作成し、これを使用してOracle Linuxをインストールできます。USBドライブの容量によっては、完全インストールISOイメージまたはブートISOイメージを使用して、ブート可能USBドライブを作成できます。
ブート可能USBドライブを作成するには、ddコマンドを使用するか、USBドライブへのISOイメージの書込みに対応した別のユーティリティを使用します。次のステップでは、ddコマンドの使用方法について説明しています。
注意:
          この手順を実行すると、ドライブ上の既存データがすべて破棄されます。既存のハード・ディスク・パーティションを上書きしてしまわないように、USBドライブのデバイス名を正しく指定してください。次の手順では、USBドライブが/dev/sdb1デバイスであると仮定していますが、このことはシステムによっては該当しない場合があります。
        
                        
- 
                           
                           
USBドライブをOracle Linuxシステムに挿入します。
オペレーティング・システムがデバイス上に任意のファイル・システムをマウントしている場合、そのファイル・システムをアンマウントします。たとえば:
sudo df /media/USB
Filesystem 1K-blocks Used Available Use% Mounted on /dev/sdb1 35346 35346 0 100% /media/USB
sudo umount /dev/sdb1
 - 
                           
                           
ddコマンドを使用して、ISOイメージ・ファイルの内容をUSBデバイスに書き込みます。
sudo dd if=iso_file_name of=usb_device bs=bytes
次に例を示します。
sudo dd if=./full_image.iso of=/dev/sdb bs=512k
USBデバイス上のパーティションではなく、USBデバイス・ノードにISOの内容を直接書き込む必要があることに注意してください。これは、デバイスがブート可能であり、内容が適切な場所にあることを確認するのに役立ちます。
 
これで、USBドライブを取り外し、それを使用してシステムをブートできるようになります。
完全インストールISOイメージの内容の抽出
- 
                              
/mntなどの適切なマウント・ポイントに、完全インストールISOイメージをマウントします。sudo mount -t iso9660 -o loop full_image.iso /mnt - 
                              
完全インストールISOイメージの内容を抽出します。
使用するコマンドで、ISOイメージのルートにある
.treeinfoファイルが必ず抽出されるようにします。たとえば:cp -a -T mount_dir output_dir
たとえば、/mntにマウントされているISOイメージを/var/OSimage/OL7のNFS共有に抽出しています:cp -a -T /mnt /var/OSimage/OL7
たとえば、/mntにマウントされているISOイメージを/var/www/html/OSimage/OL7のWebサーバー・ディレクトリに抽出しています:cp -a -T /mnt /var/www/html/OSimage/OL7
 - 
                              DVDイメージをアンマウントします。
sudo umount mount_dir 
ネットワーク・インストール・サーバーの構成
ブートISOまたはPreboot eXecution Environment (PXE)を使用してシステムをインストールする場合、RPMパッケージをホストするようにネットワーク・インストール・サーバーを設定できます。このサーバーには、Oracle Linux 7の完全インストールDVDイメージ(約4.5GB)をホストできるだけの十分なストレージ・スペースが必要であり、かつ、NFSまたはHTTPのいずれかを使用してイメージ・ファイルをOracle Linux 7のインストール先システムに提供するように、サーバーを構成する必要があります。
ネットワーク・インストール・サーバーを構成するには:
- 
                        
                        
NFSサーバーまたはHTTPサーバーを設定します。
手順は、使用しているOracle Linuxリリースの管理者ガイドを参照してください。
- 
                              
                              
Oracle Linux 7については、『Oracle® Linux 7: ファイル・システムの管理』の共有ファイル・システム管理についての章を参照してください。
 - 
                              
                              
Oracle Linux 6については、Oracle® Linux 6: 管理者ガイドを参照してください。
 
 - 
                              
                              
 - 
                        
                        
Oracle Linux 7の完全インストールISOイメージをダウンロードします。
「インストール・メディアの取得および準備」を参照してください。
 - 
                        
                        
NFSサーバーまたはHTTPサーバーがネットワーク・インストール・サーバーとして動作するように構成します。
 - 
                        
                        
(オプション) PXEクライアントへのインストールのサポートを構成します。
複数のシステムがインストールされているデプロイメントでは、同じネットワーク上に構成されているTrivial File Transfer Protocol (TFTP)サーバーからPXEブート・イメージをロードするようにシステムを構成することにより、ネットワークベースのインストールを実行するのが一般的です。Dynamic Host Configuration Protocol (DHCP)を使用して、FTPサーバー上のブート・ファイルの場所をクライアントに提示します。
PXEクライアント・インストールをサポートする場合は、Dynamic Host Configuration Protocol (DHCP)およびTrivial File Transfer Protocol (TFTP)サービスを構成します。「PXEクライアントをサポートするためのDHCPおよびTFTPサービスの構成」または「PXEクライアントをサポートするためのdnsmasqの構成」を参照してください。
 
既存のNFSサーバーの構成
次の手順は、Oracle Linux 7システムでのNFS共有の構成に適用されます。Oracle Linux 6でNFS共有を構成する手順については、Oracle® Linux 6: 管理者ガイドを参照してください
既存のNFSサーバーを構成するには:
- 
                           
                           
NFS共有としてエクスポートするディレクトリ(
/var/OSimage/OL7など)を作成します。mkdir -p /var/OSimage/OL7
 - 
                           
                           
Oracle Linux 7のインストール・ファイルをNFS共有にコピーします。
完全インストールISOイメージをNFS共有にコピーすると、インストール・プログラムでは、インストール・ソースが完全インストールISOイメージであることを検出し、そのファイルからインストールを実行できます。
必要に応じて、完全インストールISOイメージの内容をNFS共有に抽出できます。「完全インストールISOイメージの内容の抽出」を参照してください。
 - 
                           
                           
exportfsコマンドを使用して、ディレクトリをエクスポートします。
sudo exportfs -i -o options client:export_dir
たとえば、
192.168.1サブネット上のNFSクライアントに対してディレクトリ/var/OSimage/OL7に対する読取り専用アクセスを許可するには、次のようにします。sudo exportfs -i -o ro 192.168.1.0/24:/var/OSimage/OL7
または、
/etc/exports構成ファイルを編集してディレクトリのエントリを追加します。たとえば:/var/OSimage/OL7 192.168.1.0/24(ro)
その後、exportfs -raコマンドを使用して、
/etc/exportsファイルに定義されているNFS共有をリロードします。 
既存のApache HTTPサーバーの構成
この項では、Oracle Linux 7システム上でHTTPディレクトリを構成する手順について説明します。Oracle Linux 6システムでHTTPディレクトリを構成する手順については、Oracle® Linux 6: 管理者ガイドを参照してください。
既存のApache HTTPサーバーを構成するには:
- 
                           
                           
完全インストールISOイメージの内容を格納するために使用するディレクトリを作成します。
HTTPサーバー構成ファイル(
/etc/httpd/conf/httpd.conf)に定義されているDocumentRoot階層にディレクトリ(/var/www/html/OSimage/OL7など)を作成します。mkdir -p /var/www/html/OSimage/OL7
 - 
                           
                           
完全インストールISOイメージの内容をHTTPディレクトリに抽出します。
「完全インストールISOイメージの内容の抽出」を参照してください。
 - 
                           
                           
HTTPサーバー構成ファイル
/etc/httpd/conf/httpd.confを編集し、<Directory>セクションを追加します。次に例を示します。<Directory "/var/www/html/OSimage/OL7"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all Require all granted </Directory><Directory DocumentRoot>セクションの終了</Directory>文の後にこのセクションを配置します。Indexesオプションは、ディレクトリ階層を参照できるようにする場合にのみ必要となり、インストールには必要ありません。 - 
                           
                           
SELinuxがenforcingモードで有効になっているときに、
/var/www/html以外のディレクトリにISOイメージを抽出した場合は、semanageおよびrestoreconコマンドを使用して、抽出後のファイルに対してSELinuxセキュリティ・コンテキストをリストアしてください。semanageおよびrestoreconコマンドは、
policycoreutils-pythonおよびpolicycoreutilsパッケージにより提供されます。- 
                                 
                                 semanageコマンドを使用して、ディレクトリ階層のデフォルト・ファイル・タイプを
httpd_sys_content_tとして定義します。sudo /usr/sbin/semanage fcontext -a -t httpd_sys_content_t "/var/OSimage(/.*)?"
 - 
                                 
                                 restoreconコマンドを使用して、ディレクトリ階層全体にファイル・タイプを適用します。
sudo /sbin/restorecon -R -v /var/OSimage
 
詳細は、
httpd_selinux(8)マニュアル・ページを参照してください。 - 
                                 
                                 
 
PXEクライアントをサポートするためのDHCPおよびTFTPサービスの構成
PXEクライアントにOracle Linux 7をインストールするために必要なDHCPサービスとTFTPサービスは、同じホスト上で実行する必要はありません。DHCPサーバーとTFTPサーバーを個別に構成する場合は、DHCPサーバーでTFTPサーバーを定義し、クライアントがそのTFTPサーバーからブート・ローダー、インストール・カーネルおよび初期RAMディスク・ファイルをダウンロードできるようにする必要があります。
DHCPサーバーおよびTFTPサーバーでインストール・パッケージをホストする必要はなく、個別のネットワーク・インストール・ソースを使用できます。TFTPサーバーでは、クライアントがインストール・パッケージを取得できるようにネットワーク・インストール・ソースを定義できます。
PXEクライアント・インストール・リクエストに対してDHCPサービスを構成するには:
- 
                           
                           
dhcpパッケージをインストールします。sudo yum install dhcp
 - 
                           
                           
/etc/dhcp/dhcpd.confを編集し、PXEクライアントに対するエントリを構成します。たとえば:set vendorclass = option vendor-class-identifier; option pxe-system-type code 93 = unsigned integer 16; set pxetype = option pxe-system-type; option domain-name "example.com"; subnet 10.0.0.0 netmask 255.255.255.0 { option domain-name-servers 10.0.0.1; option broadcast-address 10.0.0.255; option routers 10.0.0.1; default-lease-time 14400; max-lease-time 28800; if substring(vendorclass, 0, 9)="PXEClient" { if pxetype=00:06 or pxetype=00:07 { filename "efi/grubx64.efi"; } else { filename "pxelinux/pxelinux.0"; } } pool { range 10.0.0.101 10.0.0.200; } next-server 10.0.0.6; } host svr1 { hardware ethernet 08:00:27:c6:a1:16; fixed-address 10.0.0.253; option host-name "svr1"; } host svr2 { hardware ethernet 08:00:27:24:0a:56; fixed-address 10.0.0.254; option host-name "svr2"; }この例では、10.0.0/24サブネット上に10.0.0.101から10.0.0.200までの範囲で、一般に使用可能なIPアドレスのプールを構成しています。サブネット上のPXEブート・システムはいずれも、
filenameパラメータでそのPXEタイプに対して指定されているブート・ローダーを使用します。UEFIベースのクライアント用のブート・ローダー・ファイルgrubx64.efiは、TFTPサーバー・ディレクトリのefiサブディレクトリ内にあります。BIOSベースのクライアント用のブート・ローダー・ファイルpxelinux.0は、pxelinuxサブディレクトリ内にあります。next-server文は、クライアントがブート・ローダー・ファイルをダウンロードできるTFTPサーバーのIPアドレスを指定します。ノート:
DHCPサービスとTFTPサービスのホストとして同じサーバーを使用している場合でも、
next-server文を含める必要があります。そうしない場合、一部のブート・ローダーは構成ファイルの取得方法を判断できないため、クライアントをリブートしたり、ハングしたり、boot:やgrub>などのプロンプトを表示します。静的IPアドレス10.0.0.253および10.0.0.254は、
svr1およびsvr2用に予約されています(これらは各自のMACアドレスで識別されます)。サーバーに複数のネットワーク・インタフェースが存在する場合、DHCPサービスでは
/etc/dhcp/dhcpd.confファイルに基づいてリスニング対象インタフェースが決定されます。 - 
                           
                           
DHCPサービスを起動して、リブート後に起動するように構成します。
sudo systemctl start dhcpd sudo systemctl enable dhcpd
/etc/dhcp/dhcpd.confに変更を加えた場合は、dhcpdサービスを再起動してください。 - 
                           
                           
DHCPリクエストを受け入れるようにファイアウォールを構成します。たとえば:
sudo firewall-cmd --zone=zone --add-port=67-68/udp sudo firewall-cmd --zone=zone --add-port=67-68/udp --permanent
 
PXEクライアント・インストール・リクエストに対してTFTPサービスを構成するには:
- 
                           
                           
tftp-serverパッケージをインストールします。sudo yum install tftp-server
 - 
                           
                           
/etc/xinetd.d/tftpを編集し、xinetdがTFTPサービス(in.tftpd)を起動できるようにdisable属性とserver_args属性を変更し、TFTPサーバー・ディレクトリを定義します。たとえば:service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 }この例では、TFTPサーバー・ディレクトリを
/var/lib/tftpbootとして定義しており、これがデフォルトです。xinetdはTFTPリクエストを受信すると、in.tftpdを起動し、リクエストをそれに転送します。構成属性の詳細は、
xinetd.conf(5)マニュアル・ページを参照してください。 - 
                           
                           
ブート・ローダー・ファイルを取得します。
PXEクライアントでは、Linuxインストール・カーネル(
vmlinuz)をロードするためにブート・ローダーが必要になります。BIOSベースのPXEクライアントの場合は、
syslinuxパッケージにあるpxelinux.0ブート・ローダーを使用できます。このパッケージをインストールするには:sudo yum install syslinux
UEFIベースのPXEクライアントの場合は、
grub2‑efiパッケージにあるgrubx64.efiブート・ローダーを使用できます。ブート・ローダーおよびカーネルを検証できるように、shimパッケージにある最初のステージのブート・ローダーshim.efiも必要です。これらのパッケージを一時的な場所にダウンロードするか、完全インストールISOイメージからコピーします。その後、パッケージの内容を抽出します。cd /tempdir sudo rpm2cpio grub2-efi-version.rpm | cpio -idmv sudo rpm2cpio shim-version.rpm | cpio -idmv
ノート:
/etc/dhcp/dhcpd.conf内のDHCP構成でブート・ローダーとしてshim.efiを指定してください。セキュア・ブートにはshimブート・ローダーが必要ですが、それを使用していない場合は、署名を検証せずにGrubを初期化します。 - 
                           
                           
ブート・ローダーとその構成ファイルを格納するためのディレクトリをTFTPサーバー・ディレクトリのサブディレクトリとして作成します。
BIOSベースのクライアントの場合、
pxelinux/pxelinux.cfgディレクトリを作成します。たとえば:mkdir -p /var/lib/tftpboot/pxelinux/pxelinux.cfg
UEFIベースのクライアントの場合、
efiディレクトリを作成します。たとえば:mkdir -p /var/lib/tftpboot/efi
 - 
                           
                           
ブート・ローダー・ファイル、インストール・カーネル(
vmlinuz)およびRAMディスク・イメージ・ファイル(initrd.img)をTFTPサーバーのサブディレクトリにコピーします。BIOSベースのクライアントの場合、BIOSブート・ローダー・ファイル、インストール・カーネルおよびRAMディスク・イメージ・ファイルを
pxelinuxディレクトリにコピーします。cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux wget http://10.0.0.11/OSimage/OL7/isolinux/vmlinuz -O /var/lib/tftpboot/pxelinux/vmlinuz wget http://10.0.0.11/OSimage/OL7/isolinux/initrd.img -O /var/lib/tftpboot/pxelinux/initrd.img
UEFIベースのクライアントの場合、BIOSブート・ローダー・ファイル、インストール・カーネルおよびRAMディスク・イメージ・ファイルを
efiディレクトリにコピーします。cp /tempdir/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot/efi cp /tempdir/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot/efi cp /tempdir/boot/efi/EFI/redhat/MokManager.efi /var/lib/tftpboot/efi wget http://10.0.0.11/OSimage/OL7/isolinux/vmlinuz -O /var/lib/tftpboot/efi/vmlinuz wget http://10.0.0.11/OSimage/OL7/isolinux/initrd.img /var/lib/tftpboot/efi/initrd.img
ノート:
shim.efiおよびMokManager.efiファイルをコピーして、クライアントでのセキュア・ブートをサポートします。MokManager.efiには、EFIバイナリへの署名に使用するキーを管理するためのユーティリティが備えられています。前述の例では、HTTPを使用して、別のネットワーク・インストール・サーバーからインストール・カーネルおよびRAMディスク・イメージ・ファイルを取得しています。インストール・パッケージがTFTPサーバーでもホストされている場合は、ファイルのローカル・コピーを使用できます。
PXEクライアントに別のオペレーティング・システム・バージョンをインストールできるようにするには、カーネルおよびRAMディスク・イメージ・ファイルの名前を
vmlinuz-ol7およびinitrd-ol7.imgなどに変更します。または、カーネルおよびRAMディスク・イメージ・ファイルをefi/ol7やpxelinux/ol7などのサブディレクトリにコピーします。 - 
                           
                           
ブート・ローダー構成ファイルを作成します。
少なくとも、次に示すデフォルトのブート・ローダー構成ファイルを作成してください。
- 
                                 
pxelinux/pxelinux.cfg/default - 
                                 
                                 
BIOSベースのPXEクライアント用のデフォルトのブート・ローダー構成ファイル。
 - 
                                 
efi/grub.cfg - 
                                 
                                 
UEFIベースのPXEクライアント用のデフォルトのブート・ローダー構成ファイル。
 
クライアントがBIOSベースかUEFIベースかに応じて、pxelinux/pxelinux.cfgまたはefiにそのクライアントに固有のブート・ローダー構成ファイルを追加で作成できます。詳細は、次を参照してください。 - 
                                 
 - 
                           
                           
システムでSELinuxがenforcingモードで有効になっているときに、
/var/lib/tftpboot以外のTFTPサーバー・ディレクトリを構成した場合は、semanageコマンドを使用してTFTPサーバー・ディレクトリ階層のデフォルト・ファイル・タイプをtftpdir_tとして定義してから、restoreconコマンドを使用してファイル・タイプをディレクトリ階層全体に適用します。たとえば:sudo /usr/sbin/semanage fcontext -a -t tftpdir_t "/var/tftpboot(/.*)?" sudo /sbin/restorecon -R -v /var/tftpboot
詳細は、
tftpd_selinux(8)マニュアル・ページを参照してください。ノート:
semanageおよびrestoreconコマンドは、
policycoreutils-pythonおよびpolicycoreutilsパッケージにより提供されます。 - 
                           
                           
TFTPネットワーク・ソケットを有効にし、リブート後に起動するように構成します。
sudo systemctl start tftp.socket sudo systemctl enable tftp.socket
ブート・ローダー構成ファイルの内容を変更した場合、TFTPサービスを再起動する必要はありません。
 - 
                           
                           
TFTPリクエストを受け入れるようにファイアウォールを構成します。たとえば:
sudo firewall-cmd --zone=zone --add-service=tftp sudo firewall-cmd --zone=zone --add-service=tftp --permanent
 
PXEクライアントをサポートするためのdnsmasqの構成
        dnsmasqは、小規模なネットワークでDNSフォワーダ、DHCPサーバーおよびTFTPサーバーとして機能するように設計されています。dnsmasqを使用すると、DHCPサービスとTFTPサービスを個別に構成する必要がありません。dnsmasqの詳細は、dnsmasq(8)マニュアル・ページ、/usr/share/doc/dnsmasq-versionおよびhttp://www.thekelleys.org.uk/dnsmasq/doc.htmlを参照してください。
      
                     
dnsmasqサーバーでインストール・パッケージをホストする必要はなく、個別のネットワーク・インストール・ソースを使用できます。
PXEクライアント・インストール・リクエストに対してdnsmasqを構成するには:
- 
                           
                           
dnsmasqパッケージをインストールします。sudo yum install dnsmasq
 - 
                           
                           
/etc/dnsmasq.confを編集し、ネットワーク上のPXEクライアントおよび他のシステムに対するエントリを構成します。たとえば:interface=em1 dhcp-range=10.0.0.101,10.0.0.200,6h dhcp-host=80:00:27:c6:a1:16,10.0.0.253,svr1,infinite dhcp-boot=pxelinux/pxelinux.0 dhcp-match=set:efi-x86_64,option:client-arch,7 dhcp-boot=tag:efi-x86_64,grubx64.efi enable-tftp tftp-root=/var/lib/tftpboot
サンプルの構成ファイル内の行により、次の処理が行われます。
- 
                                 
interface=em1 - 
                                 
                                 
インタフェース
em1のみの受信クライアント・リクエストをリスニングします。 - 
                                 
dhcp-range=10.0.0.101,10.0.0.200,6h - 
                                 
                                 
6時間のリースで、10.0.0/24サブネット上に10.0.0.101から10.0.0.200までの範囲で、一般に使用可能なIPアドレスのプールを予約します。
ノート:
dhcp-rangeの設定は、dnsmasqが提供するDHCPサービスを有効にするために必要です。静的アドレスは構成するがアドレス・プールは構成しない場合、静的ネットワーク・アドレスとキーワードstaticおよびinfiniteを指定してください。たとえば:dhcp-range=10.0.0.253,static,infinite
 - 
                                 
dhcp-host=80:00:27:c6:a1:16,10.0.0.253,svr1,infinite - 
                                 
                                 
svr1に対して無期限のリース時間でIPアドレス10.0.0.253を予約します(これはMACアドレス08:00:27:c6:a1:16で識別されます)。 - 
                                 
dhcp-boot=pxelinux/pxelinux.0 - 
                                 
                                 
ブート・ローダー・ファイル(この例ではBIOSベースのPXEクライアント用のもの)の場所を指定します。
dnsmasqではなく個別のTFTPサーバーを使用する場合は、ブート・ローダー・パスの後にそのIPアドレスを指定します。たとえば:
dhcp-boot=pxelinux/pxelinux.0,10.0.0.11
 - 
                                 
dhcp-boot=tag:efi-x86_64,grubx64.efi - 
                                 
                                 
タグ
efi‑x86_64により識別されたPXEクライアント(この例ではUEFIベースのPXEクライアント)で必要になるブート・ローダー・ファイルの場所を指定します。efi‑x86_64タグはdhcp‑match=set:efi‑x86_64行に定義されており、UEFIベースのx86_64クライアントに適用されます(アーキテクチャ・コード7)。この例では、
grubx64.efiブート・ローダーを指定しています。UEFIクライアントの場合、ブート・ローダーとしてshim.efiを指定します。dnsmasqではなく個別のTFTPサーバーを使用する場合は、ブート・ローダー・パスの後にそのIPアドレスを指定します。たとえば:
dhcp-boot=tag:efi-x86_64,grubx64.efi,10.0.0.11
 - 
                                 
enable-tftp - 
                                 
                                 
dnsmasqが提供するTFTPサービスを有効にします。
 - 
                                 
tftp-root=/var/lib/tftpboot - 
                                 
                                 
TFTPが提供するファイルのルート・ディレクトリを指定します。クライアントがホスト上のファイルにアクセスできないように、dnsmasqは、パス要素として
..を指定するリクエストを拒否します。 
個別のTFTPサーバーの構成方法の詳細は、「PXEクライアントをサポートするためのDHCPおよびTFTPサービスの構成」を参照してください。
 - 
                                 
 - 
                           
                           
dnsmasqをキャッシング専用のネーム・サーバーとして設定する場合は、他のネーム・サーバー・エントリより前に、127.0.0.1のネーム・サーバー・エントリを構成してください。
dnsmasqは、127.0.0.1エントリを無視して、DNS問合せをリスト内の他のネーム・サーバーに転送します。NetworkManagerサービスが有効になっている場合、グラフィカル・アプレット、nm-connection-editorユーティリティまたはnm-tuiユーティリティを使用して、ネーム・サービス・エントリを構成できます。あるいは、/etc/resolv.conf内に直接ネーム・サーバー・エントリを構成することもできます。たとえば:nameserver 127.0.0.1 nameserver 10.0.0.8 nameserver 10.0.0.4
 - 
                           
                           
dnsmasqサービスを起動して、リブート後に起動するように構成します。sudo systemctl start dnsmasq sudo systemctl enable dnsmasq
/etc/dnsmasq.confに変更を加えた場合は、dnsmasqサービスを再起動してください。ブート・ローダー構成ファイルの内容を変更した場合、サービスを再起動する必要はありません。 - 
                           
                           
ファイアウォールを構成します。
- 
                                 
                                 
DHCPリクエストを受け入れるようにファイアウォールを構成します。たとえば:
sudo firewall-cmd --zone=zone --add-port=67-68/udp sudo firewall-cmd --zone=zone --add-port=67-68/udp --permanent
 - 
                                 
                                 
dnsmasqでTFTPサービスを有効にする場合は、TFTPリクエストを受け入れるようにファイアウォールを構成します。たとえば:
sudo firewall-cmd --zone=zone --add-service=tftp sudo firewall-cmd --zone=zone --add-service=tftp --permanent
 - 
                                 
                                 
dnsmasqをキャッシング専用のネーム・サーバーとして設定する場合は、DNSリクエストを受け入れるようにファイアウォールを構成します。
sudo firewall-cmd --zone=zone --add-service=dns sudo firewall-cmd --zone=zone --add-service=dns --permanent
 
 - 
                                 
                                 
 
PXEクライアント・インストール・リクエストに対してdnsmasq TFTPサービスを構成するには:
- 
                           
                           
ブート・ローダー・ファイルを取得します。
PXEクライアントでは、Linuxインストール・カーネル(
vmlinuz)をロードするためにブート・ローダーが必要になります。BIOSベースのPXEクライアントの場合は、
syslinuxパッケージにあるpxelinux.0ブート・ローダーを使用できます。このパッケージをインストールするには:sudo yum install syslinux
UEFIベースのPXEクライアントの場合は、
grub2‑efiパッケージにあるgrubx64.efiブート・ローダーを使用できます。ブート・ローダーおよびカーネルを検証できるように、shimパッケージにある最初のステージのブート・ローダーshim.efiも必要です。これらのパッケージを一時的な場所にダウンロードするか、完全インストールISOイメージからコピーします。その後、パッケージの内容を抽出します。sudo cd /tempdir sudo rpm2cpio grub2-efi-version.rpm | cpio -idmv sudo rpm2cpio shim-version.rpm | cpio -idmv
ノート:
/etc/dnsmasq.conf内のDHCP構成でブート・ローダーとしてshim.efiを指定してください。セキュア・ブートにはshimブート・ローダーが必要ですが、それを使用していない場合は、署名を検証せずにGrubを初期化します。 - 
                           
                           
ブート・ローダーとその構成ファイルを格納するためのディレクトリをTFTPサーバー・ディレクトリのサブディレクトリとして作成します。
BIOSベースのクライアントの場合、
pxelinux/pxelinux.cfgディレクトリを作成します。たとえば:sudo mkdir -p /var/lib/tftpboot/pxelinux/pxelinux.cfg
UEFIベースのクライアントの場合、dnsmasq TFTPサーバーでは、ブート・ローダーと構成ファイルが、
/var/lib/tftpbootのようなルート・ディレクトリに含まれていることを想定します。このディレクトリが存在することを確認してください。 - 
                           
                           
ブート・ローダー・ファイル、インストール・カーネル(
vmlinuz)およびRAMディスク・イメージ・ファイル(initrd.img)をTFTPサーバーのサブディレクトリにコピーします。BIOSベースのクライアントの場合、BIOSブート・ローダー・ファイル、インストール・カーネルおよびRAMディスク・イメージ・ファイルを
pxelinuxディレクトリにコピーします。cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/pxelinux wget http://10.0.0.11/OSimage/OL7/isolinux/vmlinuz -O /var/lib/tftpboot/pxelinux/vmlinuz wget http://10.0.0.11/OSimage/OL7/isolinux/initrd.img -O /var/lib/tftpboot/pxelinux/initrd.img
UEFIベースのクライアントの場合、UEFIブート・ローダー・ファイル、インストール・カーネルおよびRAMディスク・イメージ・ファイルをTFTPサーバーのルート・ディレクトリにコピーします。
cp /tempdir/boot/efi/EFI/redhat/grubx64.efi /var/lib/tftpboot cp /tempdir/boot/efi/EFI/redhat/shim.efi /var/lib/tftpboot cp /tempdir/boot/efi/EFI/redhat/MokManager.efi /var/lib/tftpboot wget http://10.0.0.11/OSimage/OL7/isolinux/vmlinuz -O /var/lib/tftpboot/vmlinuz wget http://10.0.0.11/OSimage/OL7/isolinux/initrd.img /var/lib/tftpboot/initrd.img
ノート:
shim.efiおよびMokManager.efiファイルをコピーします。MokManager.efiには、EFIバイナリの署名に使用するキーを管理するためのユーティリティが用意されており、セキュア・ブートが有効になっている場合はshim.efiが署名を検証します。Grub 2構成によっては、インストール・カーネルとRAMディスク・イメージ・ファイルをサブディレクトリにコピーすることもできます。前述の例では、HTTPを使用して、別のネットワーク・インストール・サーバーからインストール・カーネルおよびRAMディスク・イメージ・ファイルを取得しています。インストール・パッケージがdnsmasqサーバーでもホストされている場合は、ファイルのローカル・コピーを使用できます。
PXEクライアントに別のオペレーティング・システム・バージョンをインストールできるようにするには、カーネルおよびRAMディスク・イメージ・ファイルの名前を
vmlinuz-ol7およびinitrd-ol7.imgなどに変更します。または、カーネルおよびRAMディスク・イメージ・ファイルをefi/ol7やpxelinux/ol7などのサブディレクトリにコピーします。 - 
                           
                           
ブート・ローダー構成ファイルを作成します。
少なくとも、次に示すデフォルトのブート・ローダー構成ファイルを作成してください。
- 
                                 
pxelinux/pxelinux.cfg/default - 
                                 
                                 
BIOSベースのPXEクライアント用のデフォルトのブート・ローダー構成ファイル。
 - 
                                 
grub.cfg - 
                                 
                                 
UEFIベースのPXEクライアント用のデフォルトのブート・ローダー構成ファイル。
 
クライアントがBIOSベースかUEFIベースかに応じて、pxelinux/pxelinux.cfgまたはTFTPサーバーのルート・ディレクトリにそのクライアントに固有のブート・ローダー構成ファイルを追加で作成できます。詳細は、次を参照してください。 - 
                                 
 - 
                           
                           
システムでSELinuxがenforcingモードで有効になっているときに、
/var/lib/tftpboot以外のTFTPサーバー・ディレクトリを構成した場合は、semanageコマンドを使用してTFTPサーバー・ディレクトリ階層のデフォルト・ファイル・タイプをtftpdir_tとして定義してから、restoreconコマンドを使用してファイル・タイプをディレクトリ階層全体に適用します。たとえば:sudo /usr/sbin/semanage fcontext -a -t tftpdir_t "/var/tftpboot(/.*)?" sudo /sbin/restorecon -R -v /var/tftpboot
ノート:
semanageおよびrestoreconコマンドは、
policycoreutils-pythonおよびpolicycoreutilsパッケージにより提供されます。 
BIOSベースのPXEクライアントのブート・ローダー構成
        defaultファイルは、BIOSベースのPXEクライアント用のデフォルトのブート・ローダー構成ファイルであり、pxelinux構成設定を使用します。たとえば:
      
                     
prompt 0 default ol7 timeout 0 label ol7 kernel vmlinuz append initrd=initrd.img inst.repo=http://10.0.0.11/OSimage/OL7 inst.ks.sendmac \ inst.ks=http://10.0.0.11/ksfiles/ol7_cfg.ks
        boot:プロンプトが表示されるようにするには、promptの値を1に変更します。このプロンプトを表示するには、コンソールで[Shift]または[Alt]を押します。
      
                     
        defaultディレクティブは、デフォルトのブート・エントリをそのlabel値、ol7によって識別します。
      
                     
        pxelinuxは、timeout/10秒後に、デフォルトのブート・エントリを使用してクライアントをブートします。
      
                     
        kernelディレクティブはカーネル実行可能ファイルの名前を定義し、appendディレクティブは、カーネルのロード時に追加する必要のあるパラメータ(RAMディスク・イメージの名前やKickstartファイルの場所など)を定義します。
      
                     
        カーネルとRAMディスク・イメージのファイルのパスは、ブート・ローダーが含まれるサブディレクトリ(pxelinuxなど)からの相対パスであるとみなされます。pxelinux/OL7などのサブディレクトリにvmlinuzおよびinitrd.imgファイルを配置する場合は、正しい相対パスを指定するようにしてください。
      
                     
        ブート・ローダー構成を画面にメニューとして表示する場合は、menu.c32モジュールを使用します。これを実行するには:
      
                     
- 
                           
                           
ブート・ローダー・ディレクトリに
menu.c32モジュールをコピーします。cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/pxelinux
 - 
                           
                           
モジュールを使用するようにブート・ローダー構成を編集します。たとえば:
default menu.c32 timeout 0 menu title Install Oracle Linux label Install Oracle Linux 7 kernel vmlinuz append initrd=initrd.img inst.repo=http://10.0.0.11/OSimage/OL7 inst.ks.sendmac \ inst.ks=http://10.0.0.11/ksfiles/ol7_cfg.ks
 
異なるタイプのクライアントをサポートするために、次の要素に基づく名前の構成ファイルを作成できます。
- 
                           
                           
クライアントのUUID (たとえば、
a8943708-c6f6-51b9-611e-74e6ac80b93d) - 
                           
                           
イーサネットのARPハードウェア・タイプを表す
01-の後にクライアントのMACアドレスを付けて、コロンではなくダッシュを使用して各バイト値を区切った名前(たとえば、01-80-00-27-c6-a1-16)ノート:
ファイル名ではMACアドレスを小文字にする必要があります。
 - 
                           
                           
16進表記で、先頭に0xのないクライアントのIPアドレス(たとえば、
0A0000FDはIPアドレス10.0.0.253を表す)構成ファイルの数を減らすには、クライアントをIPアドレス範囲別にグループ化します。たとえば、
0A0000Eは、10.0.0.224から10.0.0.239までのIPアドレス範囲を表します。 
        構成ファイルをpxelinux/pxelinux.cfgに配置します。
      
                     
- 
                              
UUID(たとえば、a8943708-c6f6-51b9-611e-74e6ac80b93d) - 
                              
01-MAC_address(たとえば、01-80-00-27-c6-a1-16) - 
                              
IPアドレスの完全32ビット(たとえば、
0A0000FD) - 
                              
IPアドレスの最上位28ビット(たとえば、
0A0000F) - 
                              
IPアドレスの最上位24ビット(たとえば、
0A0000) - 
                              
IPアドレスの最上位20ビット(たとえば、
0A000) - 
                              
IPアドレスの最上位16ビット(たとえば、
0A00) - 
                              
IPアドレスの最上位12ビット(たとえば、
0A0) - 
                              
IPアドレスの最上位8ビット(たとえば、
0A) - 
                              
IPアドレスの最上位4ビット(たとえば、
0) - 
                              
default(デフォルト構成ファイル) 
sudo ln primary-ol7 0A0000FC sudo ln primary-ol7 0A0000FD sudo ln primary-ol7 0A0000FE
pxelinuxの詳細は、http://www.syslinux.org/wiki/index.php/PXELINUXを参照してください。
自動インストールを実行するためのKickstartの構成と使用の詳細は、「Kickstartを使用した自動インストール」を参照してください。
UEFIベースのPXEクライアントのブート・ローダー構成
        grub.cfgファイルは、UEFIベースのPXEクライアント用のデフォルトのブート・ローダー構成ファイルであり、次のようなGRUB 2構成設定を使用します。
      
                     
set default 0
set timeout=10
menuentry 'ol7' {
  echo "Loading efi/vmlinuz"
  linuxefi efi/vmlinuz inst.repo=http://10.0.0.11/OSimage/OL7 inst.ks.sendmac \
  inst.ks=http://10.0.0.11/ksfiles/ol7_cfg.ks
  echo "Loading efi/initrd.img"
  initrdefi efi/initrd.img
  echo "Booting installation kernel"
}
        linuxefiディレクティブはカーネル実行可能ファイルの名前を定義し、カーネルのロード時に追加する必要のあるパラメータ(インストール・パッケージの場所やこれらのパッケージへのアクセス方法など)を定義します。この例では、HTTPを使用して、指定したURLからパッケージをインストールしています。initrdefiディレクティブはRAMディスク・イメージの名前を定義します。
      
                     
        カーネルとRAMディスク・イメージのファイルのパスは、ブート・ローダーが含まれるサブディレクトリ(efiなど)からの相対パスであるとみなされます。efi/OL7などのサブディレクトリにvmlinuzおよびinitrd.imgファイルを配置する場合は、正しい相対パスを指定するようにしてください。
      
                     
        デフォルトでは、カーネルとRAMディスク・イメージのファイルが転送中であっても、GRUB 2によってその状況が示されることはありません。前述の例では、echo文を使用して簡単な進行状況を表示しています。
      
                     
grub2.cfg-client-IDという名前の構成ファイルを作成できます。ここで、client-IDは次のいずれかです。
        
                     
                        - 
                              
イーサネットのARPハードウェア・タイプを表す
01-の後にクライアントのMACアドレスを付けて、コロンではなくダッシュを使用して各バイト値を区切った名前(たとえば、01-80-00-27-c6-a1-16)ノート:
ファイル名ではMACアドレスを小文字にする必要があります。
 - 
                              
16進表記で、先頭に0xのないクライアントのIPアドレス(たとえば、
0A0000FDはIPアドレス10.0.0.253を表す)構成ファイルの数を減らすには、クライアントをIPアドレス範囲別にグループ化します。たとえば、
0A0000Eは、10.0.0.224から10.0.0.239までのIPアドレス範囲を表します。 
        構成ファイルをブート・ローダー・ファイルと同じディレクトリ(efiなど)に配置します。
      
                     
- 
                              
01-MAC_address(たとえば、grub.cfg-01-80-00-27-c6-a1-16) - 
                              
IPアドレスの完全32ビット(たとえば、
grub.cfg-0A0000FD) - 
                              
IPアドレスの最上位28ビット(たとえば、
grub.cfg-0A0000F) - 
                              
IPアドレスの最上位24ビット(たとえば、
grub.cfg-0A0000) - 
                              
IPアドレスの最上位20ビット(たとえば、
grub.cfg-0A000) - 
                              
IPアドレスの最上位16ビット(たとえば、
grub.cfg-0A00) - 
                              
IPアドレスの最上位12ビット(たとえば、
grub.cfg-0A0) - 
                              
IPアドレスの最上位8ビット(たとえば、
grub.cfg-0A) - 
                              
IPアドレスの最上位4ビット(たとえば、
grub.cfg-0) - 
                              
grub.cfg(デフォルト構成ファイル) 
# ln primary-ol7 grub.cfg-0A0000FC # ln primary-ol7 grub.cfg-0A0000FD # ln primary-ol7 grub.cfg-0A0000FE
GRUB 2の詳細は、info grubコマンドを入力してGRUB 2マニュアルにアクセスしてください。
自動インストールを実行するためのKickstartの構成と使用の詳細は、「Kickstartを使用した自動インストール」を参照してください。
インストールのプランニング
インストールのプランニングは、使用目的に適したシステムの導入に役立ちます。「Oracle Linuxの手動インストール」の説明に従って、インストール・プロセスを十分に把握してください。
システムのインストールをプランニングするときの主要な考慮事項を次に示します。
- ストレージ
 - 
                        
                        
オペレーティング・システムをインストールする、ローカル・ハード・ディスクなどのストレージ・デバイス。ストレージ・デバイスがすでにパーティション化されている場合は、インストールに使用できるパーティションを識別してください。インストール・プログラムにより、必要になるディスク領域が示され、領域が不足している場合は警告が表示されます。
オペレーティング・システムのファイル・システムがインストールされるストレージ・デバイスのレイアウト(論理ポリューム管理またはRAID構成の対応を含む)。
各ファイル・システム(
/、/boot、/home、/var/tmpなど)に必要な領域の量、ファイル・システム・タイプおよびファイル・システムの基礎となるブロック・デバイスに暗号化が必要かどうか。iSCSIまたはFCoE接続の場合、WWIDまたは使用されるポート、ターゲットおよびLUN。
 - ネットワーク
 - 
                        
                        
インストールに使用するネットワーク・インタフェース(ある場合)、およびDHCPを使用しない場合はそのIPアドレス、ネットマスクおよびゲートウェイ設定。
システムの完全修飾ドメイン名、またはDHCPを使用してネットワーク設定を提供する場合はホスト名のみ。
インストール中に構成する他のネットワーク・インタフェース、およびDHCPを使用しない場合はそのIPアドレス、ネットマスクおよびゲートウェイ設定。
インストール中に構成する、VLANや結合などの専用ネットワーク・インタフェース。
 - ソフトウェア
 - 
                        
                        
システムの使用目的に応じてシステムにインストールする必要がある、Webサーバーなどのソフトウェア・パッケージ。
パッケージのインストールに使用するすべての追加リポジトリおよびプロキシ設定のURL。