pxe實現自動化安裝centos系統
阿新 • • 發佈:2018-06-15
端口 錯誤 安裝系統 打開 use time splay rom sha 實驗:pxe實現自動化安裝centos7系統
將配置搭建為如下框架: . ├── initrd.img ├── menu.c32 ├── pxelinux.0 ├── pxelinux.cfg │?? └── default └── vmlinuz (1)A機器配置 yum info tftp-server httpd dhcp syslinux syslinux提供pxelinux.0引導文件 #chkconfig tftp on 開啟有xinetd守護的tftp服務 centos6上 #vim /etc/xinetd.d/tftp 也可以直接改文件 /var/lib/tftpboot 此為tftp服務的共享目錄,裸機網卡內置的tftp客戶端可以從此獲取文件 可以安裝tftp客戶端進行獲取文件測試,tftp 172.18.62.60命令連接服務端,get獲取共享目 錄的文件; cd /var/lib/tftpboot cp /mnt/centos7/isolinux/{initrd.img,vmlinuz} . 復制內核和根文件系統到此目錄下 updatedb 更新數據庫 locate pxelinux.0 用locate命令查詢引導文件 cp /usr/share/syslinux/pxelinux.0 . 復制syslinux包生成的引導文件pxelinux.0到當前目 錄; cp /usr/share/syslinux/menu.c32 . 復制syslinux包的menu.c32文件到當前目錄作為啟 動菜單的背景; mkdir pxelinux.cfg cp /mnt/centos7/isolinux/isolinux.cfg pxelinux.cfg/default 復制菜單文件到當前創建的目 錄,並改名; vim pxelinux.cfg/default default menu.c32 timeout 600 menu title PXE INSTALL CentOS label desktop menu label ^Install Desktop CentOS 7 kernel vmlinuz append initrd=initrd.img ks=http://172.18.62.60/ks/ks7-pxe-desktop.cfg label mimi menu label install ^Mini CentOS 7 kernel 7/vmlinuz append initrd=7/initrd.img ks=http://172.18.62.60/ks/ks7-pxe-mini.cfg label local menu default menu label Boot from ^local drive localboot 0xffff menu end systemctl start tftp 開啟服務 cd /var/www/html/ mkdir centos/7/ -pv mkdir ks/ cd ks 放入用工具或自己模板修改做好的ks文件如下: ├── ks7-pxe-desktop.cfg └── ks7-pxe-mini.cfg chmod 644 * mount /dev/sr0 centos/7/ 掛載系統到此目錄下,ks文件寫入此系統安裝路徑 systemctl start httpd vim /etc/dhcp/dhcpd.conf option domain-name "yongstar.tech"; 全局配置 option domain-name-servers 114.114.114.114,8.8.8.8; default-lease-time 86400; max-lease-time 864000; subnet 172.18.0.0 netmask 255.255.0.0 { range 172.18.62.70 172.18.62.200; option routers 172.18.0.1; filename "pxelinux.0"; pxe配置的啟動文件名 next-server 172.18.62.60; tftp的地址 } systemctl start dhcpd 確保67、69、80端口的打開 (2)要安裝系統的機器配置 虛擬機全局配置不能使用本地dhcp獲取地址,而要使用搭建的dhcp服務 網絡模式要設置為僅主機模式 centos7桌面版安裝時內存需要大於1024M (3)實驗升級,實現在centos7上搭建可以同時安裝centos6和centos7的系統的架構 cd /var/www/html/ks rz 將做好的ks文件導入實現如下: . ├── ks6-pxe-desktop.cfg ├── ks6-pxe-mini.cfg ├── ks7-pxe-desktop.cfg └── ks7-pxe-mini.cfg chmod 644 * cd .. mkdir centos/6 mount /dev/sr1 centos/6/ 做好centos6的系統倉庫 cd /var/lib/tftpboot/ mkdir {6,7} vim pxelinux.cfg/default default menu.c32 timeout 600 menu title PXE INSTALL CentOS label desktop menu label ^Install Desktop CentOS 7 kernel 7/vmlinuz append initrd=7/initrd.img ks=http://172.18.62.60/ks/ks7-pxe-desktop.cfg label desktop menu label ^Install Desktop CentOS 6 kernel 6/vmlinuz append initrd=6/initrd.img ks=http://172.18.62.60/ks/ks6-pxe-desktop.cfg label mimi menu label install ^Mini CentOS 7 kernel 7/vmlinuz append initrd=7/initrd.img ks=http://172.18.62.60/ks/ks7-pxe-mini.cfg label mimi menu label install ^Mini CentOS 6 kernel 6/vmlinuz append initrd=6/initrd.img ks=http://172.18.62.60/ks/ks6-pxe-mini.cfg 路徑要對,否則 會出現很詭異錯誤,如內核指令集被禁用等; label local menu default menu label Boot from ^local drive localboot 0xffff menu end mv initrd.img 7/ mv vmlinuz 7/ cp /var/www/html/centos/6/isolinux/{initrd.img,vmlinuz} 6/ 形成如下目錄: . ├── 6 │ ├── initrd.img │ └── vmlinuz ├── 7 │ ├── initrd.img │ └── vmlinuz ├── menu.c32 ├── pxelinux.0 └── pxelinux.cfg └── default
實驗:centos6實現pxe自動化安裝系統
(1)A機器配置 yum install httpd tftp-server dhcp syslinux chkconfig httpd on chkconfig dhcpd on chkconfig --list chkconfig tftp on cd /etc/dhcp/ cat dhcpd.conf 發現沒有內容 cp /usr/share/doc/dhcp*/dhcpd.conf.sample dhcpd.conf 拷貝配置文件示例 vim dhcpd.conf subnet 172.18.0.0 netmask 255.255.0.0 { range 172.18.62.10 172.18.62.50; filename "pxelinux.0"; next-server 172.18.62.50; } service dhcpd start ss -nul cd /var/www/html/ mkdir centos/6 -pv mount /dev/sr0 centos/6/ mkdir ksdir cd ksdir/ rz 導入應答文件 vim ks7-pxe-desktop.cfg 安裝centos7系統,加入此3行可以保證全自動 eula --agreed systemctl set-default multi-user.target systemctl disable initial-setup-graphical.service mv ks6-mini_\(2\).cfg ks6-pxe-mini.cfg mv ks6-desktop.cfg ks6-pxe-desktop.cfg chmod 644 * cd /var/lib/tftpboot/ yum install mlocate updatedb locate pxelinux.0 cp /usr/share/syslinux/pxelinux.0 . cp /mnt/centos6/isolinux/{initrd.img,vmlinuz} . cp /mnt/centos6/isolinux/{boot.msg,vesamenu.c32} . 復制菜單布局文件 mkdir pxelinux.cfg cp /mnt/centos6/isolinux/isolinux.cfg pxelinux.cfg/default vim pxelinux.cfg/default default vesamenu.c32 #prompt 1 timeout 600 display boot.msg menu background splash.jpg menu title PXE INSTALL CentOS 6.9! menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000 menu color title 0 #ffffffff #00000000 menu color tabmsg 0 #ffffffff #00000000 menu color unsel 0 #ffffffff #00000000 menu color hotsel 0 #ff000000 #ffffffff menu color hotkey 7 #ffffffff #ff000000 menu color scrollbar 0 #ffffffff #00000000 label desktop menu label ^Install an Desktop system menu default kernel vmlinuz append initrd=initrd.img ks=http://172.18.62.50/ksdir/ks6-pxe-desktop.cfg label mini menu label Install ^Mini system kernel vmlinuz append initrd=initrd.img ks=http://172.18.62.50/ksdir/ks6-pxe-mini.cfg label local menu label Boot from ^local drive localboot 0xffff cp /mnt/centos6/isolinux/splash.jpg . ss -nutl 確保67、69、80端口打開 (2)要安裝系統的機器配置 虛擬機全局配置不能使用本地dhcp獲取地址,而要使用搭建的dhcp服務 網絡模式要設置為僅主機模式 centos6桌面版安裝時內存不需要需要大於1024M 註意:磁盤選擇的大小和ks內的設置分區關系密切
pxe實現自動化安裝centos系統