一、部署YUM软件仓库
借助YUM软件仓库,可以完成安装、卸载、自动升级rpm软件包等任务,能够自动查找并解决rpm包之间的依赖关系。
1.准备网络安装源(服务端)
YUM软件仓库通常借助于HTTP或FTP协议来进行发布,这样可以面向网络中的所有客户机提供软件服务。为了便于客户机查询软件包,获取依赖关系等信息,在软件仓库中需要提供仓库数据(Repodata),其中收集了目录下所有rpm包的头部信息。
软件仓库的提供方式有三种:
FTP服务:ftp://...... HTTP服务:http://...... 本地目录:file:///.......
这里将介绍FTP服务和本地目录的方式
官方发布的RPM包集合
[[email protected] ~]# mkdir /var/ftp/rhel6 //创建仓库目录
[[email protected] ~]# cp -rf /media/* /var/ftp/rhel6/ //将系统光盘的所有内容复制到仓库目录中
非官方发布的RPM包组
[email protected] ~]# cd /var/ftp/other/ //准备相应的目录存放rpm包组
[[email protected] other]# createrepo -g /media/repodata/repomd.xml ./
使用createrepo工具以现有的repodata目录为样板,在other里手动创建repodata数据文件
注意:我们使用createrepo工具来生成数据文件,默认这个工具没有安装,我们得先将它安装上。(有依赖关系,注意先后顺序,先安装deltarpm...,然后是python-deltarpm...,最后安装createrepo...)。
2配置软件仓库位置(客户端)
在客户机上需要指定至少一个可用的软件仓库,才能使用yum工具来下载、安装软件包。
[[email protected] ~]# vi /etc/yum.repos.d/rhel6.repo //配置文件需要手动创建,扩展名为”.repo”
[base] //仓库类别(名称随意)
name=Red Hat Enterprise Linux //仓库说明
baseurl=ftp://192.168.1.2/rhel6 //URL访问路径(即软件仓库位置)
enabled=1 //启用此软件仓库
gpgcheck=1 //验证软件包的签名
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release //GPG公钥文件位置
[other]
name=Other RPM Packages
baseurl=ftp://192.168.1.2/other
enabled=1
gpgcheck=0 //不验证软件包签名
注意:”gpgcheck”和”gpgkey”两行配置用来检查软件包是否为Red Hat发布,若无此要求则可以省略。
本地文件夹也可以作为软件仓库。例如,将RHEL6关盘挂载到/media目录下以后,创建配置文件时指定本地目录即可。
[[email protected] ~]# vi /etc/yum.repos.d/local.repo //创建配置文件
……
[local]
name=Red Hat Enterprise Linux
baseurl=file:///media //指定软件仓库位置
enabled=1
gpgcheck=0
3.使用yum工具管理软件包
查询软件包
yum list [软件名]...
[r[email protected] ~]# yum list //查询系统中已安装和未安装的软件包
[[email protected] ~]# yum list installed //只列出已安装的软件包
[[email protected] ~]# yum list available //只列出未安装的软件包
[[email protected] ~]# yum list updates //只列出可升级版本的软件包
yum info [软件名]...
[[email protected] ~]# yum info vsftpd //查看软件包(vsftpd)的详细信息
yum search <关键词>...
[[email protected] ~]# yum search "httpd" //根据某个关键词来查找相关软件包
查询软件包组
yum grouplist [包组名]...
yum groupinfo <包组名>...
安装软件
Yum -y install [软件名]
yum -y groupinstall <包组名>
升级软件
yum -y update
yum -y groupupdate
卸载软件
yum -y remove <软件名>...
yum -y groupremove <包组名>...
二、部署PXE远程安装服务
1.准备RHEL6安装源
2.安装并启用TFTP服务
TFTP服务由tftp-server软件包提供
默认由xinetd超级服务进行管理,修改配置文件/etc/xinetd.d/tftp,将”disable=yes”
改为”disable=no”
然后启动xinetd服务
3.准备linux内核、初始化镜像文件
用于PXE网络安装的linux内核、初始化镜像文件可以从系统光盘获得,分别是vmlinuz和initrd.img,位于文件夹images/pxeboot下。
4.准备PXE引导程序、启动菜单文件
用于PXE网络安装的引导程序为pxelinux.0,由软件包syslinux提供。安装好软件包syslinux,然后将文件pxelinux.0也复制到tftp服务的根目录下。
启动菜单用来指定客户机的引导过程,包括如何调用内核、如何加载初始化镜像。
默认的启动菜单文件为default,应放在tftp根目录的pxelinux.cfg子目录下。
上述配置记录中定义了三个引导入口,分别为:label auto 图形安装(默认)
label linux text 文本安装
label linux rescue 救援模式
其他配置项含义:prompt 用来设置是否等待用户选择,1表示等待用户控制;
label 用来定义并分隔启动项;
kernel和append(附加) 用来定义引导参数
5.安装并启用DHCP服务
安装DHCP服务
修改dhcpd.conf配置文件,添加的最后两行作用:
next-server //指定TFTP服务器的地址
filename //指定PXE引导程序
PXE远程安装服务器已经搭建好了,可以直接使用客户机进行安装测试了。
三、实现Kickstart无人值守安装
执行PXE网络安装期间任然需要手动干预,使用Kickstart工具配置安装应答文件,可以自动完成安装过程中的各种配置。
1.准备安装应答文件
在RHEL6系统中安装system-config-kickstart工具后,即可通过图形化向导工具来配置安装应答文件(也可以直接编辑系统自带的应答文件/root/anaconda-ks.cfg)。
安装system-config-kickstar工具
通过桌面菜单“应用程序”--“系统工具”--“Kickstart”,打开kickstart配置程序窗口
2.启用自动应答文件
编辑引导菜单文件default,添加ks引导参数指定的ks.cfg应答文件的URL路径。
(实现无人值守安装只需要一个入口就够了)
将应答文件复制到安装源目录/var/ftp/rhel6下,使客户机能够通过ftp://192.168.1.2/rhel6/ks.cfg访问。
完成上述配置后,客户机每次以PXE方式引导式,将自动下载ks.cfg应答配置文件,然后根据其中的设置安装RHEL6系统,而无需手动干预。