以下测试都是基于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. 页面滚动图片等元素动态加载插件jquery.scrollLoading.js

    如果一个网页很长,那么该页面的加载时间也会相应的较长.而这里给大家介绍的这个jQuery插件scrollLoading的作用则是,对页面元素进行动态加载,通俗的说就是滚到哪就加载到哪,屏幕以下看不见的 ...

  2. VS Code直接编辑下一行

    ctrl + enter 可以直接跳转到下一行进行编辑,本行后面的字符不受影响. 这在书写html脚本时非常有用.

  3. 面向对象:静态属性,静态方法,组合,继承,衍生,继承之mro线性顺序列表,面向对象综合实例

    1.静态属性(附有装饰器) class Room: def __init__(self,name,owner,width,length,height): self.name=name self.own ...

  4. Nginx的编译安装及选项

    编译安装Nginx1.安装常见的工具和库(GCC.PCRE.zlib.OpenSSL) Nginx是一个由C语言编写的,所以需要一个编译工具如GNU的GCC[root@www ~]# yum inst ...

  5. mybatis的缓存简说

    一级缓存(不需配置,默认为一级缓存): 1)相当于 sqlsession 级别的缓存 2)当 session 关闭(close)或者提交(commit)后,缓存数据清空 3)当发生insert.upd ...

  6. css定义好看的垂直滚动条

    滚动条的css样式主要有三部分组成: 1.::-webkit-scrollbar   定义了滚动条整体的样式:    2.::-webkit-scrollbar-thumb  滑块部分:     3. ...

  7. TCP的概念

    中间节点.虚电路.失败重传 UDP:不可靠传输,并不承诺提供可靠的连接通道,所传送包完全可能失序.重复甚至丢失. TCP:端口号.三次握手建立可靠连接(第一次确认A端发送和B端接收能力,第二次确认A端 ...

  8. Android中的透明度

    最近在实践中,在一个设置了背景图的LinearLayout中放一个透明度15%,背景色为#ffffff的容器,里面再放白色#ffffff的文本,开始容器用background="#fffff ...

  9. mongoexport 导出需要授权数据库中的集合 报错 Authentication failed.

    当 mongo数据库启动服务时,使用了 认证机制,在使用mongoexport导出集合文件时,需要用户权限认证. 开启数据库认证服务: mongod --auth 导出mongo中集合文件: mong ...

  10. 解决pre-commit hook failed (add --no-verify to bypass)的问题

    报错图 问题原因: pre-commit钩子惹的祸 当你在终端输入git commit -m"XXX",提交代码的时候, pre-commit(客户端)钩子,它会在Git键入提交信 ...