【无标题】pxe装机

PXE网络批量装机+Kickstart无人值守安装

 系统装机的三种引导方式
硬盘  光驱  网络

服务器 磁盘阵列:硬阵列 (基于硬件)软阵列(基于系统)
逻辑得分配系统盘(raid1) 阵列盘(raid 10    raid5)
raid5 坏掉一块盘会影响业务 只能读不能写 或者说写的很慢  有个恢复数据的过程
raid10 坏掉一块盘不会中断业务。


系统安装过程
加载 boot loader
加载启动安装菜单
加载内核和initrd系统
加载根系统
运行anaconda的安装向导

PXE:Preboot eXecution Environment,预启动执行环境
允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或整个操作系统
PXE是通过网卡引导启动。

 PXE服务优点
规模化:同时装配多台服务器,无需每一台单独安装操作系统;
自动化:实现服务器的自动安装及自动配置各种服务;
远程实现:不需要光盘、U盘等安装介质,方便快捷的同时又可以保障服务器安全。

搭建PXE网络体系所需条件
客户机:
客户机的网卡要支持PXE协议(集成BOOTROM芯片)。
网卡自带DHCP服务和TFTP服务。
主板支持网络引导。有一些需在BIOS设置中允许从 Network 或 LAN 启动即可。 

 服务端
配置 DHCP 服务器 :为客户机自动分配地址、指定引导文件位置(指明TFTP服务器地址)。
服务器要开启 TFTP 服务(简单文件传输协议):用来提供系统内核和引导镜像文件的下载。
安装软件包syslinux :提供PXE引导程序。
服务器提供FTP服务(或http) :提供安装源(例如镜像文件系统等)


PXE装机需要的四大文件
pxelinux.0:引导程序。(来自syslinux程序)
default:引导程序的配置文件。(需要手写,可参考光盘 isolinux 目录下的 isolinux.cfg 文件)
vmlinuz:内核文件。(从光盘中获取,位于 isolinux 目录下)
initrd.img: 系统启动镜像文件。(从光盘中获取,位于 isolinux 目录下)

initrd 的英文含义是 boot loader initialized RAM disk,即由引导程序初始化的RAM磁盘

PXE实现过程讲解
客户机的网卡查找相关的dhcp服务器(获取地址和时间)。
DHCP服务器给客户机分配IP地址和引导程序(boot loader)的地址 ,同时通过offer报文把TFTP服务器的地址发给客户机。
TFTP服务器把引导文件(pxelinux.0)传给客户机。
客户机将引导程序加载到内存中来。
引导程序去TFTP服务器中查找配置文件,服务器将配置文件传给客户机。(配置文件中指定客户机使用ftp方式连接服务器获取系统镜像文件)
服务端安装并启动vsftpd服务,客户机使用ftp服务获取系统镜像文件。


搭建过程中服务详解
PXE远程安装服务器集成了CentOS 7安装源、TFTP 服务、DHCP 服务,能够向空白客户机(裸机)发送PXE引导程序、Linux 内核、启动菜单等数据,以及提供安装文件。
网卡自带DHCP服务和TFTP服务

DHCP服务
DHCP是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。
引导文件位置selinux   验证


TFTP服务
基于UDP的简单文件传输协议。TFTP服务一般只在装机这种场景下使用,用于传输内核和引导文件。因为安全性不高。

syslinux
syslinux是一个功能强大的引导加载程序


vsftp
安装系统镜像文件获取方式


PXE网络装机操作过程
服务器内网IP:192.168.92.10
DHCP TFTP FTP 全搭建在服务器上

流程:
1.安装软件包
yum -y install dhcp tftcp  vsftpd syslinux 

2.设置第二块网卡 且设置该网卡为仅主机模式,修改配置文件,重启网络服务,模拟内网环境

虚拟网络编辑器 改仅主机 取消本地DHCP服务将IP地址分配给虚拟机
虚拟机网络适配器 改为仅主机模式

cd /etc/sysconfig/network-scripts
cp ifcfg-ens33 ifcfg-ens36
vim ifcfg-ens36

BROSER_ONLY=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INT=yes
IPV6_AUTOCONF=yes
IPV6_DEFOUTE=yes
IPV6_FAILURE_FATAL=no
ONBOOT=yes
注释掉UUID
修改IP设置网关
注释DNS

systemctl restart network
ifconfig ens36

3.配置DHCP服务器,分配IP地址,指明tftp服务器地址
复制模板文件为配置文件
cd /usr/share/doc/dhcp
ls
cp dhcpd.conf.example /etc/dhcp/dhcp.conf
yes
编辑dhcp配置文件
vim /etc/dhcp/dhcp.conf
设置IP 子网掩码 地址池
TFTP服务器地址 next-sever 192.168.92.10
申明使用 filename"pxelinux.0"

4.修改TFTP服务配置文件 /etc/xinetd.d/tftp 开启服务

rpm -qc tftp-server
vim /etc/xinetd.d/tftp

disable    =no

5.将光盘挂载到/var/ftp子目录centos7下,将vmlinuxz,initrd.img,pxelinux.0拷贝到/var/lib/tftpboot

挂载光盘,将盘内两个文件拷贝到tftpboot下
cd /var/ftp
mkdir centos7
mount /dev/sr0 centos7
cd centos7
ls
cd isolinux
ls
cp vmlinuz initrd.img /var/lib/tftpboot
cd /var/llib/tftpboot
ls

将pxelinux.0拷贝到tftpboot下
rpm ql syslinux |grep pxelinux.0
cp /usr/share/syslinux/pxelinux.0 ./
ls

6.在tftpboot 下,创建pxelinux.cfg.pxelinux.cfg目录下编写引导程序的配置文件default。
mkdir prelinux.cfg
cd pxelinux.cfg
vim default

