1、pxe准备工做
html
简要描述一下pxe,它是一种C/S架构的网络模式,主要借助于DHCP和TFTP服务器工做。客户机经过DHCP服务器获取IP地址后,继而转入预先设定的TFTP服务器,读取指定引导文件,然后进入操做系统开始工做。早期是运用于网络模式下无盘的工做站,现阶段pxe主要用来网络环境下安装操做系统。因此在使用pxe的方式安装操做系统前,必需要有一台主机做为DHCP服务器和TFTP服务器,而且客户机的网卡要支持网络启动。咱们知道,经过光盘安装操做系统主要是使用了anaconda程序做为引导程序,主要的程序文件是光盘里的isolinux/文件夹,咱们在安装系统时所做的互动选择,所有会生成anacondar的一个配置文件kickstart。因而咱们手动生成一个kickstart文件就可让系统全自动安装系统了。kickstart和pxe相结合,因而咱们就能够在网络环境下,实现一个系统的全自动安装了。pxe安装系统的技术主要应用于大匹量安装相同操做系统的工做。知道了这些咱们就能够开始实验了!linux
2、pxe安装Linuxweb
前言,为了方便实验,咱们须把虚拟机的网络通道改为一个小众通道。apache
一、配置dhcp、tftp服务器centos
1.一、安装dhcp、tftp服器bash
yum -y install dhcp xinetd tftp-server tftp #dhcp : dhcp服务器软件 #xinetd: 用于管理 tftp服务器 #tftp-server: tftp服务器端软件 #tftp: tftp客户端,用于测试tftp服务器
1.二、架设DHCP服务器,主机IP必需要设为静态的,配置一下IP地址。服务器
1.三、配置dhcp服务器网络
dhcp服务器的配置文件为/etc/dhcp/dhcpd.conf,咱们在配置文件中新加一个网络配置。架构
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.120 192.168.1.200; option routers 192.168.1.1; next-server 192.168.1.100; filename "pxelinux.0"; }
range表示分配IP地址的范围,option routers表示路由地址,next-server为tftp服务器的地址,filename是pxe的引导文件,该文件位于tftp服务器内。
app
1.四、启动dhcp服务
1.五、配置tftp服务器
安装完成后直接开启服务就好了
chkconfig tftp on
开启服务时直接开启xinetd
service xinetd start
tftp服务器的目录为/var/lib/tftpboot,端口号为69
使用ss命令测试服务状态:
ss -unl | grep ":69"
二、配置web服务器做为yum源,用于安装软件
2.一、开启apache做为咱们的web服务器,安装步骤不在此讨论。
2.二、挂载光盘
2.三、挂载光盘目录至web目录
mkdir /var/www/html/centos6 mount --bind /media/cdrom /var/www/html/centos6
三、给tftpboot目录准备文件
3.一、先准备pxelinux.0文件,pxelinux.0为syslinux自动生成,安装软件系统里就有该文件,pxelinux.0文件用于引导系统。
yum -y install syslinux cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
3.二、准备pxe专用的内核文件和initrd文件。
cp /media/cdrom/p_w_picpaths/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
3.三、准备isolinux引导文件
cp /media/cdrom/isolinux/{boot.msg,vesamenu.c32,splash.jpg} /var/lib/tftpboot/
3.四、准备pxelinux的配置文件,也就是安装光盘的isolinux.cfg文件,pxelinux.0文件就是用来代替isolinux.bin的,因此配置文件不变。
mkdir /var/lib/tftpboot/pxelinux.cfg cp /media/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
四、准备kickstart配置文件
系统安装完成后/root目录会有一个anaconda-ks.cfg文件,此文件即为kickstart配置文件,能够以此为模板修改,也可根据红帽官方文档手动配置一份,或者使用system-config-kickstart来生成。system-config-kickstart需在linux中事先安装,软件须在xmanger环境下运行。使用win7下的Xmanager软件可支持linux下的此软件运行图形窗口。咱们以/root/anaconda-ks.cfg做为模板,使用system-config-kickstart软件手动配置一份kickstart.cfg配置文件。
4.一、启动system-config-kickstart软件,并选择文件菜单导入/root/anaconda-ks.cfg配置文件。
4.二、选择http服务器地址
4.三、文件生成后保存到/var/www/html/目录下,取名为ks_sys.cfg。
#platform=x86, AMD64, or Intel EM64T #version=DEVEL # Firewall configuration firewall --disabled # Install OS instead of upgrade install text # Use network installation url --url="http://192.168.1.110/centos6" repo --name="PXE_CentOS" --baseurl=http://192.168.1.110/centos6 --cost=100 # Root password rootpw --iscrypted $1$TMtSfRcT$2madFo6eDfIVuaBOh/NPe1 # 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 Asia/Shanghai # Network information network --bootproto=dhcp --device=eth0 --onboot=on # System bootloader configuration bootloader --append="crashkernel=auto crashkernel=auto rhgb rhgb quiet quiet" --location=mbr --driveorder="sda" # Partition clearing information clearpart --all initlabel zerombr # Disk partitioning information part /boot --fstype="ext4" --size=100 part / --fstype="ext4" --size=60000 part swap --fstype="swap" --size=2000 %post echo -e 'wubinary \nhttp://wubinary.blog.51cto.com\n' >> /etc/issue sed -i '1,$s@id:[0-9]:initdefault:@id:3:initdefault:@g' /etc/inittab [ ! -d /root/.ssh ] && mkdir /root/.ssh && chmod og=--- /root/.ssh # Set the hostname sed -i "s@HOSTNAME=.*@HOSTNAME=wunbinary.blog.51cto.com@g" /etc/sysconfig/networks %end %packages %include http://192.168.1.110/packages.inc %end
五、修改文件/var/lib/tftpboot/pxelinux.cfg/default,在第一个标签项后面加上kickstart配置文件路径。
六、接下来新建一个拟虚拟机,选择同一网络通道,系统会自动进入pxe安装程序引导系统自动安装。
总结:实际操做时仍是须要重点研究kickstart.cgf配置文件要怎么写才能真正作到一次安装到位,永无后患!