PXE+kickstart——实现网络批量装机

实验目的:使用软件实现网络批量自动装机

实验环境:一台linux桌面版,一台以上新建的虚拟机,处于同一个局域网

实验步骤:

1.在桌面版系统上安装软件依赖包

[root@localhost ~]# yum -y install dhcp tftp tftp-server vsftpd syslinux system-config-kickstart

2.修改tftp配置文件,把tftp根目录修改为/tftpboot

[root@localhost ~]# vim /etc/xinetd.d/tftp
 1 service tftp
 2 {
 3         socket_type             = dgram
 4         protocol                = udp
 5         wait                    = yes
 6         user                    = root
 7         server                  = /usr/sbin/in.tftpd
 8         server_args             = -s /tftpboot   #改为/tftpboot
 9         disable                 = no      #yes改为no
10         per_source              = 11
11         cps                     = 100 2
12         flags                   = IPv4
13 }

3.创建tftp根目录和子目录

[root@localhost ~]# mkdir -p /tftpboot/pxelinux.cfg

4.挂载安装光盘到vsftp的匿名登录目录下

[root@localhost ~]# mkdir /var/ftp/pub/cd
[root@localhost ~]# mount /dev/sr0/ /var/ftp/pub/cd     #注意光盘安装位置复制内核及引导文件到tftp目录下

5.复制内核及引导文件到tftp目录下

[root@localhost ~]# cp /var/ftp/pub/cd/isolinux/isolinux.cfg  /tftpboot/pxelinux.cfg/default
[root@localhost ~]# chmod 644 /tftpboot/pxelinux.cfg/default    #赋予文件写权限

  复制安装引导文件到tftp的根目录:

[root@localhost ~]# cp -a /var/ftp/pub/cd/isolinux/vmlinuz /tftpboot/
[root@localhost ~]# cp -a /var/ftp/pub/cd/isolinux/initrd.img /tftpboot/
[root@localhost ~]# cp -a /usr/share/syslinux/pxelinux.0 /tftpboot/

6.生成DHCP配置文件并编辑

[root@localhost ~]# cp /usr/share/doc/dhcp-4.*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.135.0 netmask 255.255.255.0 {  #网络地址与子网掩码
  range 192.168.135.100 192.168.135.200;      #声明dhcp分配IP范围
  option domain-name-servers ns1.internal.example.org;  #dhcp分配的域名default-lease-time 600; 
  max-lease-time 7200;
  filename "pxelinux.0";  #声明dhcp分配此文件
  next-server 192.168.135.50; 将文件的位置告诉dhcp,即本机ip
}

 启动相关服务

[root@localhost ~]# service dhcpd start
[root@localhost ~]# service vsftpd start
[root@localhost ~]# service xinetd start

7.编辑default文件,修改引导参数

vim /tftpboot/pxelinux.cfg/default
 
1 #default vesamenu.c32  #注释第一行
2 #prompt 1
3 timeout 600
4 display boot.msg
5 default linux    #添加此行

8.启动网络批量装机配置软件

[root@localhost ~]# system-config-kickstart  #配置为图形界面,需要使用鼠标点击

基本配置:设置当前所在时区和root用户的密码

安装方法:选择FTP,服务器地址为ftp://本机IP,目录为前面创建的挂载点

分区信息:选择清除主引导记录、删除所有分区、初始化磁盘标签并手工建立新分区,点击红框内的添加可创建分区

 

网络配置:在网络设备信息中添加设备名为eth0,网络类型为DHCP

防火墙配置:可禁用防火墙

软件包选择:根据需要选择

安装后脚本:写入修改本地yum源的脚本

rm -rf /etc/yum.repos.d/*
echo "
[a]
name=a
baseurl=ftp://192.168.1.101/pub/cd
enabled=1
gpgcheck=0" > /etc/yum.repos.d/a.repo

保存配置文件到/var/ftp/pub目录中 (左上角鼠标点击即可弹出保存)

9.修改ks.cfg,在文件末尾添加一行reboot

[root@localhost ~]# vim  /var/ftp/pub/ks.cfg   #末尾添加一行reboot即可

10.编辑引导文件告知客户端自动安装配置的位置

[root@localhost ~]# vim /tftpboot/pxelinux.cfg/default
label linux #找到此标签
  menu label ^Install or upgrade an existing system
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=ftp://192.168.135.50/pub/ks.cfg #此行添加ftpks.cfg文件路径

11.开启新建的虚拟机测试即可

猜你喜欢

转载自www.cnblogs.com/shenshuilong/p/11141360.html