一、PXE
PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。

二、PXE工作流程
①PXE Client从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP;
②DHCP服务器返回分配给客户机的IP以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上);
③PXE Client向本网络中的TFTP服务器索取pxelinux.0文件;
④PXE Client取得pxelinux.0文件后执行该文件;
⑤根据pxelinux.0的执行结果,通过TFTP服务器加载内核和文件系统;
⑥进入安装画面,此时可以通过选择HTTP、FTP、NFS方式之一进行安装;
示意图:

三、Kickstart
Kickstart是一种无人值守的安装方式,它的工作原理是在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.cfg的文件。如果在安装过程中(不只局限于生成Kickstart安装文件的机器)出现要填写参数的情况,安装程序首先会去查找Kickstart生成的文件,如果找到合适的参数,就采用所找到的参数;如果没有找到合适的参数,就需要安装者手工干预。因此,如果Kickstart文件涵盖了安装过程中可能出现的所有需要填写的参数,那么就可以实现完全自动安装了。

四、演练测试
演练环境
VMware Workstation 12
CentOS 6.5
LAN区段 #注:关闭VM网络的DHCP功能,会有影响
DHCP/TFTP/NFS IP:192.168.157.129
Iptables & SElinux off

预备
1、配置YUM源(本演练使用系统镜像做YUM仓)
① 挂载光盘
[root]# mount /dev/cdrom /mnt
[root]# echo ‘/dev/cdrom /mnt iso9660 defaults 0 0’ >> /etc/fstab ##开机自动挂载
② 配置YUM
[root]# cat /etc/yum.repos.d/iso.repo
[iso]
name=iso
baseurl=file:///mnt
enabled=1
gpgcheck=0

2、配置DHCP
①安装
[root]# yum –y install dhcp
②修改配置文件(注意分号等格式问题)
[root]# cat /etc/dhcp/dhcpd.conf
ddns-update-style none;
ignore client-updates;
filename "pxelinux.0";
next-server 192.168.157.129; #TFTP Server的IP地址
subnet 192.168.157.0 netmask 255.255.255.0 { #所属网段掩码
option routers 192.168.157.2; #路由器IP,可写网管IP
option subnet-mask 255.255.255.0;
range 192.168.157.200 192.168.157.230; #IP地址池
default-lease-time 21600;
max-lease-time 43200;
}
③启动DHCP服务
[root]# /etc/init.d/dhcpd start
[root]# chkconfig dhcpd on

3、配置NFS Server共享文件
①安装NFS Server
[root]# yum –y install nfs-utils
②创建共享目录,存放镜像文件
[root]# mkdir /dvd
[root]# cp –r /mnt/* /dvd
[root]# cat /etc/exports #共享目录
/dvd *(rw)
③启动NFS服务,检查文件共享
[root]# /etc/init.d/rpcbind start #要先启动rpcbind否则会有异常,详因可查阅NFS工作原理
[root]# /etc/init.d/nfs start
[root]# showmount –e
Export list for example.com
/dvd *
4、配置TFTP服务器
①安装
[root]# yum –y install tftp-server
②修改配置文件
[root]# vim /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no #将yes修改为no
per_source = 11
cps = 100 2
flags = IPv4
}
③启动服务
[root]# /etc/init.d/xinetd start
[root]# chkconfig xinetd on

5、配置PXE启动所需要的文件
①安装syslinux
[root]# yum –y install syslinux
注:syslinux是一个功能强大的引导加载程序,而且兼容各种介质。Syslinux是一个小型的linux操作系统,它的目的是简化首次安装linux的时间,并建立修护后其他特殊用途的启动盘。
③ 拷贝相关文件到/var/lib/tftpboot/下
[root]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root]# cp /dvd/images/pxeboot/initrd.img /var/lib/tftpboot/
[root]# cp /dvd/images/pxeboot/vmlinuz /var/lib/tftpboot/
[root]# cp /dvd/isolinux/*.msg /var/lib/tftpboot/
④ 创建及配置相关文件
[root]# mkdir -p /var/lib/tftpboot/pxelinux.cfg
[root]# cp /dvd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root]# chmod u+w /var/lib/tftpboot/pxelinux.cfg/default
[root]# vim /var/lib/tftpboot/pxelinux.cfg/default
default ks
prompt 1
timeout 6
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
label linux
kernel vmlinuz
append initrd=initrd.img
label text
kernel vmlinuz
append initrd=initrd.img text
label ks
kernel vmlinuz
append ks=nfs:192.168.157.129:/dvd/ks.cfg initrd=initrd.img
label local
localboot 1
label memtest86
kernel memtest
append -
6、生成ks.cfg文件
ks.cfg是kickstart安装配置文件,系统就是安装ks.cfg来安装。
①安装kickstart
[root]# yum –y install system-config-kickstart
②启动图形化kickstart生成ks.cfg
[root]# system-config-kickstart









