目录

PXE简介

实现PXE需要的硬件和软件

服务作用说明

部署PXE远程装机

1安装ftp服务,准备yum源

2安装tftp-server和xinetd软件包(tftp服务依赖于xinetd超级服务)

3修改tftp配置文件

4启动tftp服务

5配置DHCP服务器:(pxe远程部署系统是没有IP地址的,所以需要DHCP分配)

6准备内核文件和初始化镜像文件

7准备支持PXE软件包

8准备启动菜单

9修改启动菜单

10 重启所有服务

11 客户端测试

无人值守安装

kickstart-由于下载软件包信息失败,软件包选择被禁止解决方法:

第二种方法


PXE简介

1.1PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的,工作于C/S网络模式,支持通过网络从远端服务器下载映像,并支持通过网络启动操作系统。

1.2在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置。从而引导预先安装在服务器中的终端操作系统。

1.3PXE可以引导多种操作系统,如: windows2008/ win7/win8/linux系列系统等。PXE网络安装的引导程序为pxelinux.0,由软件包syslinux提供。

2.xinetd
支持对tcp、udp、RPC服务(但是当前对RPC的支持不够稳定)
基于时间段的访问控制
功能完备的log功能,即可以记录连接成功也可以记录连接失败的行为
能有效的防止DoS攻击(Denial of Services)
能限制同时运行的同一类型的服务器数目
能限制启动的所有服务器数目
能限制log文件大小
将某个服务绑定在特定的系统接口上,从而能实现只允许私有网络访问某项服务
能实现作为其他系统的代理。如果和ip伪装结合可以实现对内部私有网络的访问

