PXE是一种电脑无盘(即没有硬盘)技术。 预启动执行环境(PXE)指的是那些使得IBM兼容计算机(经常是运行Windows系统)不需要硬盘或是启动软盘就能启动的方法。

通俗点讲就是配置好PXE以后可以同时多台机器安装系统;

1.先配置网卡

(1)ip add 查看网卡配置信息

vi /etc/sysconfig/network-scripts/网口

(2)改成BOOTPROTO=static

ONBOOT=yes

(3)添加上 ip 子网掩码 网关 DNS

在另外一个网口配置上 ip 掩码就行

2.安装ftp服务

yum install -y vsftpd

3.提供操作系统镜像文件

mount /dev/cdrom /var/ftp/pub/

4.启动ftp服务

systemctl start vsftpd

systemctl enable vfstpd

5.安装dnsmasq软件包

yum install dnsmasq

6.配置dnsmasq

vi /etc/dnsmasq.conf 主要去掉以下注释

bogus-priv

filterwin2k

interface=eth0

dhcp-range=192.168.0.50,192.168.0.100,12h(这里是你配置内网IP的网段)

dhcp-boot=pxelinux.0

enable-tftp

tftp-root=/var/tftp

dhcp-authoritative

  1. 创建tftp根目录

mkdir /var/tftp

  1. 启动dnsmasq

(1)systemctl start dnsmasq

systemctl start dnsmasq

(2)查看 dnsmasq是否启动

systemctl status dnsmasq

  1. 从iso中拷贝内核镜像和文件系统镜像

(1)拷贝文件系统镜像

cp /var/ftp/pub/images/pxeboot/initrd.img /var/tftp

(2)拷贝内核镜像文件

cp /var/ftp/pub/images/pxeboot/vmlinuz /var/tftp

  1. 生成PXE启动文件pxelinux.0

(1)安装pxelinux.0 所需要的包

yum install -y syslinux

(2)查询文件所在目录

rpm -ql syslinux | grep pxelinux.0

(3)拷贝pxelinux.0文件到tftp根目录

cp /usr/share/syslinux/pxelinux.0 /var/tftp/

  1. 准备默认的菜单配置文件

(1)创建pxelinux.cfg目录,固定目录名称

mkdir /var/tftp/pxelinux.cfg/

(2)default 文件,必须为这个名称

vi /var/tftp/pxelinux.cfg/default

(3)编辑如下

default linux

prompt 1

timeout 60

display boot.msg

label linux

kernel vmlinuz

append initrd=initrd.img text ks=ftp://192.168.(内网IP)/ks.cfg

  1. 拷贝 ks.cfg文件到FTP目录

cp /root/anaconda-ks.cfg /var/ftp/ks.cfg

  1. 把var里的ks.cfg文件提权

chmod +r /var/ftp/ks.cfg

  1. 在ks.cfg里修改部分信息

vi /var/ftp/ks.cfg

修改一下信息:#version=DEVEL

# System authorization information

auth --enableshadow --passalgo=sha512

# Use CDROM installation media

install

url --url=ftp://192.168.0.3/pub/ # 需要指定安装方式通���ftp来下载安装操作系统

# Use graphical install

graphical

# Run the Setup Agent on first boot

firstboot --enable

ignoredisk --only-use=sda

# Keyboard layouts

keyboard --vckeymap=us --xlayouts='us'

# System language

lang en_US.UTF-8

# Network information

network --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate

network --hostname=localhost.localdomain

# Root password

rootpw --iscrypted $6$LK7yftVlSa2zcGia$4loHYYWZUosdWvZA7Qzf.0lhmrcD5n26BK1xWm7QCNBdbBSjC7MK7yAYRvmIXGI8wu.t96jo6m8RRmNyjsKY60

# System services

services --disabled="chronyd"

reboot

# System timezone

timezone Asia/Shanghai --isUtc --nontp

# System bootloader configuration

bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda

autopart --type=lvm

# Partition clearing information

clearpart --all --initlabel --drives=sda

...............................

  1. 客户端验证pxe启动

备注(需要关闭防火墙命令:“systemctl stop firewalld.service”并且永久关闭防火墙:“systemctl disable firewalld.service”)

验证成果,完成。

