PXE通过网络自动化安装系统

PXE通过网络自动化安装系统

要实现此功能要有三个基础的服务:DHCP服务,TFTP服务,HTTP服务
HTTP:存放ks应答文件,安装源文件
DHCP:提供网络地址,提供TFTP服务器地址
TFTP: 存放启动文件,将网卡启动的内核文件,菜单文件存放于此 /var/lib/tftpboot 目录下

1 HTTP服务设置

安装HTTP,设置为开机启动,启动HTTP

yum install httpd
systemctl enable httpd
systemctl start httpd

创建相应的目录,方便存放文件
mkdir -pv /var/www/html/centos/{6,7}/os/x86_64/
mkdir -pv /var/www/html/ksdir/
在HTTP工作目录中放入安装源文件,ks应答文件
通过挂载源文件光盘或都直接cp安装源文件到/var/www/html/centos/目录下
mount /dev/sr0 /var/www/html/centos/6/os/x86_64 挂载Centos6的安装光盘到对应目录中
mount /dev/sr1 /var/www/html/centos/7/os/x86_64 挂载Centos7的安装光盘到对应目录中
拷贝ks应答文件到/var/www/html/ksdir/目录下
通过浏览器测试HTTP服务能否正常访问

2 TFTP服务设置

安装tftp,设置为开机启动,启动tftp

yum install tftp-server
systemctl enable tftp
systemctl start tftp

3 DHCP服务设置

安装dhcp包,设置dhcp服务,设置为开机启动,启动服务

yum install dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.examle /etc/dhcp/dhcpd.conf   拷贝DHCP配置模板文件到DHCP配置目录中,对DHCP服务进行设置
vim /etc/dhcp/dhcpd.conf
subnet 192.168.37.0 netmask 255.255.255.0 {
  range 192.168.37.10 192.168.37.20;
  option routers 192.168.37.254;
  next-server 192.168.37.7;      添加的行,设置tftp服务器地址
  filename "pxelinux.0";         添加的行,设置启动文件
}
systemctl enable dhcpd
systemctl restart dhcpd  

4 准备启动文件

拷贝启动文件到tftp工作目录中:/var/lib/tftpboot 启动文件通过启动光盘拷贝
拷贝vmlinuz和initrd.img文件到/var/lib/tftpboot目录下
拷贝pxelinux.0文件到/var/lib/tftpboot目录,此文件通过安装syslinux包可以获取,在/usr/share/syslinux/pxelinux.0
拷贝 /usr/share/syslinux/menu.c32到/var/lib/tftpboot目录下 简化版的菜单风格文件
mkdir /var/lib/tftpboot/pxelinux.cfg/ 启动菜单目录
拷贝启动光盘中的启动菜单到/var/lib/tftpboot/pxelinux.cfg/目录下,并修改文件名为default

5 修改启动菜单

vim /var/lib/tftpboot/pxelinux.cfg/default
只保留第一、第二行、菜单标题和要安装的菜单选项

检查一下几个服务的端口是否开启(http:80,tftp:69,dhcp:67),设置完成后可以通过网络安装系统
ss -ntlu
安装界面如下图

原文地址:https://blog.51cto.com/13749470/2382347

时间: 2024-10-24 21:33:02

PXE通过网络自动化安装系统的相关文章

构建PXE环境--网络自动化安装CentOs6.5

