下了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服務器。配置它們:
- yum -y install tftp
- yum -y install tftp-server //tftp的啟動是不需要daemon的,需要xinetd
- yum -y install vsftpd
- yum -y install dhcp
2、簡單的配置以上這些服務:
- vim /etc/xinetd.d/tftp
- ---------------------
- service tftp
- { socket_type = dgram
- protocal = udp
- wait = yes
- user = root
- server = /usr/sbin/in.tftpd
- server_args = -s /tftpboot //這些參數盡量和我寫的一致,不過也可以根據情況變更
- disable = no
- per_source = 11
- cps = 100 2
- flags = IPv4
- }
- ---------------------
- vim /etc/dhcp/dhcpd.conf
- ---------------------
- ddns-update-style interiml;
- ignore client-updates;
- subnet 192.168.2.2 netmask 255.255.255.0
- { option routers 192.168.2.2; //其中這個192.168.2.2是我這台服務器的ip地址
- option subnet-mask 255.255.255.0;
- filename "pxelinux.0";
- next-server 192.168.2.2;
- option domain-name-servers 192.168.2.2;
- optime time-offset -18000;
- range dynamic-bootp 192.168.2.3 192.168.2.30;
- default-lease-time 21000;
- max-lease-time 43200;
- }
- ---------------------
- service vsftpd start
- service xinetd restart
- service dhcpd restart
3、建立可供需要安裝系統的計算機使用的啟動引導文件:
- mkdir /tftpboot
- mkdir /tftpboot/pxelinux.cfg
- cp /.../pxelinux.0 /tftpboot/ //其中的...是根據自己電腦上路徑填寫的,也就是找到pxelinux.0這個文件
- cp /media/CentOS-6.0-netinstall/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default //先將iso3掛載,將裡面的isolinux.cfg initrd vmlinuz復制出來
- cp /media/CentOS-6.0-netinstall/images/pxeboot/initrd.img /tftpboot/
- cp /media/CentOS-6.0-netinstall/images/pxeboot/vmlinuz /tftpboot/
- chmod u+w /tftpboot/pxelinux.cfg/default
- vim /tftpboot/pxelinux.cfg/default
- -------------------
- default fenix
- prompt 1
- timeout 600
- display boot.list
- label fenix
- menu label ^Install or upgrade an existing system
- menu default
- kernel vmlinuz
- append initrd=initrd.img ks=ftp://192.168.2.2/ks.cfg
- -------------------
4、編寫Kickstart自動安裝腳本(可以使用system-config-kickstart可視程序生成):
- vim /var/ftp/ks.cfg
- ------------------
- auth --useshadow --enablemd5
- bootloader --location=mbr
- zerombr
- clearpart --all --initlabel
- graphical
- firewall --disabled
- firstboot --disable
- keyboard us
- lang zh_CN
- logging --level=info
- url --url=ftp://192.168.2.2/pub //這個路徑實際就是/var/ftp/pub
- network --bootproto=dhcp --device=eth0 --onboot=on
- reboot
- rootpw --iscrypted $1$DWk4vKDK$r5rJS12L5XW1G8CdTdDvm0
- selinux --disabled
- timezone --isUtc Asia/Shanghai
- install
- part /boot --fstype=ext3 --size=128
- part / --fstype=ext3 --size=1 --grow
- part swap --recommended
- %packages //我沒有安裝X Window
- ------------------
5、將CentOS-6.0的第一個鏡像,掛載在/var/ftp/pub中。
6、好了,現在就可以在網絡上啟動需要安裝系統的機器了,前提是該機器的網卡必須支持PXE,並在BIOS中選擇從網絡啟動。啟動時什麼都不需要點,首先它會自動使用PXE在網絡上搜索DHCP服務器,並獲取IP;然後通過TFTP服務器將initrd.img和vmlinuz從服務器上提取下來裝入自己的內存;然後啟動anaconda安裝,因為是從netinstall上提取的vmlinuz,它會自動識別為網絡安裝,然後搜索到FTP服務器,從上提取出Kickstart腳本ks.cfg;最後按照腳本安裝系統。