首页 > 代码库 > 自动化无人值守网络装机(PXE网络装机)
自动化无人值守网络装机(PXE网络装机)
自动化无人值守网络装机(PXE网络装机)
在IP地址为192.168.4.5主机上配置pxe机,实现对客户端的自动化网络装机,并在给客户端装机后自动分配IP地址、主机名,并自动创建一个管理员的账户:admin和对应密码:123456。
在192.168.4.5主机上配置:
[root@svr5桌面]# mkdir /nfsdir
[root@svr5/]# mount /dev/cdrom /nfsdir
//光盘挂载目录,也可是其他目录,但要和生成ks文件时kickstart图形界面过程中的配置nfs共享时配置应一致。
1)dhcp配置
[root@svr5桌面]# yum repolist
[root@svr5桌面]# rpm -q dhcp
[root@svr5桌面]# yum -y install dhcp
[root@svr5桌面]# vim /etc/dhcp/dhcpd.conf
subnet192.168.4.0 netmask 255.255.255.0 {
range 192.168.4.11 192.168.4.252;
option subnet-mask 255.255.255.0;
option routers 192.168.4.254;
option domain-name-servers 192.168.4.5;
next-server 192.168.4.5;
filename "pxelinux.0";
option domain-name "tarena.com";
default-lease-time 600;
max-lease-time 7200;
}
[root@svr5桌面]# /etc/init.d/dhcpd restart
[root@svr5/]# chkconfig dhcpd on
2)DNS配置
[root@svr5桌面]# yum -y install bind bind-chroot
[root@svr5桌面]# vim /etc/named.conf
options{
listen-on port 53 { any; };
………………
allow-query { any; }
………………
};
[root@svr5桌面]# vim /etc/named.rfc1912.zones
zone"tarena.com" {
type master;
file "tarena.zone";
};
zone"4.168.192.in-addr.arpa" {
type master;
file "192.zone";
};
[root@svr5桌面]# vim /var/named/tarena.zone
$TTL3600
@ IN SOA dns.tarena.com.1441107787.qq.com. (
2015051601
28800
14400
17200
86400
)
@ IN NS dns.tarena.com.
dns IN A 192.168.4.5
$GENERATE 11-252 pc$ IN A 192.168.4.$
wq
[root@svr5桌面]# vim /var/named/192.zone
$TTL3600
@ IN SOA dns.tarena.com.1441107787.qq.com. (
2015051601
28800
14400
17200
86400
)
@ IN NS dns.tarena.com.
5 IN PTR dns.tarena.com.
$GENERATE 11-252 $ IN PTR pc$.tarena.com.
wq
[root@svr5桌面]# service named restart
[root@svr5桌面]# chkconfig named on
3)TFTP配置
(安装tfrp,是为了把内核网络等引导文件放到tftp-server的默认共享目录里共享出去,供客户机用,tftp-server的默认共享目录是:/var/lib/tftpboot/,又因为它是临时服务,需要xinetd管理。
[root@svr5桌面]# rpm -q tftp-server
[root@svr5/]# ls /nfsdir/Packages/ | grep tftp
[root@svr5/]# yum -y install tftp-server
[root@svr5/]# vim /etc/xinetd.d/tftp
将disable改为no
[root@svr5/]# /etc/init.d/xinetd restart
[root@svr5/]# chkconfig xinetd on
4)安装syslinux网卡引导文件
[root@svr5/]# rpm -q syslinux
[root@svr5/]# yum -y install syslinux
[root@svr5/]# rpm -ql syslinux | grep pxelinux.0
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0
5)把网卡引导文件拷贝到tftp-server的共享目录下
[root@svr5 /]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
6)把光盘中的内核文件和引导文件拷贝到tftp-server的默认共享目录下
[root@svr5/]# ls /nfsdir/Packages/
[root@svr5/]# ls /nfsdir/images/pxeboot/
initrd.img TRANS.TBL vmlinuz
[root@svr5/]# cp /nfsdir/images/pxeboot/initrd.img /var/lib/tftpboot/initrd.img
[root@svr5/]# cp /nfsdir/images/pxeboot/vmlinuz /var/lib/tftpboot/vmlinuz
7)在tftp-server的默认共享目录下创建default目录
把光盘中的isolinux.cfg引导安装过程中设置引导文件的文件模板拷贝过来(也可自己写一个),放到共享目录下的default文件中,用来安装过程中设置引导文件,调用内核等文件。
[root@svr5/]# mkdir /var/lib/tftpboot/pxelinux.cfg/
[root@svr5/]# ls /nfsdir/isolinux/
boot.cat grub.conf isolinux.bin memtest TRANS.TBL vmlinuz
boot.msg initrd.img isolinux.cfg splash.jpg vesamenu.c32
[root@svr5/]#
cp /nfsdir/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
8)编辑default文件
[root@svr5/]# vim /var/lib/tftpboot/pxelinux.cfg/default
default rhel6.5
prompt 1
timeout 600
label rhel6.5
kernel vmlinuz
append ks=nfs:192.168.4.5:/ks/ks.cfg initrd=initrd.img
wq // 注意:这里可以像上面一个拷贝一个模板修改,如果自己熟悉内容,也可自己写一个。
9)调出图形界面,设置后生成ks文件
[root@svr5/]# yum -y install system-config-kickstart
[root@svr5/]# system-config-kickstart
安图形界面进行选择:
a)基本配置中:选择语言为简体中文,设置root根密码:123456
b)安装方法中:选择nfs, nfs服务器处选择:192.168.4.5,
且共享nfs目录是:/nfsdir (挂光盘的那个目录,也可是其他目录,但要和光盘挂载目录一致)
c)分区信息中:分好区,选择清除主引导记录,初始化磁盘类型
d)网络配置中:创建eth0,dhcp
e)防火墙配置中:禁用防火墙
f)软件包选择中:选择合适的软件包。
g)点击文件——保存到指定位置。生成的ks文件名称为ks.cfg,保存桌面。
[root@svr5桌面]# mkdir /ks
[root@svr5桌面]# mv ks.cfg /ks
10)把光盘中的包挂载到要共享的目录中
安装nfs共享服务
[root@svr5桌面]# yum -y install nfs-utils rpcbind
共享ks文件和光盘中的各rpm包:
[root@svr5桌面]# vim /etc/exports
/nfsdir *(ro) //把光盘挂载的目录共享出去,供装系统机使用光盘
/ks *(ro) //把ks文件的目录共享出去,供装系统机使用ks文件
wq
[root@svr5桌面]# /etc/init.d/rpcbind restart
[root@svr5桌面]# /etc/init.d/nfs restart
[root@svr5桌面]# chkconfig rpcbind on
[root@svr5桌面]# chkconfig nfs on
注意:有时候配置很成功,但实验老是不成功,可能是vmnet1有问题,这时候,可以都连接成vmnet2,就成功了。
重启各类服务:
[root@svr5桌面]# /etc/init.d/xinetd restart
[root@svr5桌面]# /etc/init.d/dhcpd restart
[root@svr5桌面]#/etc/init.d/named restart
[root@svr5桌面]# /etc/init.d/nfs restart
新建虚拟机作为客户端:实现网络自动安装操作系统
选择要安装段操作系统类型:
新建虚拟机后,启动虚拟机,并调整下面内容:
vmnet调整为和pxe机同一个网段: (vmnet1一般不成功,一般要改成vmnet2)
不能选择自己的光驱,因为这本来就是网络安装系统,否则实验不成功:
首次启动,选择从网络安装启动
系统安装完成后,重新启动时,再选择从硬盘启动
进入系统后,查看IP地址,发现自动获得了一个IP地址,并且能自动分配一个和IP对应的DNS解析的主机名。
附加:图形界面形成的KS文件内容:
[root@localhost 桌面]# vim /ks/ks.cfg
#platform=x86, AMD64, 或 Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead ofupgrade
install
# Use NFS installation media
nfs --server=192.168.4.5--dir=/nfsdir
# Root password
rootpw --iscrypted$1$9jsyy9Ep$uQu0WJ5A04u3snsQVZ5aO1
# System authorizationinformation
auth --useshadow --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang zh_CN
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info
# System timezone
timezone Africa/Abidjan
# Network information
network --bootproto=dhcp --device=eth0 --onboot=on
# System bootloaderconfiguration
bootloader --location=mbr
# Clear the Master BootRecord
zerombr
# Partition clearinginformation
clearpart --all --initlabel
# Disk partitioninginformation
part /boot--fstype="ext4" --size=200
part /--fstype="ext4" --size=100000
part /data--fstype="ext4" --size=100000
part swap--fstype="swap" --size=5000
%packages
@base
@basic-desktop
@chinese-support
@desktop-debugging
@desktop-platform
本文出自 “11571567” 博客,转载请与作者联系!
自动化无人值守网络装机(PXE网络装机)