Linux无人值守kickstart

合集下载

部署PXE实现Kickstart无人值守安装

部署PXE实现Kickstart无人值守安装

部署PXE实现Kickstart⽆⼈值守安装⼀、部署PXE远程安装服务1.PXE服务相关介绍PXE是有Intel公司开发的⽹络引导技术,⼯作在Client/Server模式(也简称CS模式),允许客户机通过⽹络从远程服务器下载引导镜像,并加载安装⽂件或整改操作系统。

2..若要搭建PXE⽹络体系,必须要满⾜⼀下⼏个前提条件客户机的⽹卡⽀持PXE协议(集成BOOTROM芯⽚),且主板⽀持⽹络引导;⽹络中有⼀台DHCP服务器以便于为客户机⾃动分配IP地址、指定引导⽂件位置;服务器通过TFTP(简单⽂件传输协议)提供引导镜像⽂件的下载3.PXE服务具备的优点规模化:同时装配多台服务器,⽆需每⼀台单独安装操作系统;⾃动化:实现服务器的⾃动安装及⾃动配置各种服务;远程实现:不需要光盘、U盘等安装介质,⽅便快捷的同时⼜可以保障服务器安全。

4.PXE服务的⼯作原理PXE(Pre-boot Execution Environment远程引导技术)是RPL (Remote Initial Program Load远程启动服务)的升级产品。

它们的不同之处为: RPL是静态路由,PXE是动态路由。

RPL 是根据⽹卡上的ID号加上其它的记录组成的⼀个帧向服务器发出请求,⽽服务器那⾥早已经有了这个ID数据,匹配成功则进⾏远程启动;PXE则是根据服务器端收到的⼯作站MAC地址(就是⽹卡号)使⽤DHCP服务给这个MAC地址指定⼀个IP地址,每次重启动可能同⼀台⼯作站有与上次启动有不同的IP,即动态分配地址以⼯作站引导过程说明PXE的原理:⼯作站开机后,PXEBootROM(⾃启动芯⽚)获得控制权之前先做⾃我测试,然后以⼴播形式发出⼀个请求FIND帧。

如果服务器收到⼯作站所送出的要求,就会送回DHCP回应,内容包括⽤户端的IP地址,预设通讯通道,及开机映像⽂件。

否则,服务器会忽略这个要求。

⼯作站收到服务器发回的相应后则会回应⼀个帧,以请求传送启动所需⽂件。

kickstart无人值守自动安装Linux系统

kickstart无人值守自动安装Linux系统

KickStart 无人值守批量安装Linux系统一:需求分析不适合本地安装的情况如下:(1)无软驱和光驱:如果计算机不带光驱或软驱,则无法通过本地安装。

(2)非标准的软驱和光驱:虽然笔记本电脑都会配置光驱。

但是并不一定都是标准的IDE设备,有些通过USB接口或1394接口(例如Samsung的Q10)连接。

在Linux安装时所引导的Linux内核一般都不会带这些接口的驱动,所以也无法通过本地安装。

(3)在一些场合,如机房中有大量的计算机需要同时安装Linux。

如果通过光驱的方式逐台安装,不仅效率低,也不利于维护。

(4)光驱或安装光盘故障。

基于以上所属情况,kickstart服务就可以解决这些问题。

二:方案设计什么是PXE:所有系统的网络安装和无人职守安装都是基于PXE,PXE技术与RPL技术不同之处为RPL是静态路由,PXE是动态路由。

RPL是根据网卡上的ID 号加上其他记录组成的一个Frame(帧)向服务器发出请求。

而服务器中已有这个ID数据,匹配成功则进行远程启动。

PXE则是根据服务器端收到的工件站MAC地址,使用DHCP服务为这个MAC地址指定个IP地址。

每次启动可能同一台工作站有与上次启动有不同的IP,即动态分配地址。

下以客户端引导过程说明PXE的原理。

