一、实验环境:
OS:Redhat6.4
软件:DHCP服务、TFTP服务、NFS服务
硬件:Dell R630服务器两台
物理连接图:

em1 em1

二、工作原理:
服务器通过PXE网卡启动,从dhcp服务器获取IP,通过tftp下载pxelinux.0文件找到pxelinux.cfg里的配置文件,按配置文件找着vmlinuz引导OS进入安装界面,之后选择NFS方式安装系统。
PXE:需要网卡支持,并且服务器BIOS需要修改网卡为支持PXE启动。

三、服务搭建
1、服务端安装Redhat6.4操作系统
2、服务器端DHCP服务安装、配置
#rpm -ivh dhcp-4.1.1-34.P1.el6.x86_64.rpm 安装dhcp
#vim /etc/dhcp/dhcpd.conf 修改配置文件
ddns-update-style none;
option routers 192.168.0.1; ##网络dhcp服务路由、局域网中可以直接指向服务器ip
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.0.1;##dhcp服务器域名(本机用ip表示)
default-lease-time 21600;
max-lease-time 43200;
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.10 192.168.0.100;##dhcp地址池范围定义(192.168.0.0/24 xxx.10-xxx.100 )
# TFTP Server
filename "pxelinux.0";##TFTP服务传送到内存中的文件
next-server 192.168.0.1; ##dhcp服务器ip地址
}
#service dhcpd start 启动服务
3、服务端TFPT安装、配置
#rpm -ivh /install/Packages/tftp-server-0.49-7.el6.x86_64.rpm 安装tftp服务
#vim /etc/xinetd.d/tftp 修改tftp配置文件
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot ##tftp服务目录
disable = no ##no表示开启 yes表示关闭
per_source = 11
cps = 100 2
flags = IPv4
}
#mkdir -p /var/lib/tftpboot 根据tfpt配置文件 server_args对应的目录创建
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 将启动文件拷贝到tftp目录
# cp /install/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/ 将内核文件拷贝到tftp目录
#cd /var/lib/tftpboot;mkdir –p pxelinux.cfg 加载pxelinux.0文件后 客户端会搜索服务端pxelinux.cfg目录
#vim default 在新建的pxelinux.cfg目录下创建default文件,来告知内存加载tftp目录中安装文件

default linux
#prompt 1
timeout 600

display boot.msg

menu background splash.jpg
menu title Welcome to Red Hat Enterprise Linux 6.4!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000

label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append ks=nfs:192.168.0.1:/install/ks.cfg ksdevice=em1 initrd=initrd.img

#service xinetd start 启动tftp服务

4、NFS服务安装、配置
# rpm -ivh nfs-utils-1.2.3-36.el6.x86_64.rpm
# rpm -ivh nfs-utils-lib-1.1.5-6.el6.x86_64.rpm
#vim /etc/exports 配置共享目录
/install *(ro,sync) ## 将/install 目录下所有内容共享出去
#service nfs start 启动nfs服务
#exportfs 启用共享 正常情况显示 /install <word>
#showmount -e 查看当前共享的文件 正常情况显示 /install *
5、创建ks.cfg无人值守配置文件
有两种方式获取ks.cfg文件,1、可以通过终端运行:system-config-kickstart指令来启动kickstart的图形化界面配置程序来生成一个安装配置文件,这种方式需要自己在ks.cfg配置文件中输入要安装的RPM包的名称(推荐使用)2、可以直接通过修改/root/ naconda-ks.cfg文件来获取。
6、系统安装介质拷贝到服务端共享目录
#mount /dev/cdrom /media 将系统光盘mount到/media目录下
#cp -r /media/* /install 将所有文件拷贝到共享目录中
#cp /root/naconda-ks.cfg /install/ks.cfg 将生成的ks.cfg文件也拷贝到共享目录
四、客户端操作系统安装
客户端设置BIOS启动顺序:必须保证硬盘启动在网卡启动前面否则会重复安装过程
Cdrom
硬盘
NIC
开启网卡PXE功能,(只需要开启插网线的哪块网卡)
保存配置重启服务器,机器自动从网卡启动进行系统安装
五、总结后续计划
本次实验实现了服务器操作系统的自动安装,在批量机器上架的时候可以执行开机就可以完成自动化的操作系统安装,但是服务器的ip配置还不能做到定制化,后续实验看是否可以通过改进ks.cfg文件,添加安装后执行脚本,对服务器的ip进行定制化安装。

