pxe+kickstart自动安装系统

出门莫恨无人随,书中车马多如簇。这篇文章主要讲述pxe+kickstart自动安装系统相关的知识,希望能为你提供帮助。
1.安装和启动软件


[root@Tyvis /var/www/html]#yum -y install dhcp tftp-server httpd syslinux


[root@Tyvis /var/www/html]#systemctl enable --now dhcpd httpd tftp.socket
2,创建相应的目录


[root@Tyvis ~]#mkdir -pv /var/www/html/Centos/6,7
[root@Tyvis ~]#mkdir -pv /var/www/html/ksdir
【pxe+kickstart自动安装系统】

3,挂载系统镜像iso文件到相应的目录下


[root@Tyvis /var/www/html]#mount /root/CentOS-6.10-x86_64-bin-DVD1.iso /var/www/html/Centos/6
[root@Tyvis /var/www/html]#mount /root/CentOS-7-x86_64-Minimal-1810.iso /var/www/html/Centos/7


[root@Tyvis /var/www/html]# tree -L 2
.
├── Centos
│   ├── 6           #目录下存放6的系统镜像文件
│   └── 7           #目录下存放7的系统镜像文件
└── ksdir
    ├── ks6.10_mini.cfg             #Centos6的ks自动应答文件,权限644
    └── ks7.6_mini.cfg             #Centos7的ks自动应答文件,权限644


4 directories, 2 files


4,拷贝相应文件到tftp的共享目录
[root@Tyvis /var/lib/tftpboot]# cp -a /usr/share/syslinux/menu.c32,pxelinux.0 /var/lib/tftpboot/
[root@Tyvis /var/lib/tftpboot]# mkdir pxelinux.cfg
[root@Tyvis /var/lib/tftpboot/pxelinux.cfg]# cp -a /var/www/html/Centos/7/isolinux/isolinux.cfg ./default
[root@Tyvis /var/lib/tftpboot/pxelinux.cfg]# cat default  
default menu.c32
timeout 600


menu title Auto install Centos6 or 7
menu tabmsg Press TAB key to edit  


label Auto install Centos^6.10_x86_64
  menu label Install mini install Centos6.10_x86_64
  kernel Centos/6/vmlinuz
  append initrd=Centos/6/initrd.img ks=http://192.168.10.110/ksdir/ks6.10_mini.cfg ip=dhcp


label Auto install Centos^7.6_x86_64
  menu label Install mini install Centos7.6_x86_64
  kernel Centos/7/vmlinuz
  append initrd=Centos/7/initrd.img ks=http://192.168.10.110/ksdir/ks7.6_mini.cfg ip=dhcp


label local
  menu label Boot from ^local drive
  menu default
  localboot 0xffff


[root@Tyvis /var/lib/tftpboot]# mkdir Centos/6,7  
[root@Tyvis /var/lib/tftpboot/Centos/6]# cp -a /var/www/html/Centos/6/isolinux/vmlinuz,initrd.img /var/lib/tftpboot/Centos/6
[root@Tyvis /var/lib/tftpboot/Centos/6]# cp -a /var/www/html/Centos/7/isolinux/vmlinuz,initrd.img /var/lib/tftpboot/Centos/7




5,tftp共享目录文件结构
[root@Tyvis /var/lib/tftpboot]# tree
.
├── Centos
│   ├── 6
│   │   ├── initrd.img
│   │   └── vmlinuz
│   └── 7
│       ├── initrd.img
│       └── vmlinuz
├── menu.c32
├── pxelinux.0
└── pxelinux.cfg
    └── default


4 directories, 7 files


6,dhcp配置文件内容


[root@Tyvis /var/lib/tftpboot/Centos/6]# cat /etc/dhcp/dhcpd.conf  
# dhcpd.conf
option domain-name-servers 8.8.8.8;                         #全局dns服务器设置
default-lease-time 86400;                                   #默认租期为24小时,1天
max-lease-time 864000;                                     #最大 租期为240小时,10天  
log-facility local6;                                       #日志设施定义为local6,对应rsyslog配置文件也需做相应修改


subnet 192.168.10.0 netmask 255.255.255.0                #子网范围,必须和本机的网卡在同一个网段。本机网卡设置为固定Ip地址:192.168.10.110
  range 192.168.10.55 192.168.10.60;                       #dhcp自动分配的地址池  
  option routers 192.168.10.1;                             #自动分配的网关地址
  option domain-name-servers 223.5.5.5;                     #此子网定义的自己的dns服务器地址
  default-lease-time 86400;                                 #此子网定义的默认租期为24小时,1天
  max-lease-time 864000;                                   #此子网定义的最长租期为240小时,10天
  next-server   192.168.10.110;                             #tftp服务器的地址,可以为本机
  filename "pxelinux.0";                                   #tftp服务器上引导文件的名称为"pxelinux.0",一般不做名称修改



#host passacaglia                                        #这里用来设置IP和mac地址绑定用的
#     hardware ethernet 00:0c:29:d1:4e:d2;
#     fixed-address 192.168.10.33;
#







    推荐阅读