(1)客户端开机后,PXE BootROM(自启动芯片)获得控制权之前执行自我测试,然后以广播形式发出一个请求FIND帧。

(2)如果服务器收到客户端所送出的要求,就会送回DHCP回应,包括用户端的IP地址、预设通信通道,以及开机映像文件;否则服务器会忽略这个要求。

(3)客户端收到服务器发回的响应后则会回应一个帧,以请求传送启动所需文件,并把自己的MAC地址写到服务器端的Netnames.db文件中。

(4)将有更多的消息在客户端与服务器之间应答,用于决定启动参数。

BootROM由TFTP通信协议从服务器下载开机映像文档。

客户端使用TFTP 协议接收启动文件后,将控制权转交启动块以引导操作系统,完成远程启动。

使用kickstar搭建无人值守安装服务器

使用kickstar搭建无人值守安装服务器
auth --useshadow --enablemd5
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
xconfig --defaultdesktop=GNOME --depth=8 --resolution=640x480
# Disk partitioning information
part /boot --asprimary --bytes-per-inode=4096 --fstype="ext3" --size=200
host=$(($RANDOM%195+60))
hostname=""
ip=10.1.1.$host
echo "IPADDR=$ip" >> ./ifcfg-$iface
echo "NETMASK=255.255.255.0" >> ./ifcfg-$iface
echo "GATEWAY=10.1.1.1" >> ./ifcfg-$iface
CustomLog logs/-access_log common
Alias /forum/ /wwwroot/bbs/
<Location /forum >
Order deny,allow
deny from all
@text-internet
@editors
%post

学习笔记-Kickstart

学习笔记-Kickstart

Kickstart的主要用途是实现自动化无人值守安装一台或多台Linux操作系统的工具。

使用kickstart文件ks.cfg可以在多台计算机上安装后定制要安装的linux系统,节省人力成本和时间资源。

可以实现硬盘安装、U盘安装和网络安装,在客户机没有光驱的情况下,方面用户安装。

要使用kickstart ,你必须:1) 创建kickstart 设置文件。

2) 部署kickstart设置文件,即将kickstart设置文件放置到安装服务器上,并在安装程式的kernel参数中指定kickstart设置文件的位置。

kickstart 设置文件是个简单的文本文件,包含一个安装项目列表。

每个项目对应于一个安装选择,都用关键字标明。

Kickstart的设置文件--ks.cfg,在你安装完如Fedora后,在/root下会有anaconda-ks.cfg文件,它就记录了你安装系统时的配置信息。

当要安装其他一台或多台系统时,就可以把此文件作为引导文件进行安装。

Kickstart文件也可以自己创建,需要安装kickstart配置程序,机器能联网,用yum安装即可,yum install kickstart,若不能联网则下载其安装包,进行安装。

下面主要介绍网络安装方式。

所需设备1.客户机,用于安装Fedora操作系统,也可以是其它Linux操作系统,不过要保证能从网络启动。

2.一台存放系统安装文件的服务器,如NFS、HTTP 或FTP 服务器。

3.KickStart所生成的ks.cfg配置文件关于服务器的DHCP相关配置,续。

于2011.3.1 客户端要网络启动安装系统,客户端机器必须要设置从网络启动,网卡支持PXE启动,可以在BIOS下进行查看和设置,设置好网络启动后,服务器端必须开启DHCP服务,进行DHCP 的设置,给客户端分配IP地址。

1.服务器端DHCP配置要安装DHCP 可以下载安装包进行安装,也可以通过yum install dhcp 安装,安装过程中,可能会涉及到依赖包的情况,这是需要删除有冲突的依赖包,然后再安装,这个过程可能会依各自电脑配置二不同,总之最后一定会安装好。

CentOS 6.4下PXE+Kickstart无人值守安装操作系统

CentOS 6.4下PXE+Kickstart无人值守安装操作系统

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

严格来说,PXE 并不是一种安装方式,而是一种引导方式。

