Linux PXE无人值守网络装机
Linux PXE无人值守网络装机
一、实验环境:
2台Linux系统(RHEL6.5版本),1台作为:PXE远程安装服务器(安装dhcp服务、ftp服务、tftp服务),另1台作为:客户端(未装RHEL6.0系统)
TFTP服务放入开机加载程序文件,FTP存放光盘镜像文件
二、PXE的概念
PXE(Pre-boot Execution Environment)是由Intel设计,可以使计算机通过网络启动的协议。协议分为client和server两端,PXE client在网卡的ROM中,当计算机启动时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。
三、PXE网络安装流程
pxe网络安装的流程:bios启动——pxe client中的程序进入内存,显示命令菜单——此程序开始寻找网络引导程序(bootstrap文件,这个文件的名字随着发行版的不同而不同,在centos中,它是pxelinux.0)——引导程序读取配置文件pxelinux.cfg,获得系统初始化的相关文件信息——系统启动,开始进行安装。
1.客户机从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP
2.DHCP服务器返回分给客户机IP以及bootstrap文件的放置位置(该文件一般是放在一台TFTP服务器上)
3.客户机向本网络中的TFTP服务器读取开机加载程序文件(bootstrap文件,本实验(redhat 6.5)是pxelinux.0)
4.然后读取配置文件(pxelinux.cfg),通过TFTP服务器加载内核和文件系统
5.进入安装画面, 此时可以通过选择HTTP、FTP、NFS(这里以FTP为例)方式进行安装
四、实验步骤
1.配置服务端IP地址

