超好懂的PXE+Kickstart批量安装CentOS6.2教程(山寨版)

PXE批量网络装机和KickStart无人值守安装(超详细实验教程) PXE (预启动执行环境,在操作系统之前运行)是由Intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。PXE 远程安装服务器集成了 CentOS 7 安装源、TFTP 服务、DHCP 服务、FTP 服务,能够向客户机裸机发送 PXE引导程序、Linux 内核、启动菜单等数据,以及提供安装文件。#指定 TFTP 服务器的地址,即自己的虚拟机地址(手动输入)#指定要下载的 PXE 引导程序的文件(这手动输入) 阅读详情

原文题目:

超好懂的PXE+Kickstart批量安装RHEL5教程。大家应该能搜着。(csdn不能添加此链接?!)

 

对原文做的修改:

1 一些路径错误等;

2 CentOS6.2差异;

修改均以红字标明。

 

试验环境:

服务器环境:

    虚拟机 vmware workstation 8

    操作系统 Centos-6.2 -x86_64-bin-DVD1.iso

    分发给客户机的操作系统同上 

客户机:

    Dell Optiplex 390

 

kickstart 服务器启动的checklist

1 httpd 是否启动  service httpd status (http是本操作流程共享文件的方式,其它方式没有验证)

2 dhcpd 是否启动 service dhcpd status

3 tftp 是否启动

     netstat -a | grep tftp

    显示结果为

    udp 0 0 *:tftp *:*

    表明服务已经开启

4 iptables是否关闭 service iptables status

下面红字没有验证

禁止防火墙在系统启动时启动

chkconfig iptables off       禁止在当前运行级上启动

或
/sbin/chkconfig --level 2345 iptables off    禁止在运行级2345上启动

 

5  SeLinux是否关闭

查看SELinux命令:getenforce;
关闭SELinux命令:setenforce 0。

 

==========================================================================

 

本文记录了用Kickstart实现无人值守安装,搭建RHCE实验室环境的详细步骤。文中使用的环境为CentOS6.2。文章作者抚琴煮酒(Andrew Yu)是经验丰富的Linux/Unix系统工程师,并曾经担任过一段时间的RHCE讲师的工作。

原理和概念

什么是PXE

严格来说,PXE 并不是一种安装方式,而是一种引导的方式。进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot Execution Environment,直译为预启动执行环境)协议使计算机可以通过网络启动。协议分为 client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。运行 PXE 协议需要设置 DHCP 服务器和 TFTP 服务器。DHCP 服务器用来给 PXE client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。此外,在 PXE client 的 ROM 中,已经存在了 TFTP Client。PXE Client 通过 TFTP 协议到 TFTP Server 上下载所需的文件。

什么是KickStart

KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。

PXE + KickStart安装的条件

执行 PXE + KickStart安装需要的设备为:

  1. DHCP 服务器
  2. TFTP 服务器
  3. KickStart所生成的ks.cfg配置文件
  4. 一台存放系统安装文件的服务器,如 NFS、HTTP 或 FTP 服务器
  5. 带有一个 PXE 支持网卡的将安装的主机

安装的步骤

一、安装httpd

yum -y install httpd* (CentOS6.2 缺省已经安装,但是没有启动。启动命令: service httpd start)

二、挂载CentOS6.2的DVD光盘,并复制第一张光盘下的所有内容(文件和文件夹)到/var/html/www下(应该是:到/var/wwwhtml/下)

注:试验中挂载真正的光盘时,总是挂不上。后来把光盘制作成iso,在虚拟机上作为光驱,才挂载成功。

