Dnsmasq 配置PXE批量安装系统
以下测试都是基于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批量安装系统的更多相关文章
- pxe+kickstart自动化批量安装系统详解-技术流ken
前言 pxe+kickstart是一款可以实现自动化批量安装系统的服务,比较经典,下面将详细介绍此服务的安装和使用. 系统环境准备 系统版本:CentOS release 6.7 (Final) 内网 ...
- 基于CentOS7系统部署cobbler批量安装系统(week3_day5_part1)-技术流ken
前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...
- 末学者笔记--Centos7系统部署cobbler批量安装系统
[前言]: cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cob ...
- cobbler一键批量安装系统
cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 一.系统环境准备及其下载cobbler 1 ...
- cobbler批量安装系统使用详解-技术流ken
前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...
- 基于Centos7系统部署cobbler批量安装系统
前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本 系统环境的准备及下载cobbler 一 ...
- cobbler批量安装系统
cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 1.系统环境准备及其下载cobbler 1 ...
- DHCP服务+PXE自动安装系统
DHCP服务+PXE自动安装系统 DHCP安装 安装DHCP服务器 yum install dhcp -y 安装完dhcp默认无法启动,需要编辑配置文件设置分配地址范围等相关信息,服务器自身IP地址要 ...
- 【Linux】使用 PXE+Kickstart 无人值守批量安装系统
一.PXE背景知识 通过 PXE+DHCP+TFTP+VSftpd+Kickstart 服务程序搭建出无人值守安装系统,从而批量部署客户机系统. PXE(Preboot eXecute Environ ...
随机推荐
- 页面滚动图片等元素动态加载插件jquery.scrollLoading.js
如果一个网页很长,那么该页面的加载时间也会相应的较长.而这里给大家介绍的这个jQuery插件scrollLoading的作用则是,对页面元素进行动态加载,通俗的说就是滚到哪就加载到哪,屏幕以下看不见的 ...
- VS Code直接编辑下一行
ctrl + enter 可以直接跳转到下一行进行编辑,本行后面的字符不受影响. 这在书写html脚本时非常有用.
- 面向对象:静态属性,静态方法,组合,继承,衍生,继承之mro线性顺序列表,面向对象综合实例
1.静态属性(附有装饰器) class Room: def __init__(self,name,owner,width,length,height): self.name=name self.own ...
- Nginx的编译安装及选项
编译安装Nginx1.安装常见的工具和库(GCC.PCRE.zlib.OpenSSL) Nginx是一个由C语言编写的,所以需要一个编译工具如GNU的GCC[root@www ~]# yum inst ...
- mybatis的缓存简说
一级缓存(不需配置,默认为一级缓存): 1)相当于 sqlsession 级别的缓存 2)当 session 关闭(close)或者提交(commit)后,缓存数据清空 3)当发生insert.upd ...
- css定义好看的垂直滚动条
滚动条的css样式主要有三部分组成: 1.::-webkit-scrollbar 定义了滚动条整体的样式: 2.::-webkit-scrollbar-thumb 滑块部分: 3. ...
- TCP的概念
中间节点.虚电路.失败重传 UDP:不可靠传输,并不承诺提供可靠的连接通道,所传送包完全可能失序.重复甚至丢失. TCP:端口号.三次握手建立可靠连接(第一次确认A端发送和B端接收能力,第二次确认A端 ...
- Android中的透明度
最近在实践中,在一个设置了背景图的LinearLayout中放一个透明度15%,背景色为#ffffff的容器,里面再放白色#ffffff的文本,开始容器用background="#fffff ...
- mongoexport 导出需要授权数据库中的集合 报错 Authentication failed.
当 mongo数据库启动服务时,使用了 认证机制,在使用mongoexport导出集合文件时,需要用户权限认证. 开启数据库认证服务: mongod --auth 导出mongo中集合文件: mong ...
- 解决pre-commit hook failed (add --no-verify to bypass)的问题
报错图 问题原因: pre-commit钩子惹的祸 当你在终端输入git commit -m"XXX",提交代码的时候, pre-commit(客户端)钩子,它会在Git键入提交信 ...