进行PXE 安装的必要条件是在要安装的计算机中必须包含一个PXE 支持的网卡(NIC),即网卡中必须要有PXE Client。

PXE 协议可以使计算机通过网络启动。

此协议分为Client端和Server 端,而PXE Client则在网卡的ROM 中。

当计算机引导时,BIOS 把PXE Client 调入内存中执行,然后由PXE Client 将放置在远端的文件通过网络下载到本地运行。

运行PXE 协议需要设置DHCP 服务器和TFTP 服务器。

DHCP 服务器会给PXE Client(将要安装系统的主机)分配一个IP 地址,由于是给PXE Client 分配IP 地址,所以在配置DHCP 服务器时需要增加相应的PXE 设置。

此外,在PXE Client 的ROM 中,已经存在了TFTP Client,那么它就可以通过TFTP 协议到TFTP Server 上下载所需的文件了。

PXE的工作过程:1. PXE Client 从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP;2. DHCP 服务器返回分配给客户机的IP 以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上) ;3. PXE Client 向本网络中的TFTP服务器索取pxelinux.0 文件;4. PXE Client 取得pxelinux.0 文件后之执行该文件;5. 根据pxelinux.0 的执行结果,通过TFTP服务器加载内核和文件系统;6. 进入安装画面, 此时可以通过选择HTTP、FTP、NFS 方式之一进行安装;详细工作流程,请参考下面这幅图:1.2 什么是KickstartKickstart是一种无人值守的安装方式。

rhelkickstart无人值守安装

rhelkickstart无人值守安装

r h e l k i c k s t a r t无人值守安装公司内部档案编码:[OPPTR-OPPT28-OPPTL98-OPPNN08]Unattended _deloyprinciple使用企kickstart 来完成批量部署linux系统,可以在部署的时候实现软件的定制,以及环境的定制.use at (dhcp+ vsftp + tftp + kickstart)Let's beginshow of the IP and systemversion[root@instructor ~]# ifconfig eth0 | awk /Mask/inet addr: Bcast: Mask:[root@instructor ~]# cat /etc/redhat-releaseRed Hat Enterprise Linux Server release (Santiago)yum[root@instructor ~]# cat /etc/[yum]baseurl=gpgcheck=0the packages in need[root@instructor ~]# yum -y install dhcp tftp tftp-server syslinux system-config-kickstartdhcp service and start it[root@instructor ~]# cp /usr/share/doc/dhcp-4.1.1/ /etc/dhcp/ cp: overwrite `/etc/dhcp/' yes[root@instructor ~]# vim /etc/dhcp/subnet netmask {option routers ;range dynamic-bootp ;filename "";next-server ;}[root@instructor ~]# service dhcpd restartStarting dhcpd: [ OK ][root@instructor ~]# chkconfig --level 35 dhcpd onPXE[root@instructor ~]# mkdir /tftpboot[root@instructor ~]# vim /etc/tftpservice tftp{socket_type = dgramprotocol = udpwait = yesuser = rootserver = /usr/sbin/server_args = -s /tftpbootdisable = noper_source = 11cps = 100 2flags = IPv4}[root@instructor ~]# cp /media/isolinux/* /tftpboot/[root@instructor ~]# cd /tftpboot/[root@instructor tftpboot]# mkdir[root@instructor tftpboot]# cp default[root@instructor ]# chmod 664 default[root@instructor ]# chkconfig tftp on[root@instructor ]# service xinetd restartStopping xinetd:[FAILED]Starting xinetd:[ OK ][root@instructor ]# vim defaulttimeout 5 # 这里的时间如果为0 那么安装需要手动选择label linuxmenu label ^Install or upgrade an existing systemmenu defaultkernel vmlinuzappend initrd= ks=nfs::/ks/ #这个文件是用kickstart生成nfs service[root@instructor ~]# vim /etc/exports/media *(rw)/ks *(rw)[root@instructor ~]# service nfs restart[root@instructor ~]# mkdir /kskickstart in desktop[root@instructor ~]# system-config-kickstart[root@instructor ~]# chmod 757 /ks/[root@instructor ~]# cat /ks/ | gawk "NF>0" | grep -v "^#"firewall --disabledinstallnfs --server= --dir=/mediarootpw --iscrypted $1$tQb5ejy4$zdVAuOfSH82zdaObOg2a00 network --bootproto=dhcp --device=eth0 --onboot=onauth --useshadow --passalgo=md5textkeyboard uslang en_USselinux --enforcingskipxlogging --level=infotimezone Africa/Abidjanbootloader --location=mbrzerombrclearpart --all --initlabelpart / --fstype="ext4" --size=5000part /boot --fstype="ext4" --size=512part /home --fstype="ext4" --size=1024part swap --fstype="swap" --size=1024%packages@basic-desktop%endall of the services and test[root@instructor ~]# service dhcpd restart [root@instructor ~]# service nfs restart [root@instructor ~]# service xinetd restart ps:[root@instructor tftpboot]# iptables -F [root@instructor tftpboot]# setenforce 0。