Linux+PXE+DHCP+TFTP+NFS实现无人值守安装的更多相关文章

  1. win2003系统网络安装——基于linux+pxe+dhcp+tftp+samba+ris

    原文发表于:2010-09-16 转载至cu于:2012-07-21 一.原理简介 PXE(preboot execute environment)工作于Client/Server的网络模式,支持工作 ...

  2. RHEL7下PXE+NFS+Kickstart无人值守安装操作系统

    RHEL7下PXE+NFS+Kickstart无人值守安装操作系统 1.配置yum源 vim /etc/yum.repos.d/development.repo [development] name= ...

  3. centos 6.x下pxe+tftp+http+kickstart无人值守安装操作系统

    1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过 ...

  4. 使用PXE+DHCP+TFTP+kickstart搭建无人执守系统安装服务器

    原理和概念:  1. 什么是PXE  严格来说,PXE 并不是一种安装方式,而是一种引导的方式.进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 ...

  5. linux pxe+dhcp+nfs+tftp

    yum -y install vsftpd dhcp xinetd tftp-server syslinux(安装"syslinux"才有pxelinux.0) tftp 服务(v ...

  6. PXE+DHCP+TFTP+Cobbler 无人值守安装centos 7

    Cobbler(补鞋匠)是通过将DHCP.TFTP.DNS.HTTP等服务进行集成,创建一个中央管理节点,其可以实现的功能有配置服务,创建存储库,解压缩操作系统媒介,代理或集成一个配置管理系统,控制电 ...

  7. PXE+HTTP+TFTP+Kickstart实现无人值守部署centos6.10

    在联网的状态下安装所需软件: Shell> yum install dhcp httpd tftp-server xinetd syslinux system-config-kickstart ...

  8. PXE+kickstart无人值守安装CentOS 7

    kickstart+cobbler系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文是PXE+kickstart无人值守安装CentOS ...

  9. (转)PXE+kickstart无人值守安装CentOS 7

    kickstart+cobbler系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文是PXE+kickstart无人值守安装CentOS ...

  10. 第19章 使用PXE+Kickstart部署无人值守安装

    章节概述: 本章节将教会您通过PXE+DHCP+TFTP+VSftpd+Kickstart服务程序搭建出无人值守安装系统,从而批量部署客户机系统. 这种系统能够实现自动化运维.避免了重复性劳动,帮助提 ...

随机推荐

  1. 【转载】 Linux 设置CPU Performance模式

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/zaf0516/article/detail ...

  2. 关于python:pip安装选项“ ignore-installed”和“ force-reinstall”之间的区别

    参考: https://www.codenong.com/51913361/ ==================================================== 官方文档解释: ...

  3. baselines算法库common/atari_wrappers.py模块分析

    common/atari_wrappers.py模块代码如下: import numpy as np import os os.environ.setdefault('PATH', '') from ...

  4. 为baselines算法库安装mujoco环境支持——ubuntu 20.04安装MuJoCo2.1.1

    下载开源版本的mujoco二进制文件: wget https://github.com/deepmind/mujoco/releases/download/2.1.1/mujoco-2.1.1-lin ...

  5. Git 学习笔记——git checkout

    上图是我对git常用用法的一个总结,今天这里主要解释上面操作中没有的 " git checkout "操作. =================================== ...

  6. nginx配置web服务|反向代理|负载均衡

    目录 http模块 server模块(虚拟主机配置) location模块 基本语法 匹配类型 等号匹配(=) 正则匹配(~) 忽略大小写的正则匹配(~*) 常见指令 嵌套 location 反向代理 ...

  7. 精读代码,实战进阶&实践Task2

    背景 从零入门AI生图原理&实践 是 Datawhale 2024 年 AI 夏令营第四期的学习活动("AIGC"方向),基于魔搭社区"可图Kolors-LoRA ...

  8. Python 潮流周刊#65:CSV 有点糟糕(摘要)

    本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...

  9. Python开发中,SQLAlchemy 的同步操作和异步操作封装,以及常规CRUD的处理。

    在我们使用Python来和数据库打交道中,SQLAlchemy是一个非常不错的ORM工具,通过它我们可以很好的实现多种数据库的统一模型接入,而且它提供了非常多的特性,通过结合不同的数据库驱动,我们可以 ...

  10. ThinkPHP 6 + PHP7.4.3nts +nginx 使用mysql和oracle数据库

    ThinkPHP 6 + PHP7.4.3nts +nginx 使用mysql和oracle数据库. 前言 业务需求,之前使用的php 7.3.4nts ,mysql自己写的代码,需要对接第三方系统, ...