第24章 リモートディスクレスシステムの設定
PXE で起動する基本的なリモートディスクレスシステムを設定するには、以下のパッケージが必要です。
tftp-server
xinetd
dhcp
syslinux
dracut-network
注記dracut-network
パッケージをインストールしたら、以下の行を/etc/dracut.conf
に追加します。add_dracutmodules+="nfs"
リモートディスクレスシステムの起動には、tftp サービス(
tftp-server
により提供)と DHCP サービス( dhcp
により提供)の両方が必要です。tftp サービスは、PXE ローダーを介してネットワーク経由でカーネルイメージと initrd
を取得するために使用されます。
注記
SELinux は NFSv4.2 でのみサポートされます。SELinux を使用するには、次の行を追加して、
/etc/sysconfig/nfs
で NFS を明示的に有効にする必要があります。
RPCNFSDARGS="-V 4.2"
次に、
/var/lib/tftpboot/pxelinux.cfg/default
で、root=nfs:server-ip:/exported/root/directory を root=nfs:server-ip:/exported/root/directory,vers=4.2 に変更します。
最後に、NFS サーバーを再起動します。
次のセクションでは、ネットワーク環境にリモートディスクレスシステムをデプロイするのに必要な手順の概要を説明します。
重要
一部の RPM パッケージは、ファイル機能( setcap や getcapなど)を使用して開始しました。ただし、現在 NFS ではこれらの機能に対応していないため、ファイル機能を使用するパッケージのインストールまたは更新に失敗します。
24.1. ディスクレスクライアントの tftp サービスの設定
前提条件
- 必要なパッケージをインストールしている。24章リモートディスクレスシステムの設定 を参照してください。
手順
tftp を設定するには、以下の手順を実行します。
手順24.1 tftpを設定するには、以下を実行します。
- ネットワーク上での PXE ブートを有効にします。
#
systemctl enable --now tftp - tftp root ディレクトリー(chroot)は、
/var/lib/tftpboot
にあります。/usr/share/syslinux/pxelinux.0
を/var/lib/tftpboot/
にコピーします。#
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ - tftp の root ディレクトリーに
pxelinux.cfg
ディレクトリーを作成します。#
mkdir -p /var/lib/tftpboot/pxelinux.cfg/ - tftp トラフィックを許可するようにファイアウォールルールを設定します。tftp は TCP ラッパーに対応しているため、
/etc/hosts.allow
設定ファイルで tftp へのホストアクセスを設定できます。TCP ラッパーおよび/etc/hosts.allow
設定ファイルの設定に関する詳細は、Red Hat Enterprise Linux 7 セキュリティーガイド を参照してください。hosts_access(5) は、/etc/hosts.allow
に関する情報も提供します。
次のステップ
ディスクレスクライアントの tftp を設定したら、DHCP、NFS、エクスポートしたファイルシステムを適宜設定します。DHCP、NFS、およびエクスポートしたファイルシステムの設定方法は、「ディスクレスクライアント用の DHCP の設定」 および 「ディスクレスクライアントのエクスポートしたファイルシステムの設定」 を参照してください。