以下测试都是基于centos 7下的环境

需要安装的软件为

nginx 用来下载ks.cfg和系统镜像文件用的,也可以用ftp服务器来代替

dnsmasq 提供dhcp服务和tftp服务,也可以单独去安装

syslinux 提供pxe的启动文件pxelinux.0

执行以下命令安装

yum install dnsmasq syslinux  -y

然后创建tftp的目录

mkdir /var/lib/tftp

拷贝pxe的启动文件pxelinux.0

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

挂载centos系统镜像,Pxe安装系统需要原系统镜像中的vmlinuz(引导程序) initrd.img(RAM的Linux) 两个支持网络安装的文件

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

我们挂载镜像在 /var/ftp/pub/ 这个目录下面,启动需要的文件在镜像的images目录下面

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

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

准备默认的菜单配置文件

mkdir /var/lib/tftp/pxelinux.cfg/

vim /var/lib/tftp/pxelinux.cfg/default

内容如下

default linux
prompt 1
timeout 60
display boot.msg
label linux
kernel vmlinuz
append initrd=initrd.img text ks=http://172.17.3.10/ks.cfg ###指定ks.cfg文件下载路径###

后续需要生成ks.cfg

我们还需要配置下dnsmasq

vim /etc/dnsmasq.conf

配置如下

listen-address=172.17.3.10,127.0.0.1 ##指定监听IP
domain=house.com ##域名
dhcp-range=172.17.3.220,172.17.3.230,1h ##IP地址分配范围##
dhcp-option=,172.17.3.254 ##网关
dhcp-boot=pxelinux.0 ##配置启动接口
enable-tftp ##打开tftp功能##
tftp-root=/var/lib/tftp ##指定tftp目录##
conf-dir=/etc/dnsmasq.d,.rpmnew,.rpmsave,.rpmorig

以上配置可参考如下图片,图片来自网络

最后我们把ks.cfg也就是kickstart文件放到nginx的目录下就可以了

最后启动dnsmasq就可以了。

其实dnsmasq也可以用tftp和dhcp这2个服务来代替

使用tftp和dhcp的方法如下

安装tftp和dhcp

yum install tftp-server  dhcp -y

配置tftp-server

vim /etc/xinetd.d/tftp

service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
per_source =
cps =
flags = IPv4
}

配置DHCP

vim /etc/dhcp/dhcpd.conf

ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 172.17.3.0 netmask 255.255.255.0 {
option routers 172.17.3.254;
option subnet-mask 255.255.255.0;
option domain-name-servers 172.17.3.254;
option time-offset -; # Eastern Standard Time
range dynamic-bootp 172.17.3.80 172.17.3.88;
default-lease-time ;
max-lease-time ;
next-server 172.17.3.10;
filename "pxelinux.0";
}

其余步骤不变,到这里完结。

Dnsmasq 配置PXE批量安装系统的更多相关文章

  1. pxe+kickstart自动化批量安装系统详解-技术流ken

    前言 pxe+kickstart是一款可以实现自动化批量安装系统的服务,比较经典,下面将详细介绍此服务的安装和使用. 系统环境准备 系统版本:CentOS release 6.7 (Final) 内网 ...

  2. 基于CentOS7系统部署cobbler批量安装系统(week3_day5_part1)-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

  3. 末学者笔记--Centos7系统部署cobbler批量安装系统

      [前言]: cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cob ...

  4. cobbler一键批量安装系统

    cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 一.系统环境准备及其下载cobbler 1 ...

  5. cobbler批量安装系统使用详解-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

  6. 基于Centos7系统部署cobbler批量安装系统

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本 系统环境的准备及下载cobbler 一 ...

  7. cobbler批量安装系统

    cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 1.系统环境准备及其下载cobbler 1 ...

  8. DHCP服务+PXE自动安装系统

    DHCP服务+PXE自动安装系统 DHCP安装 安装DHCP服务器 yum install dhcp -y 安装完dhcp默认无法启动,需要编辑配置文件设置分配地址范围等相关信息,服务器自身IP地址要 ...

  9. 【Linux】使用 PXE+Kickstart 无人值守批量安装系统

    一.PXE背景知识 通过 PXE+DHCP+TFTP+VSftpd+Kickstart 服务程序搭建出无人值守安装系统,从而批量部署客户机系统. PXE(Preboot eXecute Environ ...

随机推荐

  1. rcc时钟

    1.时钟源 在 STM32 中,一共有 5 个时钟源,分别是 HSI . HSE . LSI . LSE . PLL . ①HSI 是高速内部时钟, RC 振荡器,频率为 8MHz : ②HSE 是高 ...

  2. 树莓派3代B+安装mateubuntu16.04

    直接安装会卡在开机后的彩虹界面 所以先直接安装:2019-04-08-raspbian-stretch-lite.img 安装完毕后,直接在Linux环境下读取 /boot /系统分区(系统分区在wi ...

  3. 第一次使用mybatis

    程序使用mybatis的步骤: 1.配置mybatis 涉及到的配置文件有conf.xml和与实体类对应的映射配置文件 (1) conf.xml:配置数据库信息和需要加载的映射文件 <confi ...

  4. Python中的@符号

    1.基本含义 @符号用做函数的修饰符,可以在模块或者类的定义层内对函数进行修饰,出现在函数定义的前一行,不允许和函数定义在同一行. 一个修饰符就是一个函数,它将被修饰的函数作为参数,并返回修饰后的同名 ...

  5. JavaScript栈和队列

    栈和队列:JavaScrip没有专门的栈和队列,是[数组]模拟的 栈:一端封闭另一端打开 先进入的在最下面何时使用:永远使用最后进入数组的元素的时候,栈结构 队列:是一种遵从先进先出(FIFO)原则的 ...

  6. List Leaves

    Given a tree, you are supposed to list all the leaves in the order of top down, and left to right. I ...

  7. 搭建 Jest+ Enzyme 测试环境

    1.为什么要使用单元测试工具? 因为代码之间的相互调用关系,又希望测试过程单元相互独立,又能正常运行,这就需要我们对被测函数的依赖函数和环境进行mock,在测试数据输入.测试执行和测试结果检查方面存在 ...

  8. DATA 步数据纵向串接

    DATA A;A='1';RUN; %MACRO M_A();DATA B;SET %DO I=1 %TO 10;A%END;;RUN;%MEND; %M_A(); PROC PRINT DATA=B ...

  9. EXT.net 图标靠右排列

    toolbar1.Items.Add(Button_1); toolbar1.Items.Add(Button_2); toolbar1.Items.Add(Button_3); toolbar1.I ...

  10. 数据帧、MTU、MSS、IP分片

    1.以太网帧 在以太网链路上的数据包称作以太帧,在802.3标准里,规定了一个以太帧的数据部分(Payload)的最大长度是1500个字节(MTU),再加上14字节链路头和4字节的FCS,所以以太网帧 ...