Linux YUM仓库服务于PXE网络装机

PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系统等。今天我们演示linux rhel6.5下的PXE网络装机
PXE最直接的表现是,在网络环境下工作站可以省去硬盘,但又不是通常所说的无盘站的概念,因为使用该
PXE网卡-WY574T
PXE网卡-WY574T
技术的PC在网络方式下的运行速度要比有盘PC快3倍以上。当然使用PXE的PC也不是传统意义上的TERMINAL终端,因为使用了PXE的PC并不消耗服务器的CPU,RAM等资源,故服务器的硬件要求极低。
PXE启动原理
当计算机引导时,BIOS把 PXE Client 调入内存中执行,然后由 PXE Client 将放置在远端的文件通过网络下载到本地运行。
Linux YUM仓库服务于PXE网络装机
一、 实验环境:
2台Linux系统(RHEL6.5版本),1台作为:PXE远程安装服务器,另1台作为:客户端(未装RHEL6.5系统)
二、 实验步骤:
1.搭建PXE远程安装服务器:
执行:
Iptables -F 或 service iptables stop
(清空iptables防火墙默认策略,或停止iptables服务)
Linux YUM仓库服务于PXE网络装机_第1张图片
(1)配置服务器IP地址:
Ifconfig eth1 192.168.100.1

  1. 挂载RHEL6.5光盘,执行:
    mount /dev/sr0 /mnt
    在这里插入图片描述

  2. 建立服务器的YUM仓库文件rhel6.repo(服务器自己的YUM为:本地源)
    rm -f /etc/yum.repo.d/*.repo
    vim /etc/yum.repo.d/rhel6.repo
    文件内容如下:
    [base]
    name=Red Hat Enterprise Linux
    baseurl=file:///mnt (本地源,系统光盘的挂载目录)
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
    Linux YUM仓库服务于PXE网络装机_第2张图片

  3. 安装vsftpd服务(使用YUM方式安装,验证本地源YUM仓库),执行:
    yum -y install vsftpd(本次实验由于很多次软件已经安装过所以显示nothing to do 正常状态显示Complete!即为安装成功)
    重启vsftpd服务
    service vsftpd restart
    查看端口 netstat -anpt | grep vsftpd 看到有服务
    Linux YUM仓库服务于PXE网络装机_第3张图片
    复制光盘文件到ftp服务器的共享目录rhel6中,执行:
    mkdir /var/ftp/rhel6.5
    cp -rf /mnt/* /var/ftp/rhel6.5

  4. 验证ftp服务是否正常:
    打开服务器的火狐浏览器,输入:ftp://192.168.113.100,如果能看到rhel6.5共享目录,则说明服务器的ftp服务运行正常
    Linux YUM仓库服务于PXE网络装机_第4张图片
    这步成功后再进行下一步

  5. 安装并启用tftp服务
    a) 安装tftp服务
    yum -y install tftp-server
    Linux YUM仓库服务于PXE网络装机_第5张图片
    vim /etc/xinetd.d/tftp

修改:“disable = yes”为“disable = no”
Linux YUM仓库服务于PXE网络装机_第6张图片
b) 重新启动tftp服务:
service xinetd restart
在这里插入图片描述
6) 准备客户端主机无盘启动时所需的Linux内核、初始化镜像文件:
cd /mnt/images/pxeboot
cp vmlinuz initrd.img /var/lib/tftpboot
Linux YUM仓库服务于PXE网络装机_第7张图片
7) 准备客户端主机无盘启动时所需的PXE引导程序、启动菜单文件
a) 安装syslinux软件包(支持PXE功能)
yum -y install syslinux
b) 复制PXE引导程序
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
Linux YUM仓库服务于PXE网络装机_第8张图片

c) 建立启动菜单文件
mkdir /var/lib/tftpboot/pxelinux.cfg
vim /var/lib/tftpboot/pxelinux.cfg/default
Linux YUM仓库服务于PXE网络装机_第9张图片

内容如下:
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img devfs=nomount ramdisk_size=8192
label linux text
kernel vmlinuz
append text initrd=initrd.img devfs=nomount ramdisk_size=8192
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img devfs=nomount ramdisk_size=8192

  1. 安装并启用DHCP服务:
    a) 安装dhcp服务
    yum -y install dhcp
    Linux YUM仓库服务于PXE网络装机_第10张图片
    b) 复制dhcp配置例子文件
    cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

(版本不同,dhcp*代表的目录名也不同,使用tab键补全即可)
c) 首先删除dhcpd.conf文件中的subnet 语句后的所有内容
d) 再添加dhcpd.conf文件中所需要的内容:(DHCP不懂得可以看我的DHCP配置博客)
Linux YUM仓库服务于PXE网络装机_第11张图片

e) 启动dhcp服务:
service dhcpd start
在这里插入图片描述
注意:dhcp服务的配置文件应根据实际情况而写:

  1. subnet后的网段地址(主机号为0)、子网掩码;
  2. rangge后的起始与结束IP地址,都应根据dhcp服务器本机的IP地址而定
  3. 也就是说:pxe无盘客户端的IP地址应与dhcp服务器本机的IP地址在同一地址段,如果不在同一网段,则网络中还需要配置路由器、配置dhcp中继代理方能实现IP地址的分配
  4. next-server后面的IP地址为:tftp服务器的IP地址
  5. 本实验环境:dhcp服务器、tftp服务器都是同一服务器即:192.168.100.1
  6. 如果dhcp服务不能启动成功,则查看系统日志中关于dhcp服务的错误信息,根据提示再次修改dhcpd.conf文件,再尝试启动。
    查看日志操作如下:
    cat /var/log/message | grep dhcp | more
    Linux YUM仓库服务于PXE网络装机_第12张图片
  1. 验证PXE网络装机:(客户机上操作)(这个不演示,请看下一个无人值守演示)
    a) 如果客户端是一台物理机,只需网卡支持pxe无盘引
    导,并在BIOS中开启网卡的pxe功能
    b) 虚拟机环境:新建一台RHEL6.0虚拟机(客户端)
    内存1G内存
    硬盘:默认即可
    网卡连接方式:与服务器相同(如:vmnet1)
    c) 禁用vmware的dhcp功能(此步很重要)
    d) 启动虚拟机,看到boot: 提示符,说明服务器端配置
    成功!
    e) 安装方式应选择:URL方式
    URL信息应填写为:ftp://192.168.100.1/rhel6.5
    填写完成后,可执行后续的安装,直到系统安装完成
  2. 实现客户端的Kickstart无人值守安装:(在服务器上操作)
    c) 安装system-config-kickstart软件包
    yum -y install system-config-kickstart
    Linux YUM仓库服务于PXE网络装机_第13张图片
    b) 打开kisckstart配置程序:
    应用程序-----系统工具-----kickstart
    Linux YUM仓库服务于PXE网络装机_第14张图片
    进行相应的配置:(除必须其他可以自行选择配置,)
    必须设置root口令
    必须指定安装方法:FTP
    ftp服务器:ftp://192.168.100.1
    ftp目录:rhel6.5
    必须设置分区:
    清除主引导记录
    删除所有现存分区
    添加磁盘分区:
    /boot ext4 500M
    swap 2048M
    / ext4 未使用的全部磁盘空间
    Linux YUM仓库服务于PXE网络装机_第15张图片
    Linux YUM仓库服务于PXE网络装机_第16张图片
    Linux YUM仓库服务于PXE网络装机_第17张图片
    Linux YUM仓库服务于PXE网络装机_第18张图片
    Linux YUM仓库服务于PXE网络装机_第19张图片

c) 保存自动应答文件:/root/ks.cfg
d) 启用自动应答文件
cp /root/ks.cfg /var/ftp/rhel6.5
e) 修改启动菜单文件default
vim /var/lib/tftpboot/pxelinux.cfg/default
修改内容:红色字体部分
default auto
prompt 0
label auto
kernel vmlinuz
append ks=ftp://192.168.100.1/rhel6/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=8192

				其它内容保持不动

Linux YUM仓库服务于PXE网络装机_第20张图片
f) 启动客户端验证无人值守安装,如果能看到软件包复制过程,则说明无人值守配置成功,可继续等待自动安装,直到安装完毕

打开客户端就是这个界面接下来就安装成功了,OK继续就行
Linux YUM仓库服务于PXE网络装机_第21张图片
最后给一个YUM网络源配置实验教程
一、 实验环境:
2台Linux系统(RHEL6.0版本),1台作为:网络源YUM仓库服务器,另1台作为:YUM仓库客户端,验证网络源YUM仓库是否正常
二、 实验步骤:
1、 配置网络源YUM仓库(服务器)

  1. 修改selinux防火墙配置文件,禁止SELINUX服务,并重启Linux系统
  2. 重启完成后,执行:
    Iptables -F 或 service iptables stop
    (清空iptables防火墙默认策略,或停止iptables服务)
  3. 配置服务器IP地址:
    Ifconfig eth0 192.168.113.110/24
    (注意:RHEL6.0系统网卡设备名可能会改变,请先执行ifconfig查看网卡设备名是否为eth0,)
  4. 挂载RHEL6.0光盘,执行:
    mount /dev/sr0 /mnt
  5. 建立服务器的YUM仓库文件rhel6.repo(服务器自己的YUM为:本地源)
    rm -f /etc/yum.repo.d/*.repo
    vim /etc/yum.repo.d/rhel6.repo
    文件内容如下:
    [base]
    name=Red Hat Enterprise Linux
    baseurl=file:///mnt (本地源,系统光盘的挂载目录)
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
  6. 安装vsftpd服务(使用YUM方式安装,验证本地源YUM仓库),执行:
    yum -y install vsftpd
    service vsftpd start
    netstat -anpt | grep vsftpd
  7. 复制光盘文件到ftp服务器的共享目录rhel6中,执行:
    mkdir /var/ftp/rhel6
    cp -rf /mnt/* /var/ftp/rhel6
    2、 配置YUM仓库客户端:
  8. 修改selinux防火墙配置文件,禁止SELINUX服务,并重启Linux系统
  9. 重启完成后,执行:
    Iptables -F 或 service iptables stop
    (清空iptables防火墙默认策略,或停止iptables服务)
  10. 配置客户端IP地址:
    Ifconfig eth0 192.168.113.10/24
  11. 测试与服务器的连通性:
    ping 192.168.113.100
    ftp 192.168.113.100
    用户名:ftp(匿名用户)
    密码:回车
    ftp>ls
    如果可看到rhel6目录,则说明网络连通性良好,并且服务器端的ftp服务运行正常
    (注意:如果RHEL6.0系统未安装ftp客户端软件,可在Linux桌面中打开火狐浏览器,输入:ftp://192.168.113.100访问即可)
  12. 建立客户端的YUM仓库文件rhel6.repo(客户端YUM为:网络源)
    rm -f /etc/yum.repo.d/*.repo
    vim /etc/yum.repo.d/rhel6.repo
    文件内容如下:
    [base]
    name=Red Hat Enterprise Linux
    baseurl=ftp://192.168.113.100/rhel6 (网络源,ftp服务器的共享目录)
    enabled=1
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
  13. 安装ftp客户端软件(使用YUM方式安装,验证本地源YUM仓库),执行:
    yum -y install ftp

如有问题,欢迎大家指正

你可能感兴趣的:(Linux YUM仓库服务于PXE网络装机)