一.构建PXE环境实验 1.当前系统版本 2.查看网络环境和yum源 当前系统的IP是192.168.1.60,子网掩码是255.255.255.0,默认网关是192.168.1.1 本次实验使用的yum源是本地光盘,构建过程如下: (1)挂载本地光盘(已做成yum仓库的)到/media/centos6.5_DVD1目录下     (2)在/etc/yum.repos.d/目录下新建yum的配置文件local.repo,并编辑该配置文件,指定yum源在本地光盘上 3.安装并启动DHCP服务 (1

利用DHCP,http,tftp,pxe实现纯自动化安装系统

一.实现原理所需要的服务简单介绍1.DHCP:动态主机配置协议,用于内部网络自动分配IP地址2.tfpt:简单的网络共享服务,类似于ftp3.pxe:支持远程主机通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统4.http:超文本传输协议,通过网络共享文本(这里也可以使用ftp服务)实现过程1.客户端(没有装系统的计算机)通过在局域网内寻找DHCP服务器2.DHCP服务器回应,发送IP地址给该客户端并且告诉该客户端下一步寻找哪一个服务器,也就是TFTP3.客户端向TFTP要BootL

Linux上基于网络自动化安装系统(CentOS6.5+DHCP+TFTP+PXE)

一.前言 安装系统常用的方式就是,光驱安装,U盘安装,但是这种手动安装方法效率都很低,而且出错概率大.现在网卡速率也都基本1000M,所以网络安装就显得更简单,把管理员从重复.繁琐的安装操作中解放出来.当然,这只是一个局域网内的实验配置,生产环境会有更专业的解决方案,但是这个原理都是一样的. 二.原理 本次实验用到的协议和技术有:    DHCP: Dynamic Host Configuration Protocol 动态主机配置协议    TFTP: Trivial File Transfe

PXE批量实现自动化安装系统

  一.简介 在学习的过程中大部分人都是使用手动安装操作系统,而在实际生产环境中,手动安装系统的方式显然不现实,因为服务器众多,所以可使用pxe(preboot excute environment)技术来批量安装操作系统,从而减少"人工智能".     二.实现原理 实验拓扑图: 原理:pxe装机重要依赖tftp服务器.dhcp服务器.repo仓库及其kickstart配置文件即可完成,安装系统时,客服端主机向dhcp服务器发起dhcp请求,获取一个IP地址后将去tftp服务器读取v

实验:实现PXE的网络自动化安装

PXE(Preboot Execution Environment):预启动执行环境,PXE是由Intel设计的协议,它可以使计算机通过网络而不是从本地硬盘.光驱等设备启动. 基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统PXE可以引导和安装Windows,linux等多种操作系统. 目标:通过网卡能够下载安装操作系统的安装文件,安装包,能够让主机不拿光盘,u盘,只拿网卡来引导,进而能够让它自动的启动起来,安装操作系统.只要主机

PXE网络自动化安装Linux

在工作环境中,批量安装.无键盘鼠标.无显示器.无光驱安装操作系统都需要采用非交互式安装. PXE安装就是可以通过网络自动加载系统内核,并启动安装程序,再配合kickstart配置文件,完成无交互式安装的方式. 一.基本概念 DHCP 动态主机设置协议(Dynamic Host Configuration Protocol, DHCP)是一个局域网的网络协议,使用UDP协议工作在67号端口,主要用途是给网络中的设备自动分配IP地址. TFTP TFTP(Trivial File Transfer

简单搭建PXE无人值守自动化安装系统

PXE环境概述 在公司进行批量部署服务器安装方法: Kickstart (PXE+DHCP+TFTP+HTTP) 或 Cobbler 批量装机软件介绍 Kickstart和Cobbler. ??Kickstart是一种无人值守的安装方式.它的工作原理是在安装过程中记录人工干预填写的各种参数,并生成一个名为ks.cfg的文件.如果在自动安装过程中出现要填写参数的情况,安装程序首先会去查找ks.cfg文件,如果找到合适的参数,就采用所找到的参数:如果没有找到合适的参数,便会弹出对话框让安装者手工填写

PXE+HTTP+tftp+kickstart 网络自动化安装centos6.5

基本流程: 1.网卡作为可引导的启动设备 2.BIOS找到引导设置网卡,激活网卡的PXE功能 3.客户端通过PXE的内置dhcp客户端尝试DHCP广播请求,从DHCP服务器获取IP地址.掩码.网关.网络属性 4.DHCP服务器告知客户端tftp服务器地址(next-server),将 "filename "pxelinux.0";" 参数中指定的文件(pxelinux.0)推送给客户端: 5.PXE的内置tftp客户端到指定tftp服务器下载启动镜像文件pxelin

初步使用pxe自动化安装系统

1.安装dhcp服务 #yum install dhcpd 修改配置文件 /etc/dhcp/dhcpd.conf # This is a very basic subnet declaration. subnet 172.16.249.0 netmask 255.255.255.0 {  range 172.16.249.111 172.16.249.115;  option routers 172.16.0.1;  next-server 172.16.249.161;  filename