centos6.5 Linux+ftp+kickstart无人值守安装

centos6.5 Linux+ftp+kickstart无人值守安装

centos6.5 Linux+ftp+kickstart无人值守安装大概原理:待安装主机通过PXE技术向服务器发起请求;首先请求IP,服务器通过dhcp向安装端分配IP地址,请求到了IP后接着下载default文件,该文件是定义安装信息,也就是安装系统的初始界面,接着,读取default里的ks.cfg文件路径,并下载到安装端,安装接着安装定义好的ks.cfg 开始自动安装系统,大概就这么个过程。

1.DHCP 服务器2.TFTP 服务器3.KickStart所生成的ks.cfg配置文件4.一台存放系统安装文件的服务器,如NFS、HTTP 或FTP 服务器5.带有一个PXE 支持网卡的将安装的主机把系统安装光盘mount到主机上最好虚拟机桥接并且联网1、搭建Yum源(本地光盘镜像)# mount /dev/cdrom /media/cdrom# vim /etc/yum.repos.d/base.repo[base]name=base repobaseurl=file:///media/cdromenabled=1gpgcheck=0安装所需要的服务yum -y install dhcp* tftp* vsftpd* syslinux配置TFTP,制定可供下载文件的目录。

vim /etc/xinetd.d/tftp1、编辑TFTP配置文件# default: off# description: The tftp server serves files using the trivial file transfer \# protocol. The tftp protocol is often used to boot diskless \# workstations, download configuration files to network-aware printers, \# and to start the installation process for some operating systems.service tftp{disable = no #找到disable,将yes修改为nosocket_type = dgramprotocol = udpwait = yesuser = rootserver = /usr/sbin/in.tftpdserver_args = -s /tftpboot #此处为TFTP提供下载的位置,默认为:/var/lib/tftpboot/per_source = 11cps = 100 2flags = IPv4}. ps:/tftpboot目录是要手动建立的,该目录用于存放系统安装的引导文件2,TFTP目录建立与设置#mkdir /tftpboot#cp /usr/share/syslinux/pxelinux.0 /tftpboot/ #注意这里用红色标注的地方因系统版本的不一样可能会出现不一样的路径。

Kickstart无人值守安装CentOS5

Kickstart无人值守安装CentOS5

Kickstart无人值守安装CrntOS5原理和概念:什么是PXE预启动执行环境(Preboot eXecution Environment,PXE,也被称为预执行环境)是让计算机通过网卡独立地使用数据设备(如硬盘)或者安装操作系统。

什么是KickStartKickstart是红帽创建的一种安装方法,使用kickstart,系统管理员可以创建一个文件,这个文件包含了在典型的安装过程中所遇到的问题的答案。

