最近遇到一个问题,公司内部的服务器由于比较老,光驱坏了,也不支持U盘启动,所以没办法,只能用pxe来安装操作系统。网上教程很多,但是不够清晰,下来我来写一下我的安转过程。
A.安装dhcp服务器
yum install dhcpvim /etc/dhcp/dhcpd.conf#可以直接拷贝我的下列配置,修改子网即可ddns-update-style interim;ignore client-updates;allow booting;allow bootp;subnet 192.168.2.0 netmask 255.255.255.0 { range 192.168.2.250 192.168.2.253; option routers 192.168.2.1; option subnet-mask 255.255.255.0; default-lease-time 21600; max-lease-time 43200; next-server 192.168.2.136; filename "pxelinux.0";}
备注:
next-server:指定的地址是你启动文件存放的那个服务器,一般是tftp服务器地址。
启动dhcp服务器,如果报错,查看/var/log/message
chkconfig --add dhcpdservice dhcpd start
B.安装tftp服务器
yum install tftp-server/etc/xinetd.d/tftp#直接拷贝即可service tftp{ socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4}
启动
/etc/init.d/xinetd restart
C.安装一个http/nfs/ftp 中的任意一个即可,用来存放ks.cfg和iso镜像文件。
我选用http
yum install httpd /etc/init.d/httpd startchkconfig httpd on
D.配置tftp里面的所需文件
#引导文件yum install syslinux cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot#内核文件,把光盘挂在在/mnt即可。cp /mnt/p_w_picpaths/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpbootmkdir /var/lib/tftpboot/pxelinux.cfgcp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/defaultvim /var/lib/tftpboot/pxelinux.cfg/default#修改为如下,修改自己的服务器地址即可。default linuxprompt 1timeout 600display boot.msgmenu background splash.jpgmenu title Welcome to CentOS 6.6!menu color border 0 #ffffffff #00000000menu color sel 7 #ffffffff #ff000000menu color title 0 #ffffffff #00000000menu color tabmsg 0 #ffffffff #00000000menu color unsel 0 #ffffffff #00000000menu color hotsel 0 #ff000000 #ffffffffmenu color hotkey 7 #ffffffff #ff000000menu color scrollbar 0 #ffffffff #00000000label linux menu label ^Install or upgrade an existing system menu default kernel vmlinuz append ks=http://192.168.2.136/ks.cfg initrd=initrd.imglabel vesa menu label Install system with ^basic video driver kernel vmlinuz append initrd=initrd.img xdriver=vesa nomodesetlabel rescue menu label ^Rescue installed system kernel vmlinuz append initrd=initrd.img rescuelabel local menu label Boot from ^local drive localboot 0xfffflabel memtest86 menu label ^Memory test kernel memtest append -
E.配置kickstart
#安装镜像位置mkdir /var/www/html/dvdcp -r /mnt/* /var/www/html/dvd#配置kickstart文件yum install system-config-kickstartcp /root/anaconda-ks.cfg /var/www/html/ks.cfg vi ks.cfg#可以直接拷贝下列文件,注意http服务器修改为自己的即可。# Install OS instead of upgradeinstall# Use network installationurl --url="http://192.168.2.136/dvd"# Root passwordrootpw --iscrypted $1$t8TZKP5c$0OdX9sWkdoYuZlIXBkU8R.# System authorization informationauth --useshadow --passalgo=sha512# Use graphical installgraphicalfirstboot --disable# System keyboardkeyboard us# System languagelang en_US# SELinux configurationselinux --disabled# Installation logging levellogging --level=info# Reboot after installationreboot# System timezonetimezone --isUtc Asia/Shanghai# System bootloader configurationbootloader --location=mbr# Partition clearing informationclearpart --all%packages@base%end
F.配置结束,可以找一台主板具有pxe的功能机子测试即可。
据我所知,目前大部分PC机就支持的。