使用centos7安装PXE教程的更多相关文章

  1. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  2. centos7安装codeblocks教程

    author:lidabo 装了好多次系统,每次装的时候都有要在网上各种查,太麻烦了.所以决定记录一下,以后用到的时候会方便一些.当然,本文来源于网络,取百家之长,最重要的是本人已验证过,说明对本系统 ...

  3. centos7安装ambari教程

    ambari版本 :2.4.2 (不过各版本安装过程没啥差异) 目录: 为什么要用Ambari 概念概述 版本信息 原理简介 安装 创建集群 创建集群 手动修改配置 NameNode HA 安装Sma ...

  4. Centos7安装mysql8教程

    网上的教程很多,我也参考了很多,以下是我实践的步骤,真实有效. 1.配置Mysql 8.0安装源: sudo rpm -Uvh https://dev.mysql.com/get/mysql80-co ...

  5. CentOS7安装jdk教程

    引言Oracle JDK和OpenJDK的简单介绍Oracle JDK是基于Java标准版规范实现的,以二进制产品的形式发布.它支持多种操作系统,如Windows,Linux,Solaris,MacO ...

  6. CentOS7安装MinIO教程,并在C#客户端WPF中实现监控上传进度

    MinIO的详细介绍可以参考官网(https://min.io/product/overview). 简单来说它是一个实现了AWS S3标准的100%开源的,可商用的( Apache V2 licen ...

  7. Centos7安装Oracle12c教程

    12c数据库 创建oracle的系统用户和用户组 [root@localhost /]# groupadd oinstall [root@localhost /]# groupadd dba [roo ...

  8. Centos7 安装mysql教程

    参考原文:http://www.centoscn.com/mysql/2016/0315/6844.html 环境 CentOS 7.1 (64-bit system) MySQL 5.6.24 Ce ...

  9. centos7 安装步骤

    这里选择64位 32位没有找到网卡... 注:这里是网络类型分配,网络类型分配分为三种,Bridge,NAT和Host-Only,大概区别是 1 BRIDGE  桥接:相当于主机和虚拟机连接到同一个h ...

随机推荐

  1. 设计模式C++描述----19.命令(Command)模式

    一. 举例说明 我们知道,在多线程程序中,多个用户都给系统发 Read 和 Write 命令.这里有几点需要说明: 1. 首先明确一点,所有的这些 Read 和 Write 命令都是调用一个库函数. ...

  2. fiddler的过滤

    1.User Fiters启用 2.Action Action:Run Filterset now是否运行,Load Filterset加载,Save Filterset保存: 3.Hosts过滤 Z ...

  3. 基于SkyWalking的分布式跟踪系统 - 异常告警

    通过前面2篇文章我们搭建了SW的基础环境,监控了微服务,能了解所有服务的运行情况.但是当出现服务响应慢,接口耗时严重时我们需要立即定位到问题,这就需要我们今天的主角--监控告警,同时此篇也是SW系列的 ...

  4. python写购物车小程序

    #!/usr/bin/env python3 # -*- coding:utf-8 -*- # @Author: Skyell Wang # @Time : 2018/5/22 15:50 # 基础要 ...

  5. nginx篇高级之优化整理

    优化思路: 一.修改连接数和工作线程让其支持更多的并发量. worker_processes 2;                    //与CPU核心数量一致 worker_connections ...

  6. Spring Cloud gateway 五 Sentinel整合

    微服务当前这么火爆的程度,如果不能学会一种微服务框架技术.怎么能升职加薪,增加简历的筹码?spring cloud 和 Dubbo 需要单独学习.说没有时间?没有精力?要学俩个框架?而Spring C ...

  7. Vue计算属性缓存(computed) vs 方法

    Vue计算属性缓存(computed) vs 方法 实例 <div id="example"> <p>Original message: "{{ ...

  8. 七月月赛T2

    题目描述 “X龙珠”是一款益智小游戏.游戏中有 n(2∣n) 个编号互不相同龙珠按照给定的顺序排成一个队列,每个龙珠上面都有一个编号.每次操作时,选择并取出龙珠队列中相邻的两个龙珠,放到目标队列的末尾 ...

  9. 46 Linden Street ACT I

    Execute me. My name is Richard Stewart. I’m a photographer. May I take a picture of you and your lit ...

  10. 每天3分钟操作系统修炼秘籍(14):IO操作和DMA、RDMA

    点我查看秘籍连载 I/O操作和DMA.RDMA 用户进程想要执行IO操作时(例如想要读磁盘数据.向磁盘写数据.读键盘的输入等等),由于用户进程工作在用户模式下,它没有执行这些操作的权限,只能通过发起对 ...