使用ftp服务,指明安装源路径:/var/ftp/centos7
initrd=initrd.img method=ftp://192.168.92.10/centos

cd..
tree

6.关闭防火墙selinux 启动dhcp,tftp,vsftpd服务
systemctl stop firewalld
setenforce 0
systemctl start dhcpd
systemctl start tftp
systemctl start vsftpd

客户端
1.创建新空白虚拟机
典型(推荐) 下一步
稍后安装操作系统  下一步
linux centos  下一步
给虚拟机取名  浏览:选择位置  下一步
选择磁盘大小 20G 下一步
自定义磁盘 内存2G以上   网络适配器:仅主机模式    关闭 完成

2.开启虚拟机
自动获取IP地址,自动安装镜像文件系统,最后出现图形化界面,参数手动配置

Kickstart无人值守安装

服务端:
1.安装kickstart软件,
yum install system-config-kickstart -y 

2.进入虚拟机,在Kickstart工具配置
应用程序 ——>系统工具——>Kickstart

实现 Kickstart 无人值守安装
1.准备安装应答文件
(1)安装system-config-kickstart 工具
yum install -y system-config-kickstart

(2)打开“Kickstart 配置程序”窗口
通过桌面菜单“应用程序”-->“系统工具”-->“Kickstart” 打开

执行 “system-config-kickstart” 命令打开

(3)配置kickstart选项
基本配置:
默认语言设为“中文(简体)”
时区设为“Asia/Shanghai”
设置root密码
高级配置中勾选“安装后重启”。

安装方法:
选FTP
FTP服务器:ftp://192.168.92.22
FTP目录:centos7

引导装载程序选项:
“安装类型”:安装新引导装载程序
“安装选项”:在主引导记录(MBR)中安装引导装载程序

分区信息:
主引导记录:清除主引导记录
分区:删除所有现存分区
磁盘标签:初始化磁盘标签
布局:添加分区
挂载点:/boot,文件系统类型:xfs,固定大小:500M
文件系统类型:swap,固定大小:4096M
挂载点:/home,文件系统类型:xfs,固定大小:4096M
挂载点:/,文件系统类型:xfs,使用磁盘上全部未使用空间

网络配置:
添加网络设备“ens33”
网络类型设为“DHCP”

防火墙配置:
禁用 SELinux、禁用防火墙

安装后脚本:
勾选“使用解释程序”:/bin/bash
rm -rf /etc/yum.repos.d/*
echo '[local]
name=local
baseurl=ftp://192.168.92.22/centos7
enabled=1
gpgcheck=0' > /etc/yum.repos.d/local.repo

其它选项保持默认设置即可

(4)保存自动应答文件
选择“Kickstart 配置程序”窗口的“文件”-->“保存”命令,选择指定保存位置,文件名为ks.cfg
默认保存在/root/ks.cfg
cp /root/ks.cfg /var/ftp/ks.cfg
 

vim  /root/anaconda-ks.cfg

添加需要的包

%packages
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@print-client
@x11
binutils
ftp
gcc
kernel-devel
kexec-tools
make
open-vm-tools
patch
python

%end
 

编辑引导菜单:

vim /var/lib/tftpboot/pxelinux.cfg/default    
default auto                             
prompt 0 

label auto                                
kernel vmlinuz

回头设置default 中kernel vmlinuzks

append initrd=initrd.img method=ftp://192.168.92.22 /centos7 ks=ftp://192.168.92.22/ks.cfg

记得关闭防火墙

设置新虚拟机时 内存至少两个G  内核 至少两个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用内容提供了在Linux系统上安装syslinux和配置tftp服务器的步骤,引用内容提供了创建pxelinux.cfg目录的步骤,引用内容提供了保存自动应答软件和编辑引导菜单的步骤。 PXE(Preboot Execution Environment)是一种网络引导协议,可以通过网络服务器上安装和配置操作系统。使用PXE进行Linux装机可以实现批量装机和自动化装机的需求。 在进行Linux PXE装机之前,需要进行以下步骤: 1. 安装syslinux和tftp服务器:使用命令`yum install -y syslinux`安装syslinux,并使用命令`yum install -y tftp-server`安装tftp服务器。 2. 复制pxelinux.0文件到tftp服务器目录:使用命令`cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/`将pxelinux.0文件复制到tftp服务器的目录下。 3. 创建pxelinux.cfg目录:使用命令`mkdir /var/lib/tftpboot/pxelinux.cfg`创建pxelinux.cfg目录,该目录用于存放引导菜单的配置文件。 4. 准备自动应答文件:将自动应答文件(比如ks.cfg)保存到服务器上,可以使用命令`cp /root/anaconda-ks.cfg /var/ftp/ks.cfg`将anaconda-ks.cfg文件复制到/var/ftp/目录下。 5. 编辑引导菜单的配置文件:使用命令`vim /var/lib/tftpboot/pxelinux.cfg/default`编辑引导菜单的配置文件,添加以下内容: ``` default auto prompt 0 label auto kernel vmlinuz append initrd=initrd.img method=ftp://192.168.100.10/centos7 ks=ftp://192.168.100.10/ks.cfg ``` 通过以上步骤,可以实现Linux PXE装机。在客户端上启动时,系统将从tftp服务器上下载引导文件pxelinux.0,然后根据引导菜单的配置文件default进行自动安装,同时使用指定的自动应答文件ks.cfg进行操作系统的配置。 请根据实际需求和网络环境进行相应的配置和调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Linux——轻松学会PXE高效网络装机](https://blog.csdn.net/m0_61744194/article/details/124291052)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [如何使用PXE实现Linux网络装机](https://blog.csdn.net/YsDou/article/details/120143627)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值