在CentOS7 上实现PXE自动化安装Centos windows
一、安装前准备
关闭防火墙和SELINUX
systemctl stop firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
二、安装相关软件包并启动服务
yum -y install httpd tftp-server dhcp syslinux system-config-kickstart
systemctl enable httpd
systemctl enable tftp
systemctl enable dhcpd
mkdir -pv /var/www/html/centos/7/os/x86_64
mount /dev/sr0 /var/www/html/centos/7/os/x86_64
vi /etc/dhcp/dhcpd.conf
subnet 192.168 .10.0 netmask 255.255 .255.0 { range 192.168 .10.200 192.168 .10.210; option domain-name-servers 10.18 .2.50,10.4.0.17; option routers 192.168 .10.254; default-lease-time 600 ; max-lease-time 7200 ; next-server 192.168 .10.10; filename "pxelinux.0" ;
}
systemctl start dhcpd
创建目录
mkdir /var/lib/tftpboot/pxelinux.cfg/
cp -a /usr/share/syslinux/{ chain.c32,mboot.c32,menu.c32,memdisk} /var/lib/tftpboot/
cp -a /var/www/html/centos/7/os/x86_64/images/pxeboot/{ vmlinuz,initrd.img} /var/lib/tftpboot/
cp -a /usr/share/syslinux/{ chain.c32,mboot.c32,menu.c32,memdisk} /var/lib/tftpboot/
cp -a /var/www/html/centos/7/os/x86_64/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
vim /tftpboot/pxelinux.cfg/default
default menu.c32prompt 0 timeout 30 MENU TITLE centos7 install LABEL centos7_x64MENU LABEL CentOS 7 X64KERNEL /netboot/vmlinuzAPPEND initrd = /netboot/initrd.img method = http://192.168.10.110/pub
systemctl restart smb
systemctl restart tftp
systemctl restart dhcpd
三、pxe安装windows系统
yum install samba samba-client cifs-u* -y
mkdir /smbshare/windows{ 10,2012 ,2016}
useradd long
smbpasswd -a long
chown long:long /smbshare/
vim /etc/samba/smb.conf
[ global] netbios name = pxeworkgroup = WORKGROUP
.. .. ..
[ install] comment = Installation Mediapath = /smbsharepublic = yes writable = noprintable = nobrowseable = yes
ystemctl start smb nmb && systemctl enable smb nmb
mount -o loop windows10.iso /smbshare/windows10
copype amd64 c:\ winpe
Dism /Mount-Image /ImageFile:"c:\winpe\media\sources\b oot.wim"
/index:1 /MountDir:"c:\winpe\mount"
Dism /Unmount-Image /MountDir:"c:\winpe\mount" /commit
MakeWinPEMedia /ISO c:\ winpe c:\ win10pe.iso
vim /var/lib/tftpboot/pxelinux.cfg/default
label Install MS Windows 10
menu label Install MS Windows 10
kernel memdisk
initrd /winpe/win10pe.iso
append iso raw
net use z: \ \ 192.168 .10.10\ install\ windows10 /user:long 123
z:\ setup.exe