2.关闭服务端防火墙 service iptables stop setenforce 0
3.搭建ftp站点(存放光盘镜像文件),在/var/ftp下新建文件夹,把光盘文件内容复制到文件夹中
mkdir /var/ftp/rhel6
cp -rf /mnt/* /var/ftp/rhel6
4.查看是否复制成功

5.启动ftp服务,service vsftpd start,然后测试ftp服务
打开服务器的火狐浏览器,输入:ftp://192.168.113.100,如果能看到rhel6共享目录,则说明服务器的ftp服务运行正常

6.安装并启用tftp服务 #存放开机加载程序文件
yum -y install tftp-server
vim /etc/xinetd.d/tftp
修改:“disable = yes”为“disable = no”

7.启动tftp服务:service xinetd start
8.准备客户端主机无盘启动时所需的Linux内核、初始化镜像文件:
cd /mnt/images/pxeboot
cp vmlinuz initrd.img /var/lib/tftpboot
准备客户端主机无盘启动时所需的PXE引导程序、启动菜单文件
安装syslinux软件包(支持PXE功能)
yum -y install syslinux
复制PXE引导程序
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
建立启动菜单文件
mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default

9.安装dhcp服务并配置
Yum -y install dhcp
复制dhcp配置例子文件
cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
(版本不同,dhcp*代表的目录名也不同,使用tab键补全即可)
vim/etc/dhcp/dhcpd.conf
注意 next-server后面的IP地址为:tftp服务器的IP地址 Filename 跟的引导启动程序

10.启动dhcp服务 service dhcpd start
11.验证PXE网络装机:(客户机上操作)
禁用vmware的dhcp功能(此步很重要)
启动虚拟机,看到boot: 提示符,说明服务器端配置成功!


选择URL


填写url路径,即光盘的路径

看到下图,说明开始安装系统,这里不再往下装了

12.实现客户端的Kickstart无人值守安装:(在服务器上操作)
安装system-config-kickstart软件包
yum -y install system-config-kickstart #自动应答脚本制作工具
打开kisckstart配置程序:
应用程序-----系统工具-----kickstart

13.进行相应的配置:
必须设置root口令

14.必须指定安装方法:FTP
ftp服务器:ftp://10.10.10.200
ftp目录:rhel6

15.必须设置分区
清除主引导记录
删除所有现存分区
添加磁盘分区:
/boot ext4 500M
swap 2048M
/ ext4 未使用的全部磁盘空间

16.保存自动应答文件:/root/ks.cfg
17.把自动应答文件,拷贝到ftp站点下
cp /root/ks.cfg /var/ftp/rhel6
18.修改启动菜单文件default
vim /var/lib/tftpboot/pxelinux.cfg/default

19.测试
其它内容保持不动
验证无人值守安装,如果能看到软件包复制过程,则说明无人值守配置成功,这里不在往下安装
注意由于是在虚拟机中进行实验,无人值守安装,会弹出硬件检测

Linux PXE无人值守网络装机的更多相关文章
- DHCP\PXE+kickstart网络装机平台
DHCP概述及原理: DHCP地址分配的四次会话 DISCOVERY -****OFFER -REQUEST -ACK 服务端基本概念: 租期:允许客户机组用IP地址的时间期限,单位为秒 作用 ...
- 第六章、PXE高效网络装机、Kickstart无人值守安装
目录 一.部署PXE远程安装服务 1PXE定义 2PXE服务优点 3搭建网络体系前提条件 4PXE实现过程讲解 二.搭建PXE远程安装服务器 三.Kickstart无人值守安装 一.部署PXE远程安装 ...
- PXE+Kickstart网络装机(Centos6.5版本)
1.原理说明: PXE Client:表示需要安装操作系统的机器,统称客户端: TFTP server:表示安装TFTPD服务的机器: DHCP server:表示安装DCHPD服务的机器: 在实际的 ...
- Linux PXE + Kickstart 自动装机
大规模装机时,使用无人值守装机便可大大简便人工操作,提高效率. PXE 网络安装 配置双网卡 这里ens33为nat网络,ens37为仅主机网络,配置ens37 [root@localhost ~]# ...
- Linux 搭建批量网络装机
- Linux shell编写脚本部署pxe网络装机
Linux shell编写脚本部署pxe网络装机 人工安装配置,Linux PXE无人值守网络装机 https://www.cnblogs.com/yuzly/p/10582254.html 脚本实 ...
- linux dhcp搭建及pxe无人值守装机
DHCP动态主机配置协议:由IETF组织制定,用来简化主机ip地址分配管理可以自动分配的入网参数ip地址/子网掩码/广播地址默认网关地址DNS服务器地址 ----------------------- ...
- 网络装机pxe服务器的配置过程
网络装机pxe服务器的配置过程 背景: 针对于Linux运维工作中遇到的需要大批量安装Linux系统的情况,通过网络装机的方式实现无人值守安装Linux操作系统,现需要配置一台pxe服务器用于pxe批 ...
- 十六.部署PXE网络装机
PXE组件及过程分析 • 需要哪些服务组件? – DHCP服务,分配IP地址.定位引导程序 – TFTP服务,提供引导程序下载 – HTTP服务,提供yum安装源 • 客户机应具备的条件 – 网卡芯片 ...
随机推荐
- 想成为Python全栈开发工程师必须掌握的技能
什么是Python全栈工程师? 即从前端页面的实现,到后台代码的编写,再到数据库的管理,一人可以搞定一个公司网站的所有事情,真正实现全栈开发. 全栈只是个概念 也分很多种类 真正的全栈工程师涵盖了we ...
- 不是 HTTPS 拖慢网站速度,而是优化做的不够优秀
HTTPS(全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,简单讲是 HTTP 的安全版,即 HTT ...
- IIS连接数据库:数据库连接出错,请检查连接字串
搞了一早上,在网上看了各种回答,比如:C盘下的Temp文件夹权限.CONN.asp中的数据库路径问题,都不通.最后发现是: 如果使用的是64位系统,原因有可能是没有64位Access连接驱动. 所以解 ...
- Solaris 11 配置IP地址
查看ipipadm show-addr 删除IP地址ipadm delete-addr net0/v4 配置IP地址ipadm create-addr –T static –a local=10.90 ...
- Android 解压zip文件(支持中文)
过了n多天后,当再次使用原先博客上写的那篇: Android 压缩解压zip文件 去做zip包的解压的时候,出现了原来没有发现的很多问题.首先是中文汉字问题,使用java的zip包不能很好的解决解压问 ...
- 前端笔记之JavaScript(十一)event&BOM&鼠标/盒子位置&拖拽/滚轮
一.事件对象event 1.1 preventdefault()和returnValue阻止默认事件 通知浏览器不要执行与事件关联的默认动作. preventdefault() 支持Chrome等高 ...
- leetcode — sum-root-to-leaf-numbers
import java.util.Stack; /** * * Source : https://oj.leetcode.com/problems/sum-root-to-leaf-numbers/ ...
- REST API设计指导——译自Microsoft REST API Guidelines(二)
由于文章内容较长,只能拆开发布.翻译的不对之处,请多多指教. 另外:最近团队在做一些技术何架构的研究,视频教程只能争取周末多录制一点,同时预计在下周我们会展开一次直播活动,内容围绕容器技术这块. 所有 ...
- Python+AutoIt实现界面工具开发
前言 不同于Linux服务器上的命令行操作,在windows系统上用户的使用习惯还是倾向于使用有界面的工具.如果工具是命令行交互操作的方式,可能是有悖于在windows上使用的操作习惯,往往不容易推广 ...
- [PHP] 抽象类abstract的回顾
1.abstract定义为抽象的类不能被实例化. 2.它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的. 3.被定义为抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实 ...