一、yum
基于RPM包构建的软件更新机制
可以自动解决依赖关系
所有软件包由集中的YUM软件仓库提供
软件仓库的提供方式
FTP服务:ftp://…
HTTP服务:http://…
本地目录:file:///…
RPM软件包的来源
CentOS发布的RPM包集合
第三方组织发布的RPM包集合
用户自定义的RPM包集合
1.1.yum服务器配置仓库
# mkdir -p /var/ftp/yum
# mount /dev/cdrom /mnt/
# cp -rf /mnt/* /var/ftp/yum //用于存放客户端需要的rpm包软件,必须放在此目录中,该目录为FTP共享根目录
# cd /mnt/Packages/
# rpm -ivh vsftpd-3.0.2-22.el7.x86_64.rpm
# systemctl enable vsftpd
# systemctl start vsftpd
1.2.客户端配置yum
# cd /etc/yum.repos.d/
# mkdir backup
# mv ./* backup/
# vim /etc/yum.repos.d/centos.repo
[centos]
name=centos
baseurl=ftp://192.168.1.11/yum //指定服务器的IP地址与yum仓库目录,注意此处是两个/
enabled=1
gpgcheck=1
gpgkey=ftp://192.168.1.11/yum/RPM-GPG-KEY-CentOS-7 //,注意此处是两个/
1.3.yum相关命令
# yum list //查询软件包列表
# yum list installed //当前已安装的软件包
# yum list available //当前未安装的软件包
# yum list updates //当前能够升级的软件包
# yum info httpd //查询软件包详细信息
# yum install -y ntsysv //安装软件包
# yum remove -y ntsysv //卸载软件包
# yum update //更新软件包
# yum groupupdate //更新多个软件包
# yum search //查询某个命令属于哪个包
# yum provides */命令
二、部署PXE远程安装服务
PXE (preboot execute environment,预启动执行环境) 是由 Intel 公司设计的协议,它可以使计算机通过网络启动。当计算机引导时,BIOS 把 PXE client 调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。除了可以通过网络直接运行操作系统外,也可以用于通过网络来将系统安装到本地。在运维中工作中,通过 PXE 来为机房服务器批量部署系统是非常方便的。
2.1.先决条件
1.客户机的网卡支持PXE协议(集成BOOTROM芯片),且主板支持网络引导;
2.网络中必须有一台DHCP服务器为客户机分配IP地址、指定引导菜单文件的位置;
3.服务器通过TFTP(简单文件传输协议)提供引导镜像文件的下载及通过FTP提供镜像文件下载;
4.准备带有桌面环境的服务器,用于生成自动化部署系统文件,也可在其他带有桌面环境的服务器中生成自动化部署系统文件拷贝至当前服务器使用;
5.关闭服务器防火墙、seLinux;
2.2.PXE网络批量装机步骤
1.安装FTP服务并准备CentOS 7 安装源;
2.安装TFTP服务并启动;
3.准备Linux内核、初始化镜像文件;
4.准备PXE引导程序、启动菜单文件;
5.安装并启动DHCP服务;
6.验证PXE网络安装效果。
2.3.服务器配置PXE
一台PXE远程安装服务器可以集成CentOS 7 安装源、FTP服务、TFTP(UDP/69)服务、DHCP服务,能够向客户机(裸机)发送PXE引导程序、Linux内核、启动菜单等数据,以及提供安装文件。
1.准备镜像安装源
# mkdir -p /var/ftp/yum
# mount /dev/cdrom /mnt/
# cp -rf /mnt/* /var/ftp/yum
2.安装并启用tftp、FTP服务
# yum install -y tftp-server vsftpd
# vim /etc/xinetd.d/tftp
disable = no //修改为no
# systemctl start tftp
# systemctl start vsftpd
# systemctl enable tftp
# systemctl enable vsftpd
3.准备linux内核、初始化镜像文件:
# cd /mnt/images/pxeboot/
# cp vmlinuz initrd.img /var/lib/tftpboot/
4.准备PXE引导程序、启动菜单文件:
# yum install -y syslinux
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
# mkdir /var/lib/tftpboot/pxelinux.cfg
# vim /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.1.14/yum //当前服务器IP地址母机
label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.1.14/yum
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.1.14/yum
5.安装并启用DHCP服务
# yum install -y dhcp
# vim /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.14; //IP为当前pxe服务器IP地址
option subnet-mask 255.255.255.0;
range 192.168.1.200 192.168.1.210;
next-server 192.168.1.14; //IP为当前pxe服务器IP地址
filename “pxelinux.0”;
}
# systemctl start dhcpd
# systemctl enable dhcpd
6.客户机测试装机,客户端内存必须2G以上,否则将会出现以下错误:
默认客户端硬盘都没有任何数据,因此开机后无法读取系统则会从网卡启动,
所以不需要调整boot为网卡启动,设置后反而会出现反复重装系统的问题。
显示以下界面后输入选项有:
A.直接回车,安装图形化界面
B.linux text,命令行安装
C.linux rescue,救援模式
boot:
回车后可直接进入图形化界面进行安装。
三、实现kickstart无人值守安装
# yum install -y system-config-kickstart
以下图片中,不要勾选”在文本模式中执行安装”,否则会出现读取文件故障
在”分区信息”中划分磁盘分区,根据公司实际情况划分,实验阶段可像如下图所示划分:
先划分swap,再划分boot,最后把所有剩余空间分配给”/”
注意:下图中”/”分区提示的1MB实际上是所有剩余空间,该提示不必在意。
下图为”/”分区划分方法:
根据实际情况为新装系统配置两个网卡:
选择是否安装图形化界面,此处为不安装:
在设置自动应答文件时最后执行的脚本输入以下内容:
rm -rf /etc/yum.repos.d/*
echo '[centos]
name=centos
baseurl=ftp://192.168.1.14/yum
#以上命令指定服务器的IP地址与yum仓库目录
gpgcheck=1
enabled=1
gpgkey=ftp://192.168.1.14/yum/RPM-GPG-KEY-CentOS-7’ > /etc/yum.repos.d/local.repo
以上图片中的预安装脚本的作用是当新系统安装成功后的初始化操作,该脚本的作用是配置新系统的本地yum功能。
# vim ks.cfg //设置完成后的自动应答脚本
#platform=x86, AMD64, 或 Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard ‘us’
# Root password
rootpw --iscrypted 1 1 1kkJm4x4S$d0H74QOF700bPnV/zN3xz0
# Use network installation
url --url=“ftp://192.168.1.14/yum”
# System language
lang zh_CN
# Firewall configuration
firewall --disabled
# System authorization information
auth --useshadow --passalgo=sha512
# Use text mode install
graphical //此处默认为图形安装,选择文本安装将会报VNC错误
firstboot --disable
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# Network information
network --bootproto=dhcp --device=ens32
network --bootproto=dhcp --device=ens33
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai --isUtc
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part swap --fstype=“swap” --size=2048
part /boot --fstype=“xfs” --size=200
part / --fstype=“xfs” --grow --size=1
%post --interpreter=/bin/bash
rm -rf /etc/yum.repos.d/*
echo '[centos]
name=centos
baseurl=ftp://192.168.1.10/yum
gpgcheck=1
enabled=1
gpgkey=ftp://192.168.1.10/yum/RPM-GPG-KEY-CentOS-7 > /etc/yum.repos.d/local.repo
%end
#以下内容为安装时选择的程序,必须设置,否则会出现卡在选择程序界面、
只安装命令行界面:
%packages
@^minimal
@compat-libraries
@debugging
@development
tree
nmap
sysstat
lrzsz
dos2unix
telnet
wget
vim
bash-completion
%end
通过以上配置可实现无人值守安装centos无图形化界面系统,如需安装带界面的系统,可将文件末尾的“%packages…%end”中的内容替换为以下内容:
安装图形化界面:
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools
%end
2.设置自动应答实现批量装机:
# cp /root/ks.cfg /var/ftp/yum/
# vim /var/lib/tftpboot/pxelinux.cfg/default
default auto //第二行1修改为0,第五行后输入空格并加入ks内容
prompt 0
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.1.14/yum ks=ftp://192.168.1.14/yum/ks.cfg //是空格,不是换行
3.使用客户机进行测试:
在安装到格式化硬盘后提示错误:
如果提示无法使用仓库数据并提示安装或者重试的话 删除yum中数据并重新从光盘中拷贝。
为未安装图形化界面的centos安装图形化桌面的命令:
# yum groupinstall -y “Desktop” “X Window System” “Chinese Support [zh]”
2.设置自动应答实现批量装机:
# cp /root/ks.cfg /var/ftp/yum/
# vim /var/lib/tftpboot/pxelinux.cfg/default
default auto //第二行1修改为0,第五行后输入空格并加入ks内容
prompt 0
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.1.14/yum ks=ftp://192.168.1.14/yum/ks.cfg //是空格,不是换行
3.使用客户机进行测试:
在安装到格式化硬盘后提示错误:
如果提示无法使用仓库数据并提示安装或者重试的话 删除yum中数据并重新从光盘中拷贝。
为未安装图形化界面的centos安装图形化桌面的命令:
# yum groupinstall -y “Desktop” “X Window System” “Chinese Support [zh]”
# yum groupinstall -y “Desktop” “Desktop Platform” “Desktop Platform Development” “Fonts” “General Purpose Desktop” “Graphical Administration Tools” “Graphics Creation Tools” “Input Methods” “X Window System” “Chinese Support [zh]” “Internet Browser”