[亲测可用] PXE无人值守自动装机

日常工作中运维新手都会被要求安装Linux操作系统,当只有十几台服务器时还能够轻松应付过来,假若有一天公司规模扩大领导要求给几百台服务器安装Linux操作系统,那我们再按照原始方式使用光盘镜像来一台一台安装操作系统,其效率就会相当低了。这时候我们便可以部署PXE+Kickstart无人值守安装操作系统,它可以批量自动安装操作系统。

服务部署(PXE + TFTP + DHCP + Vsftpd + Kickstart)

实验环境

  1. VMware 12 虚拟机
  2. REHL6.5系统(网卡模式:仅主机模式 IP地址:192.168.100.4)

一、安装TFTP服务

  1. 安装tftp服务

    yum  install tftp-server -y        
  2. 修改tftp配置文件,开启tftp服务
    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
disable = no (开启tftp)
per_source = 11
cps = 100 2
flags = IPv4
}

  1. 添加xinetd服务并设置init3/5开机自动开启

chkconfig --add xinetd
chkconfig --level 35 xinetd on

二、安装DHCP服务

  1. 安装dhcp服务

    yum  install dhcp -y
  2. 复制dhcp模板替换为当前dhcp配置文件
    cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
  3. 编辑dhcpd配置文件
    vim /etc/dhcp/dhcpd.conf

ddns-update-style none; #支持DNS动态更新,一般选择关闭
next-server 192.168.100.4; #指定TFTP服务器地址
filename "/pxelinux.0"; #引导文件TFTP上的位置

subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.150 192.168.100.200;
option routers 192.168.100.4;
}

  1. 添加dhcpd服务并设置init3/5开机自动开启

chkconfig --add dhcpd
chkconfig --level 35 dhcpd on

三、安装Vsftpd服务

  1. 安装vsftpd服务

    yum install vsftpd -y
  2. 加载系统镜像盘到vsftpd的默认目录下
    mount /dev/cdrom /var/ftp/pub
  3. 添加vsftpd服务并设置init3/5开机自动开启

chkconfig --add vsftpd
chkconfig --level 35 vsftpd on


以下复制网络启动所需要文件到tftp服务器的根目录下

#安装引导加载程序
yum -y instll syslinux

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default //安装菜单
cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot //linux引导加载模块//
cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/ //压缩内核//
cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot //图形化安装菜单

启动dhcpd/vsftpd/xinetd服务:

service dhcpd restart
service vsftpd restart
service xinetd start

关闭防火墙及安全设置(不然tftp无法下载引导程序)

service iptables stop
setenforce 0

四、kickstart生成自动安装配置

  1. 安装kickstart软件包

    yum -y install system-config-kickstart
  2. 在图形界面上打开kickstart进行配置,最终默认保存在/root/ks.cfg中

#新建ksconfig目录
mkdir /var/ftp/ksconfig
#将配置文件复制到ksconfig目录下
cp /root/ks.cfg /var/ftp/ksconfig/

  1. 编辑default配置,指定ks.conf路径地址
vim /var/lib/tftpboot/pxelinux.cfg/default

default vesamenu.c32
prompt 0
timeout 1
…………
label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append ks=ftp://192.168.100.4/ksconfig/ks.cfg initrd=initrd.img #指定ks.cfg配置文件路径

测试

在VMware中新建一台rhel6.5 x86_64 操作系统,网络模式为:仅主机模式、仅主机模式、仅主机模式(重要的事情说三遍)然后便可以自动获取IP地址、开始加载引导文件及系统镜像开始安装操作系统了。







原文地址:http://blog.51cto.com/10316297/2116984

时间: 2025-01-11 02:24:34

[亲测可用] PXE无人值守自动装机的相关文章

【亲测可用】Cobbler自动批量部署Linux系统

Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便,使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP.DNS.TFTP.RSYNC以及yum仓库.构造系统ISO镜像. Cobbler支持命令行管理,web界面管理,还提供了API接口,可以方便二次开发使用. Cobbler客户端Koan支持虚拟机安装和操作系统重新安装,使重装系统更便捷. 环境准备 VMware 12 虚拟机 Centos 7

