ここにカタログタイトルを書く
PXEバッチインストール
1つ、PXE
1.PXE
(Pre-boot Execution Environment)は、会社間で開発されたネットワークブート技術であり、クライアント/サーバーモードで動作し、クライアントがネットワーク経由でリモートサーバーからブートイメージをダウンロードし、インストールファイルまたはオペレーティングシステム全体をロードできるようにします。
2.利点
- 規模:複数のサーバーを同時にインストールします。
- 自動化:システムをインストールし、さまざまなサービスを構成します。
- リモート実現:CD、Uディスク、その他のインストールメディアは必要ありません。(私はこれを深く理解しています。多くの場合、サーバーに記憶媒体を挿入できないか、リモートサーバーを維持する必要があります)
3.PXEをインストールするための前提条件
- サーバ:
- DHCPサービスをインストールします。クライアントにアドレスを自動的に割り当て、ブートファイルの場所を指定します。
- サーバーはTFTPサービス(Simple File Transfer Protocol)を有効にする必要があります。これはシステムカーネルのダウンロードとイメージファイルの起動に使用されます。
- サーバーでFTPサービス(またはhttp / nfs)を使用します。yumインストールソースを提供します
- ソフトウェアパッケージsyslinuxをインストールします:PXEブートプログラムを提供します
- クライアントコンピューター:
- クライアントのネットワークカードは、PXEプロトコル(統合BOOTROMチップ)をサポートしている必要があります
- マザーボードはネットワークブートをサポートしています。BIOS設定でネットワークまたはLANからの起動を許可する必要がある場合もあります。
補足:TFTP(Trivial File Transfer Protocol):UDPプロトコルに基づくクライアントとサーバー間の単純なファイル転送のためのプロトコルで、小さなファイル転送アプリケーションに適しています。TFTPサービスは、デフォルトでxinetdサービスによって管理され、UDPポート69を使用します
。xinetdサービス:スーパーサーバーとも呼ばれる新世代のネットワークデーモンサービスプログラムで、さまざまな軽量インターネットサービスの管理に一般的に使用されます。
2. PXEをビルドし、サーバーをインストールします
1.ローカルのYumソースウェアハウスをインストールします
これは、yumをインストールしていないユーザーに必要です。
2.TFTPサービスをインストールして有効にします
使用する関連コード:
yum -y install tftp-server xinetd
#修改TFTP服务的配置文件
vim /etc/xinetd.d/tftp
protocol = udp #TFTP默认使用UDP协议
wait = no #no表示客户机可以多台一起连接,yes表示客户机只能一台一台连接
server_args = -s /var/lib/tftpboot #指定TFTP根目录(引导文件的存储路径)
disable = no #no表示开启TFTP服务
systemctl start tftp
systemctl enable tftp
systemctl start xinetd
systemctl enable xinetd
以下は、操作のスクリーンショットです
3.DHCPサービスをインストールして有効にします
使用する関連コマンド
yum -y install dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
#修改DHCP服务的配置文件
vim /etc/dhcp/dhcpd.conf
ddns-update-style none; #禁用 DNS 动态更新
next-server 192.168.163.5; #指定 TFTP 服务器的地址
filename "pxelinux.0"; #指定要下载的 PXE 引导程序的文件
subnet 192.168.163.0 netmask 255.255.255.0 {
#声明要分配的网段地址
range 192.168.163.100 192.168.163.200; #设置地址池
option routers 192.168.163.5; #默认网关地址指向TFTP服务器的IP地址
}
systemctl start dhcpd
systemctl enable dhcpd
実際の操作手順のスクリーンショット:
4. Linuxカーネルを準備し、イメージファイルを初期化します
必要な関連コマンド:
mount /dev/sr0 /mnt
cd /mnt/images/pxeboot
cp vmlinuz /var/lib/tftpboot/ #复制 Linux系统的内核文件 到TFTP根目录下
cp initrd.img /var/lib/tftpboot/ #复制 初始化镜像文件(linux引导加载模块)到TFTP根目录下
特定の手順:
5.PXEブートプログラムを準備します
関連する操作コマンド
yum -y install syslinux #PXE引导程序由软件包 syslinux 提供
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #复制 PXE引导程序 到TFTP根目录下
実際の手順:
6. FTPサービスをインストールし、CentOS7インストールソースを準備します
関連する操作コマンド:
yum -y install vsftpd
mkdir /var/ftp/centos7
cp -rf /mnt/* /var/ftp/centos7/
systemctl start vsftpd
systemctl enable vsftpd
特定の手順:
7.ブートメニューファイルを構成します
関連する操作コマンド
默认的启动菜单文件在TFTP根目录的 pxelinux.cfg子目录下,文件名为default
mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
default auto #指定默认入口名称
prompt 0 #设置是否等待用户选择,“1”表示等待用户控制
label auto #图形安装(默认)引导入口,label 用来定义启动项
kernel vmlinuz #kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.163.5/centos7
#这里的IP地址为PXE服务端的IP地址。这里指本地的
label linux text #文本安装引导入口
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.163.5/centos7
# #这里的IP地址为PXE服务端的IP地址。这里指本地的
label linux rescue #救援模式引导入口
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.163.5/centos7
# #这里的IP地址为PXE服务端的IP地址。这里指本地的
関連する手順:
8.ファイアウォールをオフにします
関連する操作コマンド:
systemctl stop firewalld.service
setenforce 0
具体的な手順:
ここで覚えておいてください!!ファイアウォールをオフにする必要があります。オフにしないと、エラーを報告する必要があります。!
9.PXEネットワークのインストールを確認します
システムがインストールされていない空の仮想マシンを再度開き、[開始]をクリックして構成ファイルを自動的にロードします。
このインターフェースがポップアップします、問題ありません。
終わり。