您好,登錄后才能下訂單哦!
第一個網卡使用NET,用來安裝服務
第2個網卡用來提供dhcp服務
#!/bin/bash
#部署pxe批量裝機服務
#配置雙網卡
#定義網卡配置文件位置
k=/etc/sysconfig/network-scripts
#復制網卡配置文件模板
cd /etc/sysconfig/network-scripts
cp -p ifcfg-ens33 ifcfg-ens36
#修改第2塊網卡配置文件
sed -i 's/dhcp/static/' $k/ifcfg-ens36
sed -i 's/ens33/ens36/' $k/ifcfg-ens36
sed -i '/UUID/d' $k/ifcfg-ens36
cat >>$k/ifcfg-ens36 <<-EOF
IPADDR=192.168.100.100
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
EOF
#重啟網絡服務
systemctl restart network
#防止yum安裝進程休眠
rm -rf /var/run/yum.pid
#安裝必要服務
yum install dhcp syslinux tftp-server vsftpd -y
#修改DHCP服務配置文件
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cat >>/etc/dhcp/dhcpd.conf <<-EOF
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.10 192.168.100.20;
option routers 192.168.100.100;
next-server 192.168.100.100;
filename "pxelinux.0";
}
EOF
#定義要經常用的tftp站點
tftp=/var/lib/tftpboot
#復制引導程序到tftp站點
cp /usr/share/syslinux/pxelinux.0 $tftp/
#修改tftp配置文件
sed -i '/disable/s/yes/no/g' /etc/xinetd.d/tftp
#創建鏡像文件掛載點
cd /var/ftp
mkdir centos7
#掛載鏡像文件
mount /dev/sr0 /var/ftp/centos7
#復制壓縮內核和系統初始化文件到tftp站點
cd centos7/images/pxeboot
cp initrd.img vmlinuz $tftp
#在tftp站點中創建啟動菜單存放位置
cd $tftp
mkdir pxelinux.cfg
cd pxelinux.cfg
#創建啟動菜單文件
cat >default <<-EOF
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.100.100/centos7 ks=ftp://192.168.100.100/ks.cfg
label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.100.100/centos7
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.100.100/centos7
EOF
#安裝系統工具
yum install system-config-kickstart -y
#創建系統安裝過程文件
cat >/var/ftp/ks.cfg <<-EOF
#platform=x86, AMD64, 或 Intel EM64T
#version=DEVEL
#Install OS instead of upgrade
install
#Keyboard layouts
keyboard 'us'
#Root password
rootpw --plaintext 123
#Use network installation
url --url="ftp://192.168.100.100/centos7/"
#System language
lang zh_CN
#System authorization information
auth --useshadow --passalgo=sha512
#Use graphical install
graphical
firstboot --disable
#SELinux configuration
selinux --disabled
#Firewall configuration
firewall --disabled
#Network information
network --bootproto=dhcp --device=ens33
#Reboot after installation
reboot
#System timezone
timezone Asia/Shanghai
#System bootloader configuration
bootloader --location=mbr
#Partition clearing information
clearpart --all
#Disk partitioning information
part /boot --fstype="xfs" --size=500
part swap --fstype="swap" --size=4096
part /home --fstype="xfs" --size=4096
part / --fstype="xfs" --grow --size=1
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools
%end
EOF
#關閉防火墻
systemctl stop firewalld.service
setenforce 0
#啟動所有服務
systemctl start dhcpd
systemctl start tftp
systemctl start vsftpd
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。