3.1kickstart['kɪkstɑːt] 定义了Linux安装过程的配置文件,比如要在系统中使用的时区、如何对驱动器进行分区、或者应该安装哪些软件包。

3.2有了这个文件可以解放双手,让Linux安装过程按照我们预先定义的要求进行自动化安装,同时部署大量主机时十分有用。

3.3一般centos系统安装后,会在root目录下生成一个名为anaconda-ks.cfg的kickstart配置文件。

实现PXE需要的硬件和软件

硬件需求:

1.客户端需要一块支持PXE引导模块的网卡

2.客户端的主板BIOS需要支持网卡启动

软件需求:

1.PXE引导服务

2.DHCP地址分配服务

3.安装TFTP简单文件服务

4.安装FTP服务器

服务作用说明

1.PXE引导服务:可以给客户机提供系统启动指令,引导模块和内核模块
2.DHCP服务:客户端没有操作系统,所以无法手动配置IP地址,唯一的方式就是通过DHCP获取IP地址
3.TFTP服务:服务器给客户端传输引导模块和内核文件
4.FTP服务:服务器给客户端传输操作系统的安装文件

部署PXE远程装机

1安装ftp服务,准备yum源

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

[root@localhost ~]# systemctl restart network

[root@localhost ~]# mount /dev/cdrom /media/

[root@localhost ~]# rm -rf /etc/yum.repos.d/*

[root@localhost ~]# vim /etc/yum.repos.d/yum.repo

添加:

[yum]

name=yum

baseurl=file:///media                   //挂载镜像目录

gpgcheck=0                              //是否检查GPG密钥

enabled=1                               //是否开启yum源

[root@localhost ~]# yum -y install vsftpd

[root@localhost ~]# mkdir /var/ftp/centos7

[root@localhost ~]# cp -rf  /media/* /var/ftp/centos7/

//复制media目录下的所有东西到centos7目录下

包含Packages和repodata目录,东西多,耐心等

2安装tftp-server和xinetd软件包(tftp服务依赖于xinetd超级服务)

[root@localhost ~]# yum -y install tftp-server tftp xinetd

3修改tftp配置文件

[root@localhost ~]# vim /etc/xinetd.d/tftp

//把disable=yes改为disable=no

4启动tftp服务

systemctl restart xinetd

systemctl restart tftp

5配置DHCP服务器:(pxe远程部署系统是没有IP地址的,所以需要DHCP分配)

[root@localhost ~]# yum -y install dhcp

[root@localhost ~]# cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

//将DHCP辅助手册复制到主配置文件

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf

在最后添加:

subnet 192.168.1.0 netmask 255.255.255.0 { //分配网段及掩码

range 192.168.1.100 192.168.1.188; //分配地址池

next-server 192.168.1.1; //指定TFTP的服务器地址

filename "pxelinux.0"; //指定PXE引导启动程序的文件名

}

[root@localhost ~]# systemctl restart dhcpd

6准备内核文件和初始化镜像文件

[root@localhost ~]# cd /media/images/pxeboot/

//存放内核文件和初始化镜像文件的目录

[root@localhost pxeboot]# ls

initrd.img  TRANS.TBL  vmlinuz

//vmlinuz:linux系统内核文件     initrd.img:简化系统镜像

[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot

//将文件复制到tftp启动目录下

7准备支持PXE软件包

[root@localhost ~]# yum -y install syslinux

[root@localhost ~]# cd /usr/share/syslinux/

[root@localhost syslinux]# cp pxelinux.0 /var/lib/tftpboot

//将PXE网络安装引导程序复制到tftp启动目录

PXE网络安装的引导程序为pxelinux.0,由软件包syslinux提供

8准备启动菜单

[root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg

//创建启动菜单目录

[root@localhost ~]# cp /media/isolinux/boot.msg /var/lib/tftpboot

//将启动镜像放到tftp启动目录

9修改启动菜单

[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default

添加:

default auto //自动选择

prompt 1 //是否等待用户控制 0为不等

timeout 600 //等待时间

display boot.msg

label auto //常规安装

kernel vmlinuz //内核为vmlinuz

append initrd=initrd.img method=ftp://192.168.1.1/centos7

//append initrd=加载镜像  initrd.img类似Windows pe系统 method=FTP镜像路径

@ 有三种安装方式 这篇文章选择的是常规安装 三种安装方式 格式如下

label auto        //常规安装
        kernel vmlinuz
        append initrd=initrd.img method=ftp://192.168.1.1/centos

label linux text    //文本模式安装
        kernel vmlinuz
        append text initrd=initrd.img method=ftp://192.168.1.1/centos

label linux rescue    //系统修复
        kernel vmlinuz
        append rescue initrd=initrd.img method=ftp://192.168.1.1/centos

10 重启所有服务

[root@localhost ~]# systemctl restart tftp

[root@localhost ~]# systemctl restart dhcpd

[root@localhost ~]# systemctl restart vsftpd

[root@localhost ~]# systemctl stop firewalld

[root@localhost ~]# setenforce 0

11 客户端测试

新建虚拟机验证 ,调节同一虚拟网卡实现dhcp广播 客户机安装时候先调节网络获取

F10保存退出

boot:auto             //输入auto或者直接回车进入常规安装

boot:linux text       //进入文本安装模式

boot:linux rescue    //进入救援模式

完成

无人值守安装

需求:通过kick start无人值守自动安装(需要建立在pxe远程安装上)

通过 PXE 技术远程安装期间仍需要手动选 择语言、键盘类型、指定安装源等一系列交互操作,很麻烦,所以使用kick start无人值守自动安装

1、准备安装应答文件
[root@localhost ~]# yum -y install system-config-kickstart
[root@localhost ~]# system-config-kickstart       //输入此命令直接打开kickstart配置程序

[root@localhost ~]# system-config-kickstart

//输入此命令直接打开kickstart配置程序

kickstart-由于下载软件包信息失败,软件包选择被禁止解决方法:

修改yum源配置文件,将yum源配置文件中的id部分修改位development后,卸载system-config-kickstart并重新安装该命令,即可出现软件包信息,

[root@node1 kk]# vim /etc/yum.repos.d/yum.repo

[yum]    --此处修改为[development]
name=my-centos7
baseurl=file:///mnt
enabled=1
gpgcheck=0

#只需将文件内[centos]修改位[development]即可,如下
[root@node1 kk]# cat /etc/yum.repos.d/yum.repo 
[development]
name=my-centos7
baseurl=file:///mnt
enabled=1
gpgcheck=0

修改文件后,卸载命令system-config-kickstart并重新安装:

# 卸载命令
[root@node1 kk]# yum remove -y system-config-kickstart

#重建yum缓存
[root@node1 kk]# yum clean all
[root@node1 kk]# yum makecache

#重新安装命令
[root@node1 kk]# yum install -y system-config-kickstart

使用system-config-kickstart重新创建ks.cfg文件

第二种方法

首先配置好pxe后,用yum进行安装kickstart

[root@localhost ~]# yum -y install system-config-kickstart

配置安装应答参数

[root@localhost ~]# system-config-kickstart

//输入此命令直接打开kickstart配置程序

也可以使用图形化打开

点击左上角的应用程序,选择系统工具,只要安装上了kickstart就可以看到

打开之后基本配置这里

修改默认语言为中文简体,键盘默认使用U.S.English,时区更改为Asia/shanghai

(需要耐心往下翻找到shanghai)然后加个r oot密码并勾选上安装后重启

然后打开安装方法

点击执行全新安装,选择ftp,写入我们的ftp服务器IP地址以及ftp目录

(部署PXE的时候就已经配置完成)

点击分区信息,全部保持默认直接点击最下边的添加

打开之后是这样的,需要自己手动指定挂载点、文件系统类型以及容量

分别添加/boot挂载点

Swap文件系统类型,容量2048MB

最后挂载点选择/,容量勾选使用磁盘上全部未用空间

然后点开网络配置添加网卡,点击添加网络设备,名字为ens33,默认DHCP网络类型

然后点击防火墙配置,将SELinux禁用掉

最后点击左上角文件,有个保存

保存文件名称默认就行,记着就行,然后点击文件系统,找到/var再找到/ftp

保存到/var/ftp下,然后点击保存关闭kickstart配置程序即可

基本配置信息完成之后开始添加软件包(添加到我们刚才保存的文件/var/ftp/ks.cfg)

在添加之前我们需要了解一个配置文件,是安装操作系统时自带的

[root@localhost ~]# vim /root/anaconda-ks.cfg

这个文件总共分为三部分:

第一部分为基本配置信息

第二部分为磁盘分区信息

第三部分为软件包列表

而我们需要的就是第三部分(从%packages开始到%end结束)

%packages

@^gnome-desktop-environment

@base

@core

@desktop-debugging

@dial-up

@directory-client

@fonts

@gnome-desktop

@guest-agents

@guest-desktop-agents

@input-methods

@internet-browser

@java-platform

@multimedia

@network-file-system-client

@networkmanager-submodules

@print-client

@x11

chrony

kexec-tools

%end

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

%end

%anaconda

pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty

pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok

pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty

%end

将软件包复制下来之后放入我们的配置文件

[root@localhost ~]# vim /var/ftp/ks.cfg

//将复制的软件包列表添加至文件最后然后保存退出

然后修改我们的启动菜单(ftp源的启动菜单)

[root@localhost ~]# vim /var/lib/tftpboot/pxelinux.cfg/default

修改:

Prompt 1改为prompt 0 //等待用户操作,1为开启0为关闭

将append initrd=initrd.img method=ftp://192.168.1.1/centos7

修改为append initrd=initrd.img ks=ftp://192.168.1.1/ks.cfg

最后重启ftp和tftp服务

[root@localhost ~]# systemctl restart vsftpd

[root@localhost ~]# systemctl restart tftp

客户机验证:(注意:还是2G内存以上,bios启动项把网络启动设置为第一位)

1)准备新的虚拟机

2)桥接网卡

3)启动虚拟机

4)自动完成安装