实现网络安装的过程是这样的:客户机PXE网络启动------>通过网际协议(IP)、用户数据报协议(UDP)、动态主机设定协定(DHCP)------->客户机获得IP------>通过小型文件传输协议(TFTP) 从TFTP Server上下载PEX引导文件------>启动引导程序进入安装界面------>根据default文件,通过超文本传送协议(HTTP)去HTTP Server下载ks.cfg文件----->根据ks.cf文件去HTTP Server下载RPM包并自动安装系统------>完成安装。

本次实验环境介绍:虚拟机:VMware Workstation 9.02 for windows服务端centOS5.8 ,IP 192.168.1.200,虚拟机网卡设置为桥接模式。

执行 PXE + KickStart安装要求:• DHCP 服务用来给客户机分配IP;• TFTP 服务用来存放PXE的相关文件,比如:系统引导文件;• HTTP 服务用来存放系统安装文件;• KickStart用来生成ks.cfg配置文件;• 带有一个 PXE 支持网卡的将安装的主机;安装步骤1.构建本地yum源[可选==如果VM不能连接到internet][root@localhost ~]# mount /dev/cdrom /media[root@localhost ~]# mv /etc/yum.repos.d/ ~[root@localhost ~]# vim /etc/yum.repos.d/local-source.repo[rhel-source]name=RHEL 6.2 Local Sourcebaseurl=file:///mediaenabled=1gpgcheck=02.安装相关软件包[root@localhost ~]# yum -y install dhcp httpd tftp-server system-config-kickstart3.创建安装源目录[root@localhost ~]# mkdir /var/www/html/centos54.挂载安装ISO安装源[root@localhost ~]# echo "/dev/cdrom /var/www/html/centos5 iso9660 \ defaults 0 0" >> /etc/fstab[root@localhost ~]# mount -a5.创建pxelinux.cfg目录[root@localhost ~]# mkdir /tftpboot/pxelinux.cfg6.拷贝PXE启动相关文件[root@localhost ~]# cp /usr/lib/syslinux/pxelinux.0 /tftpboot/[root@localhost ~]# cp /var/www/html/centos5/isolinux/isolinux.cfg \/tftpboot/pxelinux.cfg/default[root@localhost ~]# cp /var/www/html/centos5/isolinux/* /tftpboot/7.生成KS文件(图形界面下)[root@localhost ~]# system-config-kickstart[root@localhost ~]# cp ks.cfg /var/www/html/7.1.一个KS示例文件-CentOS5.8[root@localhost ~]# cat /var/www/html/ks.cfg#platform=x86, AMD64, Intel EM64T# System authorization informationauth --useshadow --enablemd5# System bootloader configuration#key --skip #如果是RHEL需要添加这行bootloader --location=mbr# Clear the Master Boot Recordzerombr# Partition clearing informationclearpart --all --initlabel# Use text mode installtext# Firewall configurationfirewall --enabled --ssh --trust=eth0,eth1# Run the Setup Agent on first bootfirstboot --disable# System keyboardkeyboard us# System languagelang en_US# Installation logging levellogging --level=info# Use network installationurl --url=http://192.168.1.200/centos5# Network informationnetwork --bootproto=dhcp --device=eth0 --onboot=onnetwork --bootproto=dhcp --device=eth1 --onboot=on#Root passwordrootpw --iscrypted $1$TrBGQ8pS$H3SgzJS1uofc0UXlq0h.4.# SELinux configurationselinux --permissive# System timezonetimezone --isUtc America/New_York# Install OS instead of upgradeinstall# X Window System configuration informationxconfig --defaultdesktop=GNOME --depth=24 --resolution=1280x800 # Disk partitioning informationpart /boot --bytes-per-inode=4096 --fstype="ext3" --size=500 part swap --bytes-per-inode=4096 --fstype="swap" --size=16000 part / --bytes-per-inode=4096 --fstype="ext3" --grow --size=1%packages@admin-tools@base#root默认密码:1234%^&*8.指定KS文件,编辑/tftpboot/pxelinux.cfg/default 添加:append initrd=initrd.img ks=http://192.168.1.200/ks.cfg修改完成后需要:wq!强制保持退出8.1.一个default示例文件:[root@localhost ~]# cat /tftpboot/pxelinux.cfg/defaultdefault linuxprompt 1timeout 60display boot.msgF1 boot.msgF2 options.msgF3 general.msgF4 param.msgF5 rescue.msglabel linuxkernel vmlinuzappend initrd=initrd.img ks=http://192.168.1.200/ks.cfglabel textkernel vmlinuzappend initrd=initrd.img textlabel kskernel vmlinuzappend ks initrd=initrd.imglabel locallocalboot 1label memtest86kernel memtestappend -9.创建并修改DHCP配置文件[root@localhost ~]# \cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample \ /etc/dhcpd.conf9.1.一个DHCP示例文件[root@localhost ~]# cat /etc/dhcpd.confddns-update-style interim;ignore client-updates;#添加下面两行next-server 192.168.1.200; #此处为PXE服务IPfilename "pxelinux.0";subnet 192.168.1.0 netmask 255.255.255.0 {# --- default gatewayoption routers 192.168.1.1;option subnet-mask 255.255.255.0;option nis-domain "";option domain-name "";option domain-name-servers 8.8.8.8;option time-offset -18000; # Eastern Standard Time# option ntp-servers 192.168.1.1;# option netbios-name-servers 192.168.1.1;# --- Selects point-to-point node (default is hybrid). Don't change this unless# -- you understand Netbios very well# option netbios-node-type 2;#DHCP地址池:从192.168.1.130到192.168.1.253.range dynamic-bootp 192.168.1.130 192.168.1.253;default-lease-time 21600;max-lease-time 43200;}10.关闭SELinux、防火墙[root@localhost ~]# setenforce 0[root@localhost ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' \ /etc/selinux/config[root@localhost ~]# service iptables stop[root@localhost ~]# chkconfig iptables off11.启动相关服务,设置开机自启动[root@localhost ~]# service httpd restart[root@localhost ~]# service dhcpd restart[root@localhost ~]# service xinetd restart[root@localhost ~]# chkconfig tftp on[root@localhost ~]# chkconfig httpd on[root@localhost ~]# chkconfig dhcpd on[root@localhost ~]# chkconfig xinetd on[root@localhost ~]# sed -i 's/disable = yes/disable = no/' \/etc/xinetd.d/tftp======配置完成-----配置完成后用网线接入交换机,客户机设置网络启动即可实现批量自动安装。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux Kickstart无人值守安装Linux Kickstart无人值守安装在我们的网络维护生涯中,有不少朋友,感觉到自己在机械的做一件事情,在无聊、无趣和无奈中工作。