mount -t iso9660  /dev/cdrom  /mnt/cdrom
cp –rf   /mnt/cdrom/*   /var/www/html/
三、安装 tftp-server,并启用tftp服务,重启xinetd进程
注:tftp服务器安装,本博客已有另文专述
rpm -ivh tftp-server-0.39-1.i386.rpm
vi /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
#    protocol.   The tftp protocol is often used to boot diskless \
#    workstations, download configuration files to network-aware printers, \
#    and to start the installation process for some operating systems.
service tftp
{
       socket_type          = dgram
       protocol             = udp
       wait                    = yes
       user                    = root
       server                = /usr/sbin/in.tftpd
       server_args          = -s /var/lib/tftpboot
       disable                 = no #disable的直由yes变为no
       per_source              = 11
       cps                   = 100 2
       flags                = IPv4
}
service xinetd restart

四、配置支持PXE启动

注意我已经把第一张光盘的内容复制到/var/www/html目录中了,所以所需要的文件我只需要从/var/www/html目录中复制就行了,但在描述的时候,我还是表明了文件的真实的位置,比如在DVD光盘的哪个中,只是文件我是从/var/www/html目录中复制而已,大家也可学我样偷懒

1、进入tftpboot文件夹,没有就建一个,有了就不用建了。

cd /var/lib/tftpboot/

2、把pxelinux.0复制到/tftpboot/中

cd  /usr/share/syslinux (注:这个目录与redhat5不同。)

cp pxelinux.0 /var/lib/tftpboot
cp vesamenu.c32 /var/lib/tftpboot (注:原文没有拷贝此文件,但试验中发现需要)

3、把Linux第一张安装光盘上/image/pxeboot/initrd.img和vmlinux复制到/tftpboot/中

cp /var/www/html/image/pxeboot/initrd.img   /var/lib/tftpboot
      cp /var/www/html/image/pxeboot/vmlinux   /var/lib/tftpboot

4、 复制第一张安装光盘上的isolinux/*.msg到/tftpboot/中

cp /var/www/html/isolinux/*.msg   /var/lib/tftpboot

5、 在tftpboot中新建一个pxelinux.cfg目录

mkdir pxelinux.cfg

6、 把Linux第一张安装光盘上isolinux目录中的isolinux.cfg复制到pxelinux.cfg目录中,并同时更改文件名称为default

cd pxelinux.cfg
cp /var/www/html/isolinux/isolinux.cfg   /var/lib/tftpboot/pxelinux.cfg/default

7、 在上一步中,我们暂时不要修改default文件。其实到达这一步骤的时候,我都就可以通过网络引导了,通过网络引导之后接下了就可以手动安装了,但是这里面我们讨论的是无人值守安装,而所谓无人值守安装就是在从引导到安装都不需要手动指定,一气呵成。我们接下来继续讲解。

六、安装dhcp服务,同时修改配置

注:dhcp服务安装本博客已有另文专述。

1、 安装

rpm -ivh dhcp-3.0.1-12_EL.i386.rpm (注意: centos 下的包名不同)

2、 复制配置模板文件到指定的目录中,并重命名

cp /usr/share/doc/dhcp-3.0.1/dhcpd.conf.sample /etc/dhcpd.conf

3、 修改配置文件,添加一行:filename "/pxelinux.0",其他的修改自己完成就行了。这文件的位置一定要注意,不然会失败,切记

[root@localhost isolinux]# vim /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
next-server 192.168.1.14;     #PXE服务器IP地址
filename "/pxelinux.0";           #注意此行的位置,写在subnet下面的话会失败                                                                           

subnet 192.168.1.0 netmask 255.255.255.0 {

# --- default gateway
           option routers                    192.168.1.254;
           option subnet-mask                  255.255.255.0;

           option nis-domain                 "example.com";
           option domain-name                  "example.com";
           option domain-name-servers        192.168.1.254;
       
           option time-offset                  -18000; # Eastern Standard Time
#        option ntp-servers                  192.168.1.1;
#        option netbios-name-servers         192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
#        option netbios-node-type 2;

           range dynamic-bootp 192.168.1.128 192.168.1.254;
           default-lease-time 21600;
           max-lease-time 43200;

           # we want the nameserver to appear at a fixed address
           #host ns {
            #        next-server marvin.redhat.com;
            #         hardware ethernet 12:34:56:78:AB:CD;
            #         fixed-address 192.168.1.110;
           #}
}

4、 启动dhcp服务

service dhcp start

七、 安装kickstart并进行配置

首先安装Kickstart:(注:kickstart安装时需要安装较多关联包,所以使用YUM本地安装,另文专述)

rpm -ivh system-config-kickstart-2.5.16-2.noarch.rpm  (注意: centos 下的包名不同)

在gnome环境下配置kickstart的指令如下:

system-config-kickstart(Centos6.2, 在菜单中选择)

之后的配置步骤如下:(注:可参考此文:www.linuxso.com/linuxrumen/23808.html,有详细设置的图。试验中依据此文。)

  1. 基本配置,按自己需求来就好
  2. 安装方法,选择httpd安装,切记不要输入任何的帐号,我们采用的匿名安装
  3. 引导安装程序选项,不需要做更改
  4. 分区信息,创建三个分区
  5. 网络配置,我使用的静态分配地址(动态同样如此) (DHCP)
  6. 显示配置,按自己需求来就好
  7. 软件包的选择,我选择了Kernel Developent和Development Tools安装(但千万不要选择这两个软件包,不然的话在安装的时候会报错的)(centos虚拟机安装时不能选择。)
  8. 其他的都是默认设置,没有做修改
  9. 生成文件ks.cfg,保存到/var/www/html下

八、修改/var/www/html/ks.cfg文件,指定读取ks.cfg的方法(ks=http://192.168.1.40/ks.cfg)

(注意,以下两图片为试验成功的真实文件截图,下面文字部分并没有使用)

 

 

vi /var/www/html/ks.cfg
 
 
auth --useshadow --enablemd5
key --skip #这行一定要,跳过注册号输入,不然会失败(centOs下此行不需要)
bootloader --location=mbr
clearpart –all –initlabel
text
firewall --disabled
firstboot --disable
keyboard us
lang en_US
logging --level=info
url --url=http://192.168.1.14/
network --bootproto=dhcp --device=eth0 --onboot=on
reboot
rootpw --iscrypted $1$HEJKfwF9$r1l0JoPz74ToF9NbE3Qs1
selinux --disabled
timezone --isUtc Asia/Shanghai
intall
xconfig --defaultdesktop=GNOME -depth=8 --resolution=640x480
part swap --bytes-per-inode=4096 --fstype="swap" --size=512
part /boot --bytes-per-inode=4096 --fstype-"ext3" --size=200
part / --bytes-per-inode=4096 --fstype="ext3" --grow --size=1
%packages
@cluster-storage
@mysql
@development-libs
@editors
@text-internet
@x-software-development
@virtualization
@legacy-network-server
@dns-server
@gnome-desktop
@dialup
@core
@base
@ftp-server
@network-server
@clustering
@java-development
@base-x
@chinese-support
@web-server
@smb-server
@printing
@admin-tools
@development-tools
@graphical-internet
kmod-gnbd-xen
kmod-gfs-xen
perl-Convert-ASN1
perl-Crypt-SSLeay
mesa-libGLU-devel
tftp-server
kexec-tools
bridge-utils
device-mapper-multipath
ypserv
openldap-servers
vnc-server
dhcp
xorg-x11-server-Xnest
xort-x11-server-Xvfb
imake
gcc-objc
expect

最后,重新引导安装就可以了。以上是我的配置步骤,如果没有出入的话,是一定可以成功的!

kickstart服务搭建 搭建kickstart服务,实现服务器的批量安装,配合系统初始化脚本更完美 阅读详情

相关推荐

PXE-Kickstart高效批量装机

DHCPvsftp—pxe机器tftp—client自行定义grub引导菜单准备Linuz内核文件镜像文件init初始化 Kickstart—无人值守安装 实操 pxe部分 一、安装TFTP 服务 yum install -y tftp-server xinetd vim /etc/xinetd.d/tftpprotocol = udp wait = no server_args = -s /var/lib/tftpboot disable = nosystemctl start tftp systemc

abandon的博客 1321

CentOS6.2标准化安装与配置

CentOS6.2标准化安装与配置

HB_bao的博客 675

Kickstarter JSON数据解析,保存csv

Kickstarter数据解析,保存csv文件

xiaoxiaoyu85的专栏 648

kickstart详解(超级详细)

许多系统管理员宁愿使用自动化的安装方法来安装红帽企业 Linux.为了满足这种需要,红帽创建了kickstart安装方法.使用kickstart,系统管理员可以创建一个文件,这个文件包含了在典型的安装过程中所遇 到的问题的答案.Kickstart文件可以存放于单一的服务器上,在安装过程中被独立的机器所读取.这个安装方法可以支持使用单一kickstart文件在多台机器上安装红帽企业Linux,这对于网络和系统管理员来说是个理想的选择.Kickstart给用户提供了一种自动化安装红帽企业Linux的方法.

神棍之路 4263

kickstart教程

linux kickstart 教程

天线学习笔记——串馈网络设计

工程中通常更倾向于使用50Ω、70.7Ω、100Ω的固定阻抗的带宽,实际中可以分别使用固定阻抗的带宽和计算得到的带宽进行仿真,观察二者的性能,取性能更优者即可。本系列是一个记录天线设计的笔记,分享出来也希望能够帮助到大家,后续本系列文章还会不定期更新,如有需要可关注,任何问题均可在评论区或私信提出,看到必回。如果对大家有帮助可进行打赏哦~

Ethan的博客 7877

PXE + kickstart批量装机及问题解决方案

定义:PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。pxe是通过网卡引导启动1)pxe client必须支持pxe用户端功能,并且开机时选择网络启动,才能确保以网络的方式进入pxe启动程序;2)pxe服务器必须至少提供DHCP、TFTP、HTTPD(vsftpd或nfs)的服务,且。

zcffight的博客 2659

Verilog实现SPI通信协议驱动设计

线性序列机实现SPI协议

H19981118的博客 6085

kickstart自动部署

将文件拷贝到默认网络服务上,让客户端能通过网络访问到。将光盘镜像通过软连接的方式共享到网络服务中。[]内是x则代表成功,有!安装完成后再次更改电源固件为硬盘启动。本文使用图形化界面就行操作设置。取消VMware dhcp设置。确保服务器有Apache服务。更改电源固件启动优先为为网络。主机采用rhel7.9版本。部署pxe后dhcp配置。创建目录及其拷贝镜像文件。验证web服务是否成功。编辑default文件。

qq3178535571的博客 455

深入解析FastDDS:SHM与DATA-SHARING传输层的性能对比与实现细节

本文深入对比了FastDDS中SHM与DATA-SHARING两种传输层的实现机制与性能差异。SHM采用端口化共享内存模型,存在两次数据拷贝;而DATA-SHARING通过共享历史实现真正的零拷贝,大幅降低延迟与CPU占用。文章结合实战测试数据,为机器人、自动驾驶等高实时性场景提供了关键的性能优化选型与配置指南。

weixin_28358083的博客 232

IGBT基础知识

IGBT

u010783226的专栏 1万+

一步一步_kickstart详解

kickstart详解 Kickstart文件格式官方说明: Installation Guide for Cents 6 Installation Guide for Cents 7 kickstart文件 先来认识kickstart文件的基本内容有哪些 kickstart文件的格式 1. 命令段:指明各种安装前配置,如键盘类型等 2. 程序包段:指明要安装的程序包组或程序包,不安装的程序包...

Not Found 404 1万+

RH850从0搭建Autosar开发环境【1】- 如何创建Davinci Configurator配置工程

当我们在公司接触Autosar开发环境时,基本都是完整的Davinci Configurator的配置工程,我们只能修修补补。 从本章开始将手把手搭建Rh850基于Vector公司Davinci Configurator的autosar配置工程。主要涉及到OS,COM,DCMM,NVM,BSWM,ECUM等基本模块,包括Vlink,memap使用,XCP标定的实现等。基本是实现一个基础版的项目开发。包括后期的GreenHills编译问题处理,生成最终的Hex文件。

weixin_42412049的博客 1万+

ant centos环境下 编译没有将配置文件加载_LNMP环境下搭建FastDFS服务

主要目的:1.实现在浏览器中访问上传到fastDfs的图片;2.安装php fastdfs扩展实现php对fastdfs的相关操作与使用;FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client),相关原理参考:https://www.jianshu.com/p/d09e52ff947f一.环境准备:lnmp环境(...

weixin_39664136的博客 176

SAP GUI 字段遮罩功能详解及实现

默认情况下,系统使用作为掩码模式,遮罩整个字段内容长度;对于货币金额类型,掩码后会保留小数位并在整数位部分全部显示为,如****.**若需自定义掩码模式,可利用以下方式:维护“Maintain Masking Pattern”节点,在其中定义新的掩码方式(如:只露出后四位,其他位以X替代等);实现 BAdI(或类似命名,具体以系统版本为准)的方法,通过 ABAP 代码读取原始值,并依据业务逻辑生成掩码字符串返回,动态替换界面输出值;

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 709

ARFoundation系列讲解-教程目录

一、教程目录 ARFoundation快速入门-01简介 ARFoundation快速入门-02环境搭建 ARFoundation快速入门-03环境配置之iOS ARFoundation快速入门-04环境配置之Android ARFoundation快速入门-05ARKit设备支持列表 ARFoundation快速入门-06ARCore设备支持列表 ARFoundation快速入门-07检查设备支持 ARFoundation快速入门-08平面检..........

a451319296的博客 3万+

ks.cfg配置详解

本文转自:http://fedoraproject.org/wiki/Anaconda/Kickstart/zh-cn#firstbootChapter 1. 引言什么是Kickstart安装?许多系统管理员都希望能够使用自动化安装的方式来在他们的机器上安装Fedora或红帽企业版Linux。为了满足这样的需求,红帽公司创建了kickstart安装方式。通过使用kickstart,系统管理员能够创...

Primeprime的专栏 2万+

71、聚二甲基硅氧烷(PDMS)材料模型验证研究

本研究通过实验与数值模拟相结合的方法,系统探究了聚二甲基硅氧烷(PDMS)的力学性能与粘附行为。重点验证了多种超弹性材料模型在不同剥离速率下的适用性,结果表明Ogden N2模型在预测界面韧性和平均剥离力方面误差最小,表现最优。研究涵盖了PDMS的合成、单轴拉伸试验、剥离测试及有限元分析,为PDMS在机械与摩擦学领域的应用提供了可靠的建模依据,并建议在后续模拟中优先采用Ogden模型。

wine的专栏 1053

Kickstart和PXE一个小时全搞定?真保姆级教程手把手带你搭

安装方法我们选择全新安装,毕竟我们的目的是给没有用过的虚拟机进行安装,http我们刚才就已经搞好了,在这里还迷茫服务器填什么的朋友们,瞅瞅上面的内容,后面的ip不要都跟着我写的填,要看自己的VMware的配置和虚拟机内的配置.cat一下conf里面的内容,发现是空的,但是为我们提供了模板example,我们只需要去将模板cp过来即可,所以以后配配置的时候记得先rpm看看都有什么文件哦,复制配置岂不是美滋滋了。27,28行先注释掉,把35行下面的内容全部删除,猛猛删,萌新记得直接用dd删除,速度快。

m0_63877940的博客 1978

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

kickstart自定义镜像

Kickstart是Red Hat系列(如RHELCentOSFedora)的核心自动化安装工具,用于解决批量部署Linux服务器的效率问题。传统 Linux安装需要手动选择分区、语言、软件包等参数,若需部署几十上百台服务器, 手动操作效率极低。Kickstart通过提前编写一个配置文件(.ks,预设所有安装参数,实现无 人值守的自动化安装。

2401_83342251的博客 703

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Kickstarter-ReactiveExtensions 安装与配置指南

Kickstarter-ReactiveExtensions 安装与配置指南 1. 项目基础介绍 Kickstarter-ReactiveExtensions 是一个开源项目,它为 ReactiveSwift 框架提供了一系列的扩展。ReactiveSwift 是一个函数式响应式编程(FRP)库,用于在 Swift 中构建不可变数据流。这些扩展增强了 ReactiveSwift 的功能,使得开发者...

gitblog_00529的博客 916

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

红帽7基于kickstart搭建PXE环境

Kickstart 文件是一种配置文件,用于定义 Linux 系统安装过程中的各种参数,如分区、网络配置、软件包选择等。提供了一个图形界面,方便用户快速生成这些配置文件。用户可以通过图形界面进行系统安装的详细配置,包括:安装方法(如网络安装、本地安装等)。网络设置(如 IP 地址、网关、DNS 等)。分区信息(如分区大小、文件系统类型等)。软件包选择(如安装哪些软件包或组)。预安装和安装后脚本(用于执行自定义操作)。

ashina_01的博客 1188

wll多功能超小linux,WLL多功能PXE网启服务器3.6终结版

WLL多功能服务器,可以快速在局域网里面搭建一个集于pxe,tftp,ftp,http,nfs,ssh,samba于一身的多功能服务器,而且不影响局域网当前环境,服务器本身为200M的linux系统,可安装到U盘(ISO版),但推荐用虚拟机安装.主要应用于机房或者电脑维护场合,使电脑可以通过网线高速启动PE等常用维护工具并实现高速网刻系统.服务器包含两部分,一是服务器本身,二是wllpxe根文件,...

weixin_39849418的博客 928

kickstart简单使用说明

一、什么是kickstart二、kickstart文件组成三、安装方法四、图形化程序编辑kickstart配置(kickstart文件包含截图中所注明的相关配置)一、什么是kickstart kickstart是一个定义了Linux安装过程的配置文件,比如要在系统中使用的时区、如何对驱动器进行分区、或者应该安装哪些软件包。有了这个文件可以解放双手,让Linux安...

weixin_34293059的博客 1253
上一篇: 在CentOS 5.3下安装配置tftp服务
下一篇: yum 使用本地光盘资源和安装system-config-kickstart
silent1
博客等级 码龄25年 98粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值