保存在/root/下,同目录下还有个anaconda-ks.cfg文件,将此文件中软件安装脚本拷贝到ks.cfg中(即%packages到%end)
最后将ks.cfg文件拷贝到共享目录下即可/dvd

下面就可以开启一台虚拟机安装验证配置了

linux系统PXE+Kickstart自动安装系统的更多相关文章

  1. CentOS 7.2 下 PXE+kickstart 自动安装系统

    一.简单概述 1.1 Kickstart 概述 对于网络安装系统,在linux 下面最熟悉的应该就是 Kickstart 以及 cobbler.写这篇文章的目的在于我公司目前使用的就是 Kicksta ...

  2. 使用PXE+Kickstart无人值守安装系统

    PXE预启动执行环境(即Preboot execute environment) 是一种能够让计算机通过网络启动的引导方式,只要网卡支持PXE协议即可使用,用于在无人值守安装系统服务中引导客户机安装服 ...

  3. centos7/rhel7下配置PXE+Kickstart自动安装linux系统

    应用场景:临时安装一个系统或者批量安装linux系统,无需人工介入选择下一步,减少在安装系统上的时间浪费,提高工作效率. DHCP + TFTP + Syslinux + FTP + Kickstar ...

  4. PXE+Kickstart无人值守安装系统re

    PXE(Preboot Excute Environment)预启动执行环境,可以让计算机通过网络启动系统,主要用于无人值守安装系统中引导客户端主机安装Linux操作系统. 由于之前有过使用cobbl ...

  5. Linux部署之批量自动安装系统之Kickstart篇

    1.         安装   2.         在桌面环境下啊配置   3.         Kickstart之基本配置   4.         Kickstart之安装方法   5.    ...

  6. PXE+kickstart自动安装ubuntu14.04

    本文参考了诸多文章,先感谢这些文章的作者. 使用pxe安装系统需要安装dhcp,tftp,http等服务(当然也可以使用其他文件共享方式比如nfs,ftp). 实验环境: 1. vmware 12 2 ...

  7. PXE+Kickstart 自动安装CentOS系统

    PXE (preboot execcute environment) 依赖服务 dhcp tftp file server (yum repository) 准备TFTP服务器  如何配置TFTP服务 ...

  8. CentOS7.2下PXE+kickstart自动化安装系统

    一.实验环境 操作系统:CentOS Linux release 7.2.1511 (Core) 网卡地址:192.168.100.147/24 光盘镜像:CentOS-7-x86_64-Minima ...

  9. Linux部署之批量自动安装系统之测试篇

    1.         客户端从网络启动如下   2.         复制vesamenu.c32文件可解决上面的问题   3.         客户端再次启动   4.         选择第一个进 ...

随机推荐

  1. HTML input-file 上传类型控制

    HTML input-file 上传类型控制 input file 属性 accept 表示可以选择的文件MIME类型,多个MIME类型用英文逗号分开,常用的MIME类型见下表. 只能选择png和gi ...

  2. oracle之sequence详解

    Oracle提供了sequence对象,由系统提供自增长的序列号,每次取的时候它会自动增加,通常用于生成数据库数据记录的自增长主键或序号的地方. sequence的创建需要用户具有create seq ...

  3. Oracle补习班第八天

    The best hearts are always the bravest. 心灵最高尚的人,也总是最勇敢的人. 1,权限.角色.与用户 创建用户 create user aa identified ...

  4. 关于margin的问题

    昨晚是第一天,现在来说说margin的这个存在的问题吧, 嗯,就是当你碰到 <div class="max-box"> <div class="box1 ...

  5. 解决java compiler level does not match the version of the installed java project facet

    在项目目录的.setting文件夹下的org.eclipse.wst.common.project.facet.core.xml中 <installed facet="java&quo ...

  6. docker使用阿里云Docker镜像库加速

    官方镜像下载实在是慢,于是开通了阿里云开发者帐号, 官方帮助 阿里云Docker镜像库 阿里云容器Hub服务:http://dev.aliyun.com/search.html 来自云端的容器Hub服 ...

  7. mysql-5.7.16 解压版安装

    下载压缩包后,解压到任盘 配置环境变量: 将“C:\MySQL;”加入到环境变量Path中 重命名my-default.ini为my.ini 修改my.ini内容: basedir =C:\MySQL ...

  8. Eclipse连接VirtualBox中的Android x86

    Android x86 Alt+F1打开命令行,命令netcfg查看当前ip,记住,然后Alt+F7回界面. Eclipse-Window-Preferences-Android-DDMS-Use A ...

  9. poj 1806 Manhattan 2025

    点击打开链接 题目大意就是给定一个最大歩数,让你输出你在三维的空间中可以到达的位置的切片,注意当歩数大于9的时候就不需要输出了! #include<stdio.h> #include< ...

  10. [HDU 4336] Card Collector (状态压缩概率dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4336 题目大意:有n种卡片,需要吃零食收集,打开零食,出现第i种卡片的概率是p[i],也有可能不出现卡 ...