# 利用PXE引导安装centos7 #

###简介###
> PXE (Pre-boot Execution Environment,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。运行 PXE 协议需要设置 DHCP 服务器和 TFTP 服务器。

> DHCP设定分配的IP地址和需要请求的filename,PXE客户端启动,从DHCP服务器获取IP和要下载的文件名"pxelinux.0",然后从TFTP服务器请求加载"pxelinux.0"和默认的配置文件"pxelinux.cfg/default"。

> 客户端再根据"pxelinux.cfg/default"里面的引导配置从TFTP服务器下载对应linux内核"vmlinuz"和ramdisk的映像文件"initrd.img"(initialized ram disk-【ramdisk是用一部分内存模拟成磁盘】)。并且指定linux-repo镜像的路径和kickstart文件路径。

> 客户端再加载centos7-repo镜像,根据kickstart配置ks.cfg文件的预定义设置安装linux,实现全自动无人值守。

### 安装设置流程 ###

1、下载tinyPXEserver, http://erwan.labalec.fr/tinypxeserver/pxesrv.zip

> tinyPXEserver的TFTP默认路径根位置为 C:\pxesrv\file\

2、复制centos7镜像中isolinux/*所有文件到 C:\pxesrv\file\centos7ks\

3、解压centos7整个镜像到 C:\pxesrv\files\centos7image\

4、生产kickstart配置文件

```
[root@localhost ~]# yum -y install system-config-kickstart
[root@localhost ~]# system-config-kickstart   **图形界面设定**
[root@localhost ~]# ksvalidator ks.cfg   **检查语法错误**

```
ks.cfg配置范例
```
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
rootpw --iscrypted $6$lZCgRcTkckxJO5f7$Haf4hJ5luwvP18X6FRgR/oiGQw5/xdtUELPYVG4UWKtKBhr6/Xhq9Xz07CcAIUJ59d7gQRgtlyEtBMe/Y58Wm0
# Use network installation
url --url="http://10.10.33.33/centos7image"
# System language
lang en_US
# Firewall configuration
firewall --disabled
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx

# Network information
network  --bootproto=static --device=eno16777736 --gateway=10.10.3.1 --ip=10.10.3.88 --nameserver=114.114.114.114 --netmask=255.255.255.0
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai
# adduser huangjunfa
user --groups=wheel --name=huangjunfa --password=$6$32.WTXgxXYZsaicF$iQmGWjI1bhXgPcAMCT/5vIgUSHQ7KVt2YAgJa2zXVSimgmKfRndClq4ftLkweE6WZ83lZvdNUrlljiuwe2oaG/ --iscrypted --gecos="huangjunfa"
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --fstype="xfs" --size=300
part swap --fstype="swap" --recommended
part / --fstype="xfs" --grow --size=1

%packages
@^minimal
@core
kexec-tools

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'

%end
```
4、复制pxelinux.0 menu.c32 memdisk mboot.c32 chain.c32 文件到 C:\pxesrv\files\

来源于
```
[root@localhost etc]# yum -y install syslinux
SFTP>get /usr/share/syslinux/pxelinux.0

```

5、编辑 C:\pxesrv\files\pxelinux.cfg\default    # default文件,必须为这个名称

加入下面代码
``` 
label linux
  menu label ^Install CentOS7ks
  kernel centos7ks/vmlinuz
  append initrd=centos7ks/initrd.img repo=http://10.10.33.33/centos7image ks=http://10.10.33.33/centos7ks/ks.cfg

```

### end ###

利用PXE引导安装centos7的更多相关文章

  1. 简单的网络引导安装CentOS7

    实验室有几台电脑,里边装有windows,因为实验需求要给其装入CentOS7.但是这几个电脑无法用U盘引导系统的安装,虽然带有光驱,但是又不想麻烦去买碟片,所以便想到用网络引导系统的安装. 1. 软 ...

  2. 利用VMware虚拟机安装CentOS7

    CentOS7镜像下载:http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso VMware虚拟 ...

  3. Mac利用PD虚拟机安装Centos7

    一.PD虚拟机的安装1.Parallels Desktop ,简称PD,号称是Mac上最好用的虚拟机,具体的就在此不进行过多描述.下附Mac .app文件夹下载,下载后放入/Applications/ ...

  4. 使用PXE+NFS EFI引导安装RHEL6/7以及Kickstart安装

    PXE引导的步骤: 1.开机后选择网络启动,client端向server端的dhcpd发起获取IP地址的dhcp请求. 2.server端分配IP后,dhcpd会同时根据其配置文件,通过TFTP协议发 ...

  5. linux pxe 安装Centos7

    服务端 需要3种服务 dhcp + tftp + vsftp tftp 提供引导 为什么不使用其他协议来进行pxe引导 是因为网卡只会集成tftp这种服务     写明到镜像的方式 dhcp 下发tf ...

  6. pxe+kickstart 无人值守安装CentOS7.1

     CentOS6.6下PXE+Kickstart无人值守安装CentOS7.1操作系统 一.简介 1.1 什么是PXE Pxe(Pre-boot Execution Environment,预启动执行 ...

  7. Linux PXE自动化安装centos6,centos7系统

    1.PXE是什么? pxe是Preboot Excution Environment的缩写,是intel公司研发,基于client/server的网络模式,支持远程主机通过网络从远端服务器下载镜,并由 ...

  8. 在CentOS6上利用PXE+Kickstart+Apache+DHCP实现无人值守安装

    在CentOS6上利用PXE+Kickstart+Apache+DHCP实现无人值守安装 1.PXEServer:OS:CentOS6.9IP:172.16.25.69: (1)apache:# mo ...

  9. 定制kickstart重建CentOS7.5镜像用于U盘引导安装

    有什么问题或者疑惑,可以留言,全力解答. ISO 镜像制作 U 盘安装盘 U盘安装CentOS7.4 U盘实现CentOS7.3全自动安装系统 https://www.cnblogs.com/pany ...

随机推荐

  1. MySQL数据库--练习

    学生选课系统 设计表关系 创建表和插入数据 /* Navicat MySQL Data Transfer Source Server : localhost_3306 Source Server Ve ...

  2. SQL Server DDL触发器

    DDL 触发器作用: DDL 触发器主要用于防止对数据库架构.视图.表.存储过程等进行的某些修改. DDL 触发器事件: DDL 触发器在创建用来监视并响应该数据库或服务器实例中的活动的事件通知时,可 ...

  3. 一步一步学EF系列一【最简单的一个实例】

    整个文章我都会用最简单,最容易让人理解的方式给大家分享和共同学习.(由于live Writer不靠谱 又得补发一篇) 一.安装 Install-Package EntityFramework 二.简单 ...

  4. 获取一个表单字段中多条数据并转化为json格式

    如图需要获取下面两个li标签里面的数据,然后传给后台:而后台接收的数据格式是json的,所以需要把两个li里面的信息转化为以下格式的. {recieverName:小红,recieverPhone:1 ...

  5. ubuntu下python+tornado+supervisor+nginx部署

    由于项目需要,老师让我写一个小web系统,之前都是用java写web,想到自己最近学机器学习要用python,所以用python来写一下,此外,因为想用点新东西,也介于程序比较小,所以考虑用mongo ...

  6. ansible playbook部署ELK集群系统

    一.介绍 总共4台机器,分别为 192.168.1.99 192.168.1.100 192.168.1.210 192.168.1.211 服务所在机器为: redis:192.168.1.211 ...

  7. 深入探讨JS中的数组排序函数sort()和reverse()

    最近在研究Javascript发现了其中一些比较灵异的事情.有点让人感到无语比如: alert(typeof( NaN == NaN));//结果为假. alert(typeof( NaN != Na ...

  8. centos6.7安装lamp

    1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport ...

  9. OpenStack之Nova模块

    Nova简介 nova和swift是openstack最早的两个组件,nova分为控制节点和计算节点,计算节点通过nova computer进行虚拟机创建,通过libvirt调用kvm创建虚拟机,no ...

  10. Html遮罩层的显示(主要在于样式设置)

    <html> <head> <title>aaa</title> <script type="text/javascript" ...