一 .制作全iso鏡像光盤
步驟:
createrepo -g repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml /app/fulliso 在該目錄下創(chuàng)建yum源
1 選擇一個在一個目錄下:例如/app下創(chuàng)建一個文件夾 mkdir /app/fulliso
2 準備yum源以及相關文件
cp -r /misc/cd/* /app/fulliso/
cp /misc/cd/.discinfo /misc/cd/.treeinfo /app/fulliso/ 將隱藏文件復制
rm -rf /app/fulliso/repodata/* 將原有的repodata下數據清除 蚂四,然后生成新的數據
find /app/fulliso -name TRANS.TBL -exec rm {} ; 刪除trans.tbl文件
cp /misc/cd/repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml /app/fulliso/repodata/ 43...-comps.xml是安裝保存組存放信息的文件哪痰,不可刪除
此時有關yum源相關數據設置完成
(3)準備應答文件
mkdir /app/fulliso/ks6.cfg
cp /root/anaconda-ks.cfg /app/fulliso/ks6.cfg
vim /app/fulliso/ks6.cfg
編寫安裝后腳本
cp ks6.cfg ks6-mini.cfg 準備兩個應答文件
(4)編輯啟動菜單
vim /app/fulliso/isolinux/isolinux.cfg
(5)制作iso文件
mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.9 autoinstall" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/centos6.iso /app/fulliso/
此時完整的iso鏡像光盤制作成功
將該鏡像光盤文件導出镇饺,用戶就可以通過該光盤進行掛載來實現(xiàn)自動安裝
安裝成功
二.實驗:基于網絡PXE自動化安裝CentOS 7
1 配置安裝環(huán)境
yum install dhcp tftp-server
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
systemctl restart dhcpd
systemctl enable dhcpd——開機自啟
systemctl start dhcpd——啟動服務
systemctl enable httpd
systemctl start httpd
mkdir /var/www/html/centos/7
mount /dev/sr0 /var/www/html/centos/7
2 準備應答文件
cp /root/anaconda-ks.cfg
/var/www/html/ksdir/ks7-1.cfg
chmod +r /var/www/html/ksdir/ks7-1.cfg
vim /var/www/html/ksdir/ks7-1.cfg
3 配置tftp服務
systemctl enable tftp.socket
systemctl start tftp.socket
4準備PXE相關文件
mkdir/var/lib/tftpboot/pxelinux.cfg——注意這是文件夾不文件
cp/usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/——復制相應的啟動文件和啟動選擇菜單
cp/misc/cd/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/——復制內核和虛擬根cp/misc/cd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default——復制開機啟動菜單文件
vim /var/lib/tftpboot/pxelinux.cfg/default——修改啟動菜單
最后查看文件列表結構
6 啟動安裝
三 基于網絡PXE自動化安裝CentOS 6
1 準備配置安裝環(huán)境
yum install vsftpd dhcp tftp-server syslinux-nonlinux
啟動下載好的服務
chkconfig vsftpd on
chkconfig dhcpd on
chkconfig tftp on
service xinetd restart
chkconfig vsftpd on
service vsftpd start
ss -nutlp
2 準備yum源
mkdir /var/ftp/pub/centos/6 -pv
mount /dev/sr0 /var/ftp/pub/centos/6
3 準備ks文件
mkdir /var/ftp/pub/ksdir
cp /root/anaconda.cfg /var/ftp/pub/ksdir/ks6-1.cfg
vim /var/ftp/pub/ksdir/ks6-1.cfg
4 配置DHCP服務
rpm -ql dhcp
cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
service dhcpd restart
5 準備PXE相關文件
rpm -ql syslinux-nonlinux
cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/
cp /misc/cd/images/pxeboot/{initrd.img,vmlinuz} /var/lib/tftpboot/
創(chuàng)建菜單文件
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /misc/cd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
6 編輯菜單選項
配置好后可以安裝
四 在centos7實現(xiàn)PXE安裝centos6和centos7
1 在7上添加一個6的鏡像光盤
echo '- - - ' > /sys/class/scsi_host/host2/scan
mount /dev/sr0 /var/www/html/centos/7
mount /dev/sr1 /var/www/html/centos/6
2 準備centos6,7的ks文件
scp /var/www/html/ksdir/ks6-1.cfg 192.168.136.170:/var/www/html/ksdir/
3 配置各自的內核
mkdir /var/lib/tftpboot/centos{6,7}
cp /var/www/html/centos/7/isolinux/{initrd.img,vmlinuz} /var/lib/tftpboot/centos7
cp /var/www/html/centos/6/isolinux/{initrd.img,vmlinuz} /var/lib/tftpboot/centos6
4 準備啟動菜單
cd /var/lib/tftpboot/
vim pxelinux.cfg/default
配置成功后開始選擇安裝
五 cobbler安裝系統(tǒng)
首先了解什么是cobbler
(1)概念:
Cobbler: 快速網絡安裝linux操作系統(tǒng)的服務绒瘦,支持眾多的Linux發(fā)行版:
Red Hat扣癣、Fedora、CentOS该酗、Debian、Ubuntu和 SuSE呜魄,也可以支持網絡安裝windows ?
PXE的二次封裝莱衩,將多種安裝參數封裝到一個菜單 ?
Python編寫 ?
提供了CLI和Web的管理形式
cobbler 服務集成 ?
pxe 服務 ?
DHCP ?
rsync ?
Http ?
DNS ?
Kickstart ?
IPMI 電源管理 ?
檢查cobbler環(huán)境 ?
cobbler check
(2)實驗:通過cobbler實現(xiàn)系統(tǒng)的安裝過程
1 yum install cobbler dhcp(cobbler依賴epel源)
開啟服務
systemctl enable cobblerd
systemctl start cobblerd
systemctl enable tftp
systemctl start tftp
systemctl enable httpd
systemctl start httpd
2 根據cobbler check檢查進行對應的修改
關閉防火墻和selinux
vim /etc/cobbler/settings
修改內容
next_server: 192.168.25.107
manage_dhcp: 1 ——自動生成dhcp配置文件笨蚁,由cobbler管理
server: 192.168.25.107
openssl passwd -1 生成口令
default_password_crypted: "加密口令"
systemctl restart cobblerd
cobbler sync
準備啟動文件和和菜單風格文件
有網絡環(huán)境時
cobbler get-loaders——會自動導入啟動文件和菜單
無網絡環(huán)境時
cp /var/lib/tftpboot/{menu.c32,pxelinux.0} /var/lib/cobbler/loaders
生成dhcp模版文件
vim /etc/cobbler/dhcp.template
subnet 192.168.25.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.25.100 192.168.25.254;
}
3 導入yum源
cobbler import --path=/misc/cd --name=centos7.3 --arch=x86_64——將文件拷到/var/www/ 生成了一個cobbler
cd cobbler 進入ks_mirror 查看拷貝過程
cobbler import --path=/misc/cd --name=centos6.9 --arch=x86_64-先導入6.9光盤
umount /misc/cd ls /misc/cd df 重新掛載
cobbler distro list-查看新生成的名字
cobbler profile list
4 生成ks
cp centos6.cfg centos7.cfg /var/lib/cobbler/kickstarts/
cobbler profile remove --name=centos6.9-x86_64
cobbler profile remove --name=centos7.3-x86_64
cobbler profile add --name=centos6.9_desktop --distro=centos6.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.cfg
cobbler profile add --name=centos7.3_mini --distro=centos7.3-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.cfg
cobbler sync