pxe装机原理_pxe装机方式

一、概念与原理

什么是PXE

严格来说,PXE 并不是一种安装方式,而是一种引导的方式。进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE

支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot Execution

Environment,直译为启动前的执行环境)协议使计算机可以通过网络启动。协议分为 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。PXE Client

通过 TFTP 协议到 TFTP Server 上下载所需的文件。

什么是KickStart

KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为

ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找

KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文

件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根

据ks.cfg中设置的重启选项来重启系统,并结束安装。

二,安装环境

安装pxe+kickstart批量部署系统

1  dhcp服务,这个是用来分发ip,裸机用来和pxe引导机通信获取文件

2  tftp 服务器  用来和裸机传输文件

3  http服务、ftp或nfs共享文件访问

4  ks.cfg文件 用于安装过程中交互部分自动分匹配系统配置

5  syslinux服务提供pxelinux.0文件引导

6  一台支持pxe协议的网卡主机

7  关闭selinux及iptables防火墙

安装步骤

确认操作系统版本

uname -r

2.6.32-504.el6.x86_64

[

CentOS release 6.6 (Final)

Kernel \r on an \m

使用yum源安装所需软件

挂载光盘镜像:mount /dev/cdrom /mnt/

配置本地yum源

[

[yum]

name=local yum

baseurl=file:///mnt

enabled=1

gpgcheck=0

配置静态ip

vim /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=192.168.1.103

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

安装dhcp服务

[

配置dhcp服务,使其能够为其他服务器通过ip地址

配置192.168.1.0分发网段,,子网255.255.255.0,配置项后每行必须以;结尾

subnet 192.168.1.0 netmask 255.255.255.0  {

range 192.168.1 10 192.168.1.50;

default-lease-time 6000;

max-lease-time 72000;

next-server 192.168.1.103;

filename "/pxelinux.0";

}

[hide]

安装httpd服务(本文通过http的方式提供服务)

[

此处只是让http能够提供服务,不做任何配置

将httpd设置为开机自动启动

[

安装tftp-server服务端

yum -y install tftp-server xinted

xinted是为tftp提供的守护进程,将tftp及xinted设置为开机自启动

chkconfig tftp on

chkconfig xinted on     #添加开机自启动

修改TFTP的配置文件

vim /etc/xinetd.d/tftp     // 内容如下:

service tftp

{

socket_type             = dgram

protocol                = udp

wait                    = yes

user                    = root

server                  = /usr/sbin/in.tftpd

server_args             = -s /tftpboot

disable                 = no   // 只需要更改的这一部分

per_source              = 11

cps                     = 100 2

flags                   = IPv4

}

开启TFTP服务

tftp是由xinted来启动的,

修改完后要记得service xinetd restart

重新创建目录挂载光盘,用于安装系统使用,提供安装系统的关键文件及软件包

mkdir /var/www/html/Centos6/

mount --bind   /mnt/ /var/www/html/Centos6/

启动http服务

/etc/init.d/httpd start

安装syslinux,此服务为pxe提供pxelinux.0文件

yum -y install syslinux

复制pxe所需系统内核引导文件到tftp目录下

[

[

[

[

[

[

[

[

修改/var/lib/tftpboot/pxelinux.cfg/default

定义了开机提示,包括开机界面

指定读取ks.cfg文件方法:

append initrd=initrd.img ks=

提供kictstart文件

kictstart文件生成有两种方式

1,直接复制/root/anaconda-ks.cfg模板,使用vim进行编辑配置

2,使用system-config-kiskstart来生成,建议使用/root/anaconda-ks.cfg 模板生成

本文以第一种方式生成,修改自己所需要的参数

使用md5加密设置管理员密码

将生成的ks.cfg文件复制到/var/www/html下

其内容如下,根据需求修改

bootloader --location=mbrclearpart --nonegraphicalfirewall --disabledfirstboot --disabledkeyboard uslang en_USlogging  --level=infourl --url=http://192.168.1.210/Centos6network --bootproto=dhcp --device=eth0 --onboot=onrebootauth --useshadow --enablemd5#perl -e 'print crypt("acgcommittee.com",q($1$BYSimiLe)),"\n"'rootpw --iscrypted $1$BYSimiLe$x/Gre5TYTTEEghm/K0TC.1selinux --disabledtimezone --isUtc Asia/Shanghaiinstallnetwork --bootproto=dhcp device=eth0 --onboot=on#system bootloader configurationbootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sda"#clear the master boot recordzerombrclearpart --all --initlabel#part /boot --bytes -per -inode=4096 --fstype="ext4" --size=128#part swap --bytes -per -inode=4096  --fstype="ext4" --size=1024#part / --bytes -per inode=4096 --fstype="ext4"  --grow --size=1part /boot --fstype="ext4" --size=200part swap --size=2048part / --fstype="ext4" --grow --size=200%packages@base@core@debugging@desktop-debugging@desktop-platform@directory-client@fonts@graphical-admin-tools@input-methods@internet-applications@internet-browser@java-platform@legacy-x@network-file-system-client@office-suite@print-client@remote-desktop-clients@server-platform@server-policy@workstation-policy@x11mtoolspaxoddjobsgpiodevice-mapper-persistent-dataabrt-guisamba-winbindcertmongerpam_krb5krb5-workstationlibXmu%end

[/hide]

启动后系统即可自动安装完成,无需干涉

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值