原理有必要说明一下           (百度偷来的)

原理和概念:

1.1 什么是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 上下载所需的文件。

1.2 什么是KickStart

KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。

1.3 PXE + KickStart安装的条件

执行 PXE + KickStart安装需要的设备为:

• DHCP 服务器;

• TFTP 服务器;

• KickStart所生成的ks.cfg配置文件

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

• 带有一个 PXE 支持网卡的将安装的主机;

工作过程图 

安装步骤

环境:

OS:CentOS 5.5 x86_64

ip adress:192.168.20.20

两台VM:一台做Server,一台来装系统

(如果你的系统是CentOS 5.5 32位或者其它版本的Linux,请自行适合的修改)

1.mount CentOS DVD

mount /dev/cdrom /mnt[挂载光驱]

2.install tftp-server

yum -y install tftp-server.x86_64

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#[将'yes'改为'no']

per_source              = 11

cps                     = 100 2

flags                   = IPv4

}

service xinetd start           [启动tftp服务]

3.configuration PXE

mkdir /tftpboot    [如果没有这个文件夹就创建]

cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

cp /mnt/p_w_picpaths/pxeboot/initrd.img /tftpboot/

cp /mnt/p_w_picpaths/pxeboot/vmlinuz /tftpboot/

cp /mnt/isolinux/*.msg /tftpboot/    [复制linux开机引导文件]

mkdir/tftpboot/pxelinux.cfg

cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default

4.install DHCP

yum -y install dhcp.x86_64

cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf

vim /etc/dhcpd.conf

ignore client-updates;

next-server 192.168.20.20;#[添加,next-server 是tftp server]

filename "/pxelinux.0";#[添加]

subnet 192.168.20.0 netmask 255.255.255.0 {#[网段申明]

# --- default gateway

option routers                  192.168.20.254;     #[网关]

option subnet-mask              255.255.255.0;      #[子网俺码]

option nis-domain               "domain.org";

option domain-name              "domain.org";

option domain-name-servers      8.8.8.8;             #[DNS]

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;

range dynamic-bootp 192.168.20.20 192.168.20.254;#[ip pools]

default-lease-time 21600;

max-lease-time 43200;

# we want the nameserver to appear at a fixed address

#       host ns {

#               next-server marvin.redhat.com;

#               hardware ethernet 12:34:56:78:AB:CD;

#               fixed-address 207.175.42.254;

#       }#[由于本次实验中DHCP Server只用于安装无人值守安装,这些都用不着,注释最后几行。实际环境中,视情况而定]

}

service dhcpd start

5.install NFS

yum -y install nfs-*      [CentOS默认是安装的]

mkdir /tftpboot/ks        [先在tftpboot目录下创建ks文件,一会存放ks.cfg时用]

vim /etc/exports

/mnt    *(ro)  #[添加这两个共享文件夹,'*'任何人可以访问,'(ro)'即read only]

/tftpboot/ks/    *(ro)

service portmap start     [首先启动这个服务,这是nfs的依赖服务]

service nfs start

6.install KickStart

yum -y install system-config-kickstart.noarch    [install kickstart]

yum -y groupinstall "X Window System"     [如果GNOME环境,请执行本行及下行命令。如果你不希望安装GNOME环境,KickStart也可以不安装,直接复制我这的ks.cfg代码合适的修改便可。当然其它版本的linux的ks.cfg代码不一样]

yum -y groupinstall "GNOME Desktop Environment"

startx[进入desktop,kickstart必须在desktop环境下配置]

system-config-kickstart    [start kickstart]

定制KickStart              [下图只是例子,实际根据各自需求而定]

因为CentOS安装盘挂载在/mnt,所以这里的目录是/mnt

记得最少安装一个包,不然在安装系统的时候,会弹出一个对话框,让你手动选择需要安装的包

下面是利用KickStart生成的ks.cfg,也可以直接在这里适当修改参数

lang en_US

# Installation logging level

logging --level=info

# Use NFS installation media

nfs --server=192.168.20.20 --dir=/mnt

# Network information

network --bootproto=dhcp --device=eth0 --onboot=on

# Reboot after installation

reboot

#Root password

rootpw --iscrypted $1$SjnCI7rG$4JhDvTrZ4Xo4fdpjOriBU/

# SELinux configuration

selinux --enforcing

# Do not configure the X Window System

skipx

# System timezone

timezone  Asia/Shanghai

# Install OS instead of upgrade

install

# Disk partitioning information

part swap --bytes-per-inode=4096 --fstype="swap"--size=2048

part /boot --bytes-per-inode=4096 --fstype="ext3"--size=100

part / --bytes-per-inode=4096 --fstype="ext3"--size=10240

part /data --bytes-per-inode=4096 --fstype="ext3"--grow --size=1

%packages

@editors

cp /root/ks.cfg /tftpboot/ks/

chmod 777 /tftpboot/pxelinux.cfg/default

vim /tftpboot/pxelinux.cfg/default

default ks#[修改为'ks']

prompt 1

timeout 3

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.20.20:/tftpboot/ks/ks.cfg initrd=initrd.img#[这里是ks的路径]

label local

localboot 1

label memtest86

kernel memtest

append -

7.closed Firewall and SElinux

setup

8.验证奇迹的时刻来啦

开启需要安装的电脑,倒杯COFFEE,看它自动安装喽。。。。

默认情况下不需要任何设置,如果电脑自动不能找到PXE启动或叫Network boot from XX开机启动模式,就手动选择吧。

一般临时选择是按Esc或F12或F11再或者其它,因电脑品牌而异。。

如果在boot里将设置PXE设置成第一启动选项,记得安装完系统后,改回硬盘启动,否则电脑会一直装系统,,,

9.总结

VM安装需注意几点:

关闭网卡自带的DHCP;

网卡模式用桥接;

最后贴几张PC安装时的图吧

pxe安装linux dhcp失败,51CTO博客-专业IT技术博客创作平台-技术成就梦想相关推荐

  1. pxe安装linux dhcp失败,PXE+DHCP+NFS+KICKSTART无人值守安装RHEL6.4

    实验要求: 服务器(192.168.100.250)给192.168.100.0网段的客户机安装RHEL6.4操作系统,并给每台客户端192.168.100.x分配主机名clientx.linuxid ...

  2. pxe安装linux dhcp失败,利用PXE自动化安装Centos时启动DHCP服务时遇到错误,请求大佬指教...

    @利用PXE自动化安装Centos时启动DHCP服务时遇到错误,请求大佬指教 [root@localhost ~]# systemctl start dhcpd.service Job for dhc ...

  3. pxe安装linux后命令不可用,CentOS7下的PXE无人值守系统安装(亲测成功)

    CentOS7下的PXE无人值守系统安装 为了满足同时安装上百台linux,而且不需要人工干预.这就需要PXE来通过网线自动安装linux 1.搭建yum源来下载必要的工具,yum源的配置见点击打开链 ...

  4. PXE安装linux

    Liunx自动安装---PXE 从光盘来安装Linux是一种比较便捷.直接的操作方法,但是,如果遇到要一次性安装liunx系统到很多台机器上时,也用光盘装,你会不会觉得很麻烦,感到力不从心呢?这时我们 ...

  5. windows pxe 安装linux,菜鸟学Linux 第103篇笔记 pxe自动化安装linux

    菜鸟学Linux 第103篇笔记 pxe自动化安装linux 内容总览 linux的系统安装 kickstart文件的组成部分 DHCP (Dynamic Host Configuration Pro ...

  6. u盘启动pxe安装linux,U盘启动安装centos5.5+centos6.3+PXE网络安装CentOS

    此U盘启动安装盘的功能: 1.0pe可用来进行系统维护: 2.0pe可安装windows 2003原版系统: 3.0pe可作为pxe服务器进行网络安装,加上http服务器软件可提供网络安装CentOS ...

  7. win10 pxe 安装linux,win10+TPLINK,用PXE安装redhat系统

    最近第一次接触到PXE安装系统,感到很新鲜.而且现在基本每张网卡都支持PXE.遂在家愉快地玩了起来.结合这个使用kickstar自动化,批量安装系统确实能省不少精力.同时也适合家里有两台电脑,一台系统 ...

  8. linux服务器u盘启动失败怎么办,U盘安装Linux启动失败问题(grub)

    使用U盘安装Linux系统时,当安装所有的包后,点击reboot重启(重启后还需要对系统进行时间,其他用户等等的设定),发现启动时进入了grub> 界面.原来是使用U盘进行Linux安装时,默认 ...

  9. linux dhcp 续租失败,51CTO博客-专业IT技术博客创作平台-技术成就梦想

    1.Neutron的问题 openvswitch卡死导致主机所有网络中断 问题:L3 agent down了,所有的网络连接不上,L3所在的物理机点的公网IP地址访问不了 dhcpagent 服务器d ...

最新文章

  1. 潘石屹Python考试成绩99分,网友:还有一分怕你骄傲
  2. Fluid — 云原生环境下的高效“数据物流系统”
  3. 下行物理信道rs_基于大规模MIMO技术的中继协作物理层安全研究
  4. jq之$(“p.test“)
  5. jvm学习笔记(2)——java对象的内存布局
  6. orabbix监控oracle11g,orabbix 监控oracle
  7. 入门教程:.NET开源OpenID Connect 和OAuth解决方案IdentityServer v3 介绍 (一)
  8. 基础版专业版全屏海报图片轮播代码生成器(淘宝店铺特效装修工具软件)
  9. 软件工程专业英语专用名词翻译
  10. 第三课 protel学习系列——protel功能拓展
  11. (原创)安卓抓包方案分享
  12. 转换YV12到RGB565图像转换,附YUV转RGB测试
  13. 数据库--MySQL
  14. Python如何使用Continue语句?用法示例
  15. 2020家用千兆路由器哪款好_2020年500元以内23款无线路由器推荐,贵就好吗?
  16. 基于深度学习的时间序列分类[含代码]
  17. 「金融科技50+」新网银行李秀生:第三次金融业信息技术革新
  18. Application was not properly initialized at startup, could not find Factory:
  19. 关于励志书及推荐《高效能人士的七个习惯》
  20. python定向爬取wallhaven壁纸

热门文章

  1. ORACLE 新建数据库及权限赋予
  2. 在线学习(Online Learning)
  3. python 函数的*args,**kwargs
  4. numpy.arcsin详解
  5. pyCrypto python 3.5--转
  6. 支付系统的对账处理与设计--转
  7. RPC调用框架比较分析--转载
  8. 大数据【企业级360°全方位用户画像】标签系统介绍
  9. 用R语言把数据玩出花样
  10. 深入探究递归神经网络:大牛级的训练和优化如何修成?