最近遇到一个问题,公司内部的服务器由于比较老,光驱坏了,也不支持U盘启动,所以没办法,只能用pxe来安装操作系统。网上教程很多,但是不够清晰,下来我来写一下我的安转过程。
A.安装dhcp服务器
yum install dhcp vim /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 dhcpd service 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 start chkconfig 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/tftpboot mkdir /var/lib/tftpboot/pxelinux.cfg cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default vim /var/lib/tftpboot/pxelinux.cfg/default #修改为如下,修改自己的服务器地址即可。 default linux prompt 1 timeout 600 display boot.msg menu background splash.jpg menu title Welcome to CentOS 6.6! 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 linux menu label ^Install or upgrade an existing system menu default kernel vmlinuz append ks=http://192.168.2.136/ks.cfg initrd=initrd.img label vesa menu label Install system with ^basic video driver kernel vmlinuz append initrd=initrd.img xdriver=vesa nomodeset label rescue menu label ^Rescue installed system kernel vmlinuz append initrd=initrd.img rescue label local menu label Boot from ^local drive localboot 0xffff label memtest86 menu label ^Memory test kernel memtest append -
E.配置kickstart
#安装镜像位置 mkdir /var/www/html/dvd cp -r /mnt/* /var/www/html/dvd #配置kickstart文件 yum install system-config-kickstart cp /root/anaconda-ks.cfg /var/www/html/ks.cfg vi ks.cfg #可以直接拷贝下列文件,注意http服务器修改为自己的即可。 # Install OS instead of upgrade install # Use network installation url --url="http://192.168.2.136/dvd" # Root password rootpw --iscrypted $1$t8TZKP5c$0OdX9sWkdoYuZlIXBkU8R. # System authorization information auth --useshadow --passalgo=sha512 # Use graphical install graphical firstboot --disable # System keyboard keyboard us # System language lang en_US # SELinux configuration selinux --disabled # Installation logging level logging --level=info # Reboot after installation reboot # System timezone timezone --isUtc Asia/Shanghai # System bootloader configuration bootloader --location=mbr # Partition clearing information clearpart --all %packages @base %end
F.配置结束,可以找一台主板具有pxe的功能机子测试即可。
据我所知,目前大部分PC机就支持的。