PXE无人值守自动装机

在工作中遇到需要进行批量装机的情况下,我们可以部署PXE+Kickstart无人值守安装操作系统,它可以批量自动安装操作系统,提高效率. 操作环境:一台VMware 12 虚拟机和REHL6.5系统的虚拟机可互联互通REHL6.5系统虚拟机为服务器:192.168.10.10yum仓库已建立服务部署:(PXE + TFTP + DHCP + Vsftpd + Kickstart)实验过程: 1.安装.设置tftp服务 [[email protected] ~]# yum install tftp

PXE网络装机及kickstart无人值守自动装机技术

PXE网络装机及kickstart无人值守自动装机技术 PXE简介 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer pro

PXE无人值守自动批量装机

实验要求: PXE无人值守自动批量装机(red hat 6) 实验步骤: 一.安装需要的服务器 1.TFTP yum -y install tftp-servervi /etc/xinetd.d/tftp 2.DHCP yum -y install dhcpvi /etc/dhcp/dhcpd.confddns-update-style none;     //支持DNS动态更新,一般选择关闭//next-server 192.168.100.20;  //指定TFTP服务器地址//filena

搭建PXE 实现自动装机

PXE自动装机是通过网络来实现的,需要装机的电脑从PXE服务器上获得IP,引导文件,系统安装文件,这些都是在PEX服务器上设置的,而需要装机的电脑只要设置为网络启动就可以了,可在BIOS中设置.想从服务器上获得IP就需要DHCP服务,通信需要TFTP服务,共享安装文件需要NFS.FTP.SAMBA都可以,选一种即可.这样就可以网络引导和安装了,但并不是自动的,想实现自动安装系统,还需要自动安装的配置文件,在里面写上,安装信息,分区大小,安装组件等等.这个配置文件可以通过SYSTEM-CONFIG

eclipse设置快捷键sysout+Alt+/后出System.out.println!亲测可用!

以前一直用myeclipse,没有这方面的顾虑,现在换到了eclipse,很多要自己设置了,比如很多快捷键. 最常用的,运行到sysout ,eclipse总是不自动补全,很是恼火!!! 现在终于找到了可用的办法,解决方案如下: 需要重新设置快捷键. 按快捷键ctrl+shirt+L,然后在按一下L.设置快捷键的对话框就出来了,然你将Word Completion移除,在将Content Assist 这个设置为alt+/.就可以了. 希望对你有帮助!!! 本人个人网站:灵异事件 www.lie

Apache+Php配置(亲测可用)

引言: 在软件项目中,Maven提供了一体化的类库管理系统,非常实用.但是,如果新增的类库jar在网络上无法获取到,如何在本地按照Maven的规则添加进来呢?本文将通过一个小例子展示新增过程. 背景介绍: 一个Maven管理的Java项目,提供一个系统级别的POM.xml,其中定义了整个项目使用的类库. 需求: 需要添加一个自定义的类库到当前项目中.假定当前的类库文件名为:abc.jar.. 如何将类库添加进来? 1.  找到当前Maven的Repository类库位置 一般默认情况下,在win

C#读取Excel设置(亲测可用)

OpenFileDialog openFD = new OpenFileDialog(); openFD.FileName = ""; openFD.Filter = "xls|*.xls|xlsx|*.xlsx"; openFD.Title = "选择更新文件"; openFD.Multiselect = false; if (openFD.ShowDialog() == DialogResult.OK) { this.tbSelectFile

sqlite 删除表中重复数据(亲测可用)

例子:表名  Paper .通过字段PaperID查找重复数据. 1 --查询某表中重复的数据       select * from Paper group by PaperID having count(*)>1; 2--删除重复行数,只剩不重复的记录(rowid为sqlite自带字段)      delete from Paper where Paper.rowid not in (select MAX(Paper.rowid) from Paper group by PaperID);