尤其一些简单重复的操作更容易让大家感到工作的无趣。

今天将给大家介绍如何大规模的部署RedHat Linux操作系统,避免了手工安装的繁琐。

当然本方法也使用于一些特殊场合,譬如没有光驱或光驱坏掉的计算机、手中没有安装光盘等情况。

在安装RedHat Linux企业版的过程中,我们都知道它允许通过NFS、HTTP或FTP协议来进行网络安装。

但是在一般情况下我们需要有一个安装引导介质(引导光盘、引导软盘、U盘等),有没有一种方法不通过引导光盘方式来安装呢,而直接通过网络来进行安装?答案是有,即通过PXE技术实现。

一、基本原理那么PXE到底是什么呢?PXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络启动。

协议分为client和server两端,PXE client 在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。

既然是通过网络传输,就需要IP地址;也就是说在其启动过程中,客户端请求服务器分配IP地址,之后PXE Client使用TFTP Client 通过TFTP(Trivial File Transfer Protocol)协议下载启动安装程序所需的文件。

简单地说PXE网络安装,客户机通过支持PXE的网卡向网络中发送请求DHCP信息的广播请求IP地址等信息,DHCP服务器给客户端提供IP地址和其它信息(TFTP服务器、启动文件等),之后请求并下载安装需要的文件。