耐心等待即可

部署 PXE 远程安装与无人值守安装服务相关推荐

  1. PXE网络安装已经无人值守安装教程

    PXE网络安装与Kickstart(无人值守)安装教程 PXE是由Intel公司开发的网络引导技术,工作在Client/Server模式中,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或 ...

  2. 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 ...

  3. ISA2006标准版安装及无人值守安装

    ISA2006 ( Internet Security and Accelereation )是企业部署软件防火墙最好的选择.它支持虚拟网络×××,SSL安全连接和证书验证,ftp,http等多种高级 ...

  4. 无人值守安装linux,无人值守安装Linux(PXE)

    PXE 预启动环境(dhcp.vsftpd.tftp) 前提条件 1)网卡支持PXE协议 2)部署服务端(PXE:pxelinux.0).TFTP(用于传输客户机安装系统所必需文件).vsftpd(用 ...

  5. 如何不费吹灰之力的装机?部署PXE实现Kickstart无人值守安装 — 装机界的最强王者

    部署PXE实现Kickstart无人值守安装 一.部署PXE远程安装服务 1.1 PEX服务相关介绍 1.2 PXE服务的工作原理 1.3 搭建PXE远程安装服务器大概步骤 1.4 实验:使用VMwa ...

  6. Linux 自动化部署安装 《PXE网络无人值守安装 》

    网络无人值守安装 网络无人值守安装 网络无人值守安装的作用 网络无人值守安装的流程简介 DHCP的部署 dhcp简介 配置 DHCP 配置 TFTP 部署Kickstart 文件 测试: 网络无人值守 ...

  7. PXE高效批量安装和Kickstart无人值守安装——真正完成批量自动安装

    PXE高效批量安装和Kickstart无人值守安装--真正完成批量自动安装 一.PXE概述 二.PXE的优点 三.搭建PXE的前提 四.部署PXE远程安装服务 1.安装TFTP服务 2.修改TFTP服 ...

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

    文章目录 无人值守系统 部署安装 创建PXE服务器虚拟机并设置IP地址 配置本地yum源 安装并配置DHCP服务 安装并配置TFTP服务 安装SYSLinux 复制引导文件 安装并配置vsftpd服务 ...

  9. PXE实现无人值守安装

    部署PXE实现Kickstart无人值守安装 一.部署PXE远程安装服务 1.1 PEX服务相关介绍 1.2 PXE服务的工作原理 1.3 搭建PXE远程安装服务器大概步骤 1.4 实验:使用VMwa ...

最新文章

  1. 暑期集训1:C++STL 例1:UVA-10815
  2. 五态模型-引起进程状态转换的具体原因
  3. Teamviewer 远程ssh命令行更改密码启动
  4. MySQL之最基本命令
  5. laravel的validator验证
  6. css span 右端对齐_CSS标准文档流
  7. 图解Kafka中的基本概念
  8. Git学习总结(11)——Git撤销操作详解
  9. IOS工作笔记002---windows给VmWare虚拟机OS系统安装VMTools
  10. [转]程序员能力矩阵
  11. Linux进程管理之SMP负载平衡
  12. Julia: 引用与copy: 关于数组、自定义类型与初始化
  13. MyCat2测试实战 -- 王者归来的故事
  14. access select max_从峰米4k激光家庭影院Max开始,爱上看电影
  15. edge浏览器如何设置始终在新标签页中打开?
  16. k8s入坑之报错(9)k8s node节点加入到集群时卡住 “[preflight] Running pre-flight checks”...
  17. 【实用代码】选项卡切换——带标题底纹样式
  18. 孤尽T31项目Day3
  19. 视觉SLAM学习笔记
  20. 【NeurIPS2020视频解读】图机器学习热门方向及应用

热门文章

  1. 极客日报第 31 期:编写贩卖《和平精英》游戏外挂,5人被判刑;苹果推出轻App码
  2. 雇佣兵战斗力c语言原理,暗黑2单机弓箭亚马逊应该怎么选技能和雇佣兵
  3. 微信小程序——关于时间
  4. OpenFOAM 雾化模型头文件信息摘录
  5. 【高中数学教资】教案设计通用模板
  6. Android 系统时间自动更新机制
  7. tableau server在centos7.6上安装记录
  8. ftp上传工具 绿色,4个好用的绿色 ftp上传工具
  9. 用户体验五要素_【产品经理】如何理解“用户体验要素”5层模型?
  10. CPP】【const 指针与引用】实验3实验内容5