歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

PXE+Kickstart安裝CentOS 6.0

下了CentOS 6.0,它的發布好像是很轟動的事,那幾天有關Linux的網站上到處是對其的大肆宣揚。我下的版本是CentOS-6.0-x86_64-bin-DVD,分為3個iso鏡像(其中1是服務器的主體,2是很多提供的rpm包,3是網絡啟動所需要的內核鏡像),使用Kickstart安裝時可以用iso1就夠了(親自驗證)完整安裝過程(使用虛擬機):

相關閱讀:CentOS 6.0 正式版發布附下載地址 http://www.linuxidc.com/Linux/2011-07/38273.htm

1、首先啟動一台已經安裝好系統的機器(我用的是CentOS 5.4),使用它作為TFTP服務器,DHCP服務器,FTP服務器。配置它們:

  1. yum -y install tftp 
  2. yum -y install tftp-server  //tftp的啟動是不需要daemon的,需要xinetd 
  3. yum -y install vsftpd 
  4. yum -y install dhcp 

2、簡單的配置以上這些服務:

  1. vim /etc/xinetd.d/tftp 
  2. --------------------- 
  3. service tftp 
  4. {   socket_type = dgram 
  5.     protocal = udp 
  6.     wait = yes 
  7.     user = root 
  8.     server = /usr/sbin/in.tftpd 
  9.     server_args = -s /tftpboot     //這些參數盡量和我寫的一致,不過也可以根據情況變更 
  10.     disable = no 
  11.     per_source = 11 
  12.     cps = 100 2 
  13.     flags = IPv4 
  14. --------------------- 
  15. vim /etc/dhcp/dhcpd.conf 
  16. --------------------- 
  17. ddns-update-style interiml; 
  18. ignore client-updates; 
  19. subnet 192.168.2.2 netmask 255.255.255.0 
  20. {   option routers    192.168.2.2;     //其中這個192.168.2.2是我這台服務器的ip地址 
  21.     option subnet-mask    255.255.255.0; 
  22.     filename "pxelinux.0"; 
  23.     next-server 192.168.2.2; 
  24.     option domain-name-servers 192.168.2.2; 
  25.     optime time-offset    -18000; 
  26.     range dynamic-bootp 192.168.2.3 192.168.2.30; 
  27.     default-lease-time 21000; 
  28.     max-lease-time 43200; 
  29. } 
  30. --------------------- 
  31. service vsftpd start 
  32. service xinetd restart 
  33. service dhcpd restart 

3、建立可供需要安裝系統的計算機使用的啟動引導文件:

  1. mkdir /tftpboot 
  2. mkdir /tftpboot/pxelinux.cfg 
  3. cp /.../pxelinux.0 /tftpboot/    //其中的...是根據自己電腦上路徑填寫的,也就是找到pxelinux.0這個文件 
  4. cp /media/CentOS-6.0-netinstall/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default    //先將iso3掛載,將裡面的isolinux.cfg initrd vmlinuz復制出來 
  5. cp /media/CentOS-6.0-netinstall/images/pxeboot/initrd.img /tftpboot/ 
  6. cp /media/CentOS-6.0-netinstall/images/pxeboot/vmlinuz /tftpboot/ 
  7. chmod u+w /tftpboot/pxelinux.cfg/default 
  8.  
  9. vim /tftpboot/pxelinux.cfg/default 
  10. ------------------- 
  11. default fenix 
  12. prompt 1 
  13. timeout 600 
  14. display boot.list 
  15.  
  16. label fenix 
  17.   menu label ^Install or upgrade an existing system 
  18.   menu default 
  19.   kernel vmlinuz 
  20.   append initrd=initrd.img ks=ftp://192.168.2.2/ks.cfg 
  21. ------------------- 

4、編寫Kickstart自動安裝腳本(可以使用system-config-kickstart可視程序生成):

  1. vim /var/ftp/ks.cfg 
  2. ------------------ 
  3.  auth  --useshadow  --enablemd5 
  4.  bootloader --location=mbr 
  5.  zerombr 
  6.  clearpart --all --initlabel 
  7.  graphical 
  8.  firewall --disabled 
  9.  firstboot --disable 
  10.  keyboard us 
  11.  lang zh_CN 
  12.  logging --level=info 
  13.  url --url=ftp://192.168.2.2/pub  //這個路徑實際就是/var/ftp/pub
  14.  network --bootproto=dhcp --device=eth0 --onboot=on 
  15.  reboot 
  16.  rootpw --iscrypted $1$DWk4vKDK$r5rJS12L5XW1G8CdTdDvm0 
  17.  
  18.  selinux --disabled 
  19.  timezone --isUtc Asia/Shanghai 
  20.  install 
  21.  part /boot --fstype=ext3 --size=128 
  22.  part / --fstype=ext3 --size=1 --grow 
  23.  part swap --recommended 
  24.  
  25.  %packages       //我沒有安裝X Window 
  26. ------------------ 

5、將CentOS-6.0的第一個鏡像,掛載在/var/ftp/pub中。

6、好了,現在就可以在網絡上啟動需要安裝系統的機器了,前提是該機器的網卡必須支持PXE,並在BIOS中選擇從網絡啟動。啟動時什麼都不需要點,首先它會自動使用PXE在網絡上搜索DHCP服務器,並獲取IP;然後通過TFTP服務器將initrd.img和vmlinuz從服務器上提取下來裝入自己的內存;然後啟動anaconda安裝,因為是從netinstall上提取的vmlinuz,它會自動識別為網絡安裝,然後搜索到FTP服務器,從上提取出Kickstart腳本ks.cfg;最後按照腳本安裝系統。

Copyright © Linux教程網 All Rights Reserved