在这个过程中需要一台服务器来提供启动文件、安装文件、以及安装过程中的自动应答文件等。

下图中介绍了Linux中自动安装系统的详细工作过程:第一步:PXE Client向DHCP发送请求首先,将支持PXE的网络接口卡(NIC)的客户端的BIOS设置成为网络启动,通过PXE BootROM(自启动芯片)会以UDP(简单用户数据报协议)发送一个广播请求,向网络中的DHCP服务器索取IP 地址等信息。

第二步:DHCP服务器提供信息DHCP服务器收到客户端的请求,验证是否来至合法的PXE Client 的请求,验证通过它将给客户端一个“提供”响应,这个“提供”响应中包含了为客户端分配的IP地址、pxelinux启动程序(TFTP)位置,以及配置文件所在位置。

第三步:PXE客户端请求下载启动文件客户端收到服务器的“回应”后,会回应一个帧,以请求传送启动所需文件。

这些启动文件包括:pxelinux.0、pxelinux.cfg/default、vmlinuz、initrd.img等文件。

第四步:Boot Server响应客户端请求并传送文件当服务器收到客户端的请求后,他们之间之后将有更多的信息在客户端与服务器之间作应答, 用以决定启动参数。

BootROM 由 TFTP通讯协议从Boot Server下载启动安装程序所必须的文件(pxelinux. 0、pxelinux.cfg/default)。

default文件下载完成后,会根据该文件中定义的引导顺序,启动Linux安装程序的引导内核。

第五步:请求下载自动应答文件客户端通过pxelinux.cfg/default文件成功的引导Linux安装内核后,安装程序首先必须确定你通过什么安装介质来安装linux,如果是通过网络安装(NFS, FTP, HTTP),则会在这个时候初始化网络,并定位安装源位置。

或许你会说,刚才PXE不是已经获取过IP地址了吗?为什么现在还需要一次?这是由于PXE获取的是安装用的内核以及安装程序等,而安装程序要获取的是安装系统所需的二进制包以及配置文件。

由于它们需要的内容不同造成PXE模块和安装程序是相对独立的,PXE的网络配置并不能传递给安装程序。

从而进行两次获取IP地址过程。

接着会读取该文件中指定的自动应答文件ks.cfg所在位置,根据该位置请求下载该文件。

第六步:客户端安装操作系统将ks.cfg文件下载回来后,通过该文件找到OS Server,并按照该文件的配置请求下载安装过程需要的软件包。

OS Server和客户端建立连接后,将开始传输软件包,客户端将开始安装操作系统。

安装完成后,将提示重新引导计算机。

这个时候注意,在重新引导的过程中一定要将BIOS修改回从硬盘启动,不然的话又会重复的自动安装操作系统。

在上面介绍中PXE client是需要安装Linux的计算机,TFTP Serve r、DHCP Server和NFS Server运行在另外一台Linux Server上。

Boots trap文件、配置文件、Linux内核都放置在Linux Server上TFTP服务器的根目录下。

而Linux根文件系统存放于NFS Server的共享目录中。

PXE client在工作过程中,需要三个二进制文件:bootstrap、Linux 内核和Linux根文件系统。

Bootstrap文件是可执行程序,它向用户提供简单的控制界面,并根据用户的选择,下载合适的Linux内核以及Linux根文件系统。

二、配置过程配置PXE安装,要进行如下步骤:①配置DHCP,用于给客户端提供IP地址及其它信息②配置TFTP服务器,用于提供客户端PXE引导所必须的文件③配置NFS服务器,用于存放安装树④配置Kickstart,用于自动应答安装⑤使用PXE功能引导客户机1、DHCP的安装与配置在PXE引导安装过程中,PXE客户端通过DHCP获取PXE服务器地址,PXE引导文件名称;然后客户机在使用TFTP协议从TFTP服务器下载引导文件并执行,从而启动计算机安装程序。

