(十一)yum 仓库和 PXE 无人值守装机全解
一、yum 仓库
-
yum 仓库的作用和优势
- 作用:帮助用户查找 rpm 程序包的依赖关系并安装程序。
- 优势:
- 安装程序简单方便且速度快。
- 节约带宽资源。
- 能够批量化管理程序。
-
yum 仓库的类型
- 本地 yum 仓库:依赖操作系统光盘程序包。
- ftp 的 yum 仓库:通过 ftp 程序传输数据。
- http 协议的 yum 仓库:如清华大学源清华大学开源软件镜像站 | Tsinghua Open Source Mirror、网易 163 源欢迎访问网易开源镜像站、阿里云源阿里云开发者社区-云计算社区-阿里云。
-
配置 yum 仓库
- 配置本地 yum 仓库:使用命令
[root@centos01 ~]# vim /etc/yum.repos.d/local.repo
,在文件中设置[local]
、name=centos
、baseurl=file:///mnt
、enabled=1
、gpgcheck=0
。 - 配置 ftp 源:同样使用
[root@centos01 ~]# vim /etc/yum.repos.d/local.repo
,设置[local]
、name=centos
、baseurl=ftp://192.163.100.10/pub/
、enabled=1
、gpgcheck=0
。 - 配置使用网络源:使用命令
[root@centos01 ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
。
- 配置本地 yum 仓库:使用命令
-
yum 仓库常用的命令
- 清空 yum 缓存:使用命令
[root@centos01 ~]# yum clean all
。 - 更新缓存:使用命令
[root@centos01 ~]# yum makecache
。 - 安装四个程序包:使用命令
[root@centos01 ~]# yum -y install samba bind bind-chroot samba-client
。 - 卸载安装的程序:使用命令
[root@centos01 ~]# yum remove samba bind bind-chroot samba-client
。 - 卸载程序:同卸载安装的程序命令。
- 更新程序:使用命令
[root@centos01 ~]# yum update samba bind bind-chroot samba-client
。 - 查找 yum 仓库指定的程序:使用命令
[root@centos01 ~]# yum search bind httpd
。 - 查看指定软件信息:使用命令
[root@centos01 ~]# yum info httpd
。
- 清空 yum 缓存:使用命令
二、PXE 无人值守批量化装机
-
安装 Linux 操作系统的方式
- 光盘安装:将 Centos 系统刻录到 DVD 光盘中,放入光驱,设置服务器第一启动为光驱启动来安装系统,但这种方式已被淘汰。
- U 盘安装:简单方便,可使用 rufus 将 Centos 系统写入 U 盘引导启动。
- 无人值守:用于批量化装机,安装速度快且能避免出错。
-
无人值守安装依赖服务
- DHCP:客户端网络启动时下发 IP 地址,用于发现 PXE 服务器。
- yum 仓库:用于传输大文件。
- tftp-server:用于传输引导菜单等小文件。
- kickstart:用于生成无人值守安装脚本,实现免交互式批量装机。
-
配置安装生成引导菜单和 tftp-server
- 安装引导程序:使用命令
[root@centos01 ~]# yum -y install syslinux
。 - 安装 tftp-server:使用命令
[root@centos01 ~]# yum -y install tftp-server
。 - 修改 tftp-server 主配置文件启动 tftp:使用命令
[root@centos01 ~]# vim /etc/xinetd.d/tftp
,设置server_args=-s /var/lib/tftpboot
(tftp 服务器存储引导程序根目录)和disable=no
(启动 tftp 服务)。 - 启动服务设置开机自动启动:使用命令
[root@centos01 ~]# systemctl start tftp
和[root@centos01 ~]# systemctl enable tftp
。 - 移动镜像内核和引导文件到 tftp 根目录:使用命令
[root@centos01 ~]# cp /var/ftp/pub/isolinux/initrd.img /var/lib/tftpboot/
、[root@centos01 ~]·cp /var/ftp/pub/isolinux/vmlinuz /var/lib/tftpboot/
和[root@centos01 ~]·cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
分别移动 Centos 镜像、内核和引导程序到 tftp 根目录。 - 生成引导菜单:
- 使用命令
[root@centos01 ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
创建存储引导菜单目录。 - 使用命令
[root@cent01 ~]# cp /var/ftp/pub/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
生成引导菜单。 - 使用命令
[root@centos01 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
编辑引导菜单,设置default auto
(访问引导菜单入口)、prompt 1
(半自动),以及不同标签如label auto
(安装图形化 Linux)、label linux text
(安装字符 Linux)、label linux rescue
(进入急救模式),每个标签下设置内核和相关参数。
- 使用命令
- 安装引导程序:使用命令
-
配置 dhcp
- 安装 dhcp:使用命令
[root@centos01 ~]# yum -y install dhcp
。 - 配置 dhcp 服务器:使用命令
[root@centos01 ~]# vim /etc/dhcp/dhcpd.conf
,设置域名、域名服务器、租约时间等参数,以及子网相关信息如 IP 地址范围、路由器、下一跳服务器和文件名。 - 启动服务开机自动启动:使用命令
[root@centos01 ~]# systemctl start dhcpd
和[root@centos01 ~]·systemctl enable dhcpd
。
- 安装 dhcp:使用命令
-
配置全自动无人值守安装
- 切换到图形化界面:使用命令
[root@centos02 ~]# init 5
。 - 配置 yum 仓库为 ftp 类型仓库:先使用命令
[root@centos02 ~]# rm -rf /etc/yum.repos.d/CentOS-*
删除原有仓库配置,再使用[root@centos02 ~]# vim /etc/yum.repos.d/local.repo
配置,设置[local]
、name=centos
、baseurl=ftp://192.168.100.10/pub/
、enabled=1
、gpgcheck=0
。 - 安装 kickstart 程序:使用命令
[root@centos02 ~]# yum -y install system-config-kickstart
。 - 生成无人值守安装脚本:使用命令
[root@centos02 ~]# system-config-kickstart
。 - 上传无人值守安装脚本到 ftp 根目录:使用命令
[root@centos02 ~]# scp./ks.cfg root@192.168.100.10:/var/ftp/pub/
。 - 修改引导菜单加载无人值守安装脚本:使用命令
[root@centos01 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
,设置default auto
、prompt 0
,并在不同标签下添加ks=ftp://192.168.100.10/pub/ks.cfg
加载无人值守安装脚本。
- 切换到图形化界面:使用命令
原文地址:https://blog.csdn.net/m0_73458595/article/details/142867848
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!