經典安裝作業系統通常以光碟方式安裝,或是以usb方式。這些安裝方式有一個共通毛病就是耗時,若只有一台電腦還可以,那10台..50台或是100台電腦?
這邊就是要討論以PXE網路開機方式大量安裝作業系統,以節省時間。
yum install dhcp dhcp-devel tftp-server tftp
vim /etc/dhcp/dhcpd.conf
option domain-name "Qoop.com"; default-lease-time 600; max-lease-time 7200; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.170 192.168.0.172; option domain-name-servers 192.168.0.53; host TESTKS.Qoop.com {hardware ethernet 42:70:e4:f1:6b:d8;fixed-address 192.168.0.170;} -->以ip及MAC Address綑綁在一起 (MAC Address 是那一台要安裝作業系統的網卡位址) next-server 192.168.0.62; -->指定bootloader是在哪台機器上(也就是 tftp-server) filename "pxelinux.0"; -->bootloader程式的檔名 }
檢查設定檔格式及語法是否正確
/etc/init.d/dhcpd configtest Syntax: OK
正確後,啟動dhcpd服務
/etc/init.d/dhcpd start Starting dhcpd: [ OK ]
vim /etc/xinetd.d/tftp
service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /tftpboot --->tftp分享的目錄 disable = no per_source = 11 cps = 100 2 flags = IPv4 }
建立分享目錄,另外把pxelinu.0放置在/tftpboot/根下
mkdir /tftpboot 這邊是用 syslinux導引系統,用它的pxelinux.0 sample檔 #rpm -ql syslinux|grep -i pxelinux.0 /usr/share/syslinux/pxelinux.0 #cp /usr/share/syslinux/pxelinux.0 /tftpboot
在/tftpboot/下再建立一個目錄pxelinux.cfg/,此目錄主要是bootloader的設定檔(開機選單)
mkdir /tftpboot/pxelinux.cfg
/etc/init.d/xinetd start
#setenforce 0 #/etc/init.d/iptables stop
測試tftp傳輸是否正常
tftp
若無Apache httpd server 就安裝 #yum install httpd 建立安裝媒體目錄 mkdir /var/www/html/Centos6 掛載centos6.iso到媒體目錄 mount -o loop centos6.iso /var/www/html/Centos6 測試網頁狀況(Installer安裝在192.168.0.62) links http://192.168.0.62/Centos6
#vim /tftpboot/pxelinux.cfg/default 內容為: DEFAULT TEST -->(預設以哪一個label啟動) PROMPT 1 -->(是否要提示訊息 0:為否;1為是) TIMEOUT 50 -->(等待時間;單位 1/10秒) #DISPLAY BOOT.MSG -->(開機訊息檔 /tftpboot/boot.img) LABEL TEST kernel vmlinuz_x86 append initrd=initrd_x86.img noipv6 ks=http://192.168.0.62/ks/ks.cfg ksdevice=eth0
複製Centos6 kernel及initrd等img檔到/tftpboot/
#cp /var/www/html/Centos6_x86/images/pxeboot/vmlinuz /tftpboot/vmlinuz_x86 #cp /var/www/html/Centos6_x86/images/pxeboot/initrd.img /tftpboot/initrd_x86.img
ks檔是自動化安裝重要的文件,它會將需要安裝套件,設定,安裝前設定或安裝後設定都寫在此檔中
通常編輯ks檔都會安裝system-config-kickstart套件,是圖形介面編輯,要不然就拿現有範本檔做修改
從BIOS調整網路開機