引导文件执行后,接着下载安装程序启动安装。

RedHat Linux使用了ISC的dhcpd软件,完成它的安装与配置。

1)安装DHCP软件包[root@qiuri Server]# rpm -ivh dhcp-3.0.5-13.el5.i386.rpmPreparing... ######################################### ## [100%]1:dhcp ######################################## ### [100%][root@qiuri Server]#2)配置DHCP安装完成后,复制DHCPD配置文件模版替换原配置文件/etc/dhcp d.conf。

接下来我们需要配置相关信息。

为了满足我们的安装需求,假设P XE服务器、DHCP服务器、TFTP服务器全部安装在一台为192.168.1.1的计算机上。

我们需要进行如下操作:(1)修改 /etc/dhcpd.conf 文件,指定 IP 地址等信息。

(2)在 '''/etc/dhcpd.conf''' 中增加 tftp-server 需要推送给客户端的启动文件(bootstrap):filename "pxelinux.0";因为 tftp 的默认目录是 /tftpboot,所以文件的绝对路径就是: /tftpboot/pxelinux.0";当然也可以指定为其它的路径。

另外需要指定 next-server 参数,告诉客户端在获取到 pxelinux.0 文件之后去哪里获取其余的启动文件: next-server 192.168.1.1;最终的配置文件结果如下所示:配置完成后,重启DHCP服务,并将它设为开机自启动。

2、安装配置TFTP服务器在PXE安装过程中,客户机在使用TFTP协议从TFTP服务器下载引导文件并执行。

我们主要通过配置TFTP服务器和PXE的引导配置完成这个过程。

1)安装配置TFTP服务器首先,安装TFTP服务器软件包,RedHat提供了如下两个软件包:●∙tftp-server:服务端程序● tftp :客户端程序配置tftp服务tftp 服务由xinetd服务管理。

编辑 '''/etc/xinetd.d/tftp''' 文件,将 '''disable = yes''' 改为:disable = no。

从这里看出,默认选择/tftpboot为TFTP服务器的根目录位置,配置完成后重启xinetd服务,使TFTP服务器生效。

[2)PXE引导配置(bootstrap)PXE启动映像文件由syslinux软件包提供,RedHat Enterprise Linux 光盘中已提供,如果没有此软件包可以到syslinux 主页:http://syslinu /下载rpm来安装。

我们只要安装了syslinux,就会生成一个pxelinux.0,将 pxelinux.0 这个文件复制到 '''/tftpboot''' 目录即可:3)用于网络启动的内核文件将 RedHat 安装光盘目录中的 '''images/pxeboot/{vmlinuz,i nitrd.img}''' 启动文件复制到某个安装目录,比如:'''/tftpboot/ ''':由于多个客户端可以从一个PXE服务器引导,PXE引导映像使用了一个复杂的配置文件搜索方式来查找针对客户机的配置文件。

如果客户机的网卡的MAC地址为'''88:99:AA:BB:CC:DD''',对应的IP 地址为192.168.1.195,那么客户机首先尝试以MAC地址为文件名匹配的配置文件,如果不存在就以IP地址来查找。

根据上述环境针对这台主机要查找的以一个配置文件就是 /tftpboot/pxelinux.cf g/01-88-99-aa-bb-cc-dd。

如果该文件不存在,就会根据IP地址来查找配置文件了,这个算法更复杂些,PXE映像查找会根据IP地址16进制命名的客户机配置文件。

例如:192.168.1.195对应的16进制的形式为C0A801C3。

(可以通过syslinux软件包提供的gethostip命令将10进制的IP转换为16进制)如果C0A801C3文件不存在,就尝试查找C0A801C文件,如果C0A801C也不存在,那么就尝试C0A801文件,依次类推,直到查找C文件,如果C也不存在的话,那么最后尝试default文件。

相关文档
最新文档