前提条件
- 已安装统信服务器操作系统 V20。
- 本文命令行操作,默认使用 root 用户执行。
功能概述
由于网络环境或安全等因素限制,部分用户使用的统信服务器操作系统在需要进行软件安装、升级时,因为无法访问外网仓库源,只能使用离线仓库或离线升级补丁的形式进行相应操作。在这种情况下,用户或系统运维人员可以在本机或局域网内搭建 yum 仓库来安装或升级相关软件包。
离线补丁包升级方法
获取软件包
软件包完整性校验
操作步骤如下:
1. 上传“软件包列表”中的所有文件到/opt/目录下。
说明:镜像文件和镜像校验文件放在同一级目录下。
2. 校验离线补丁压缩包
# md5sum /opt/update*.tar.xz
# cat /opt/update*.tar.xz.md5
说明:
1)如果上述两条命令输出的校验码信息一致,则说明补丁压缩包文件完整。可继续后续操作。
2)如果校验失败则可以确认离线补丁压缩包被损坏或下载不完整,请通过正规渠道重新下载离线补丁压缩包,之后重复以上步骤进行重新校验。
3)上述 * 代表离线补丁日期等信息,例如 update-20210918-1020a.tar.xz,以下内容以此为例进行介绍。
3. 离线补丁本地源配置与 yum 升级
1. 创建离线补丁包存放目录
# mkdir -p /opt/uniontechos/update-20210918-1020a
2. 解压离线补丁压缩包到软件源存放目录
# tar -xvf update*.tar.xz -C /opt/uniontechos/update-20210918-1020a
3. 创建离线升级源配置
# cat /etc/yum.repos.d/UnionTechOS-Local.repo
[UnionTechOS-Local]
name=UnionTechOS-Local
baseurl=file:///opt/uniontechos/update-20210918-1020a/$basearch
enabled=1
gpgcheck=0
说明:baseurl 所指向的地址应为仓库 repodata 目录所在的路径。$basearch 为体系架构信息宏变量,根据硬件差异,宏值通常为 x86_64 或 aarch64。在此例中,baseurl的含义即 repodata 目录位于/opt/uniontechos/update-20210918-1020a/x86_64/或/opt/uniontechos/update-20210918-1020a/aarch64/路径下。
4. 清除缓存并使用本地源安装 rpm 包
# dnf clean all
# dnf update xxx
说明:xxx: 替换为实际要安装升级的 rpm 软件包名称
离线仓库配置使用方法
1. 获取离线仓库
2. 离线仓库完整性校验
通过md5sum 命令校验 iso 文件,并和 .md5 文件中的校验码信息做对比。如果校验码相同,才可继续往下执行。
3. 离线仓库使用方法
方法一、离线仓库本地挂载和使用
方法一和方法二,二选一即可。本节介绍的内容适用于单台服务器搭建本地仓库的场景。本节内容以 1020a 离线仓库 iso 的使用为例进行介绍。
1. 创建离线仓库挂载目录
# mkdir -p /local-repo/AppStream /local-repo/BaseOS
2. 离线仓库挂载
# mount uniontechos-server-20-1020a-BaseOS-media-20210609-1400.iso /local-repo/BaseOS/
# mount uniontechos-server-20-1020a-AppStream-media-20210609-1400.iso /local-repo/AppStream/
3. 创建离线仓库源配置
# cat /etc/yum.repos.d/UnionTechOS-local-AppStream.repo
[UnionTechOS-local-AppStream]
name = UnionTechOS local AppStream
baseurl = file:///local-repo/AppStream/$basearch
enabled = 1
gpgcheck = 0
# cat /etc/yum.repos.d/UnionTechOS-local-BaseOS.repo
[UnionTechOS-local-BaseOS]
name = UnionTechOS local BaseOS
baseurl = file:///local-repo/BaseOS/$basearch
enabled = 1
gpgcheck = 0
说明:baseurl 所指向的地址应为仓库 repodata 目录所在的路径。
4. 清除缓存并使用本地源安装 rpm 包
# dnf clean all
# dnf install xxx
说明:xxx: 替换为实际要安装的离线 rpm 软件包名称。
离线仓库和补丁包使用手册
统信软件技术有限公司 ©版权所有 第 9 页
方法二、离线仓库 nginx 代理使用
本节配置方法和方法一,二选一即可。本节介绍的内容适用于局域网内多台服务器共用同一个代理本地仓库的场景。本节内容以 1020a 离线仓库 iso 的使用为例进行介绍,并假设代理服务端的 IP 地址为:10.1.2.3
1. 代理服务端安装 nginx
# dnf install nginx –y
2. 代理服务端修改 nginx 配置
# vim /etc/nginx/nginx.conf
如下图所示,在需要升级或安装离线仓库中提供的软件包的服务器上,对/etc/nginx/nginx.conf 的 server 配置字段添加:
autoindex on;
3. 创建代理端离线仓库挂载目录
# mkdir -p /usr/share/nginx/html/AppStream /usr/share/nginx/html/BaseOS
4. 代理端离线仓库挂载
# mount uniontechos-server-20-1020a-BaseOS-media-20210609-1400.iso /usr/share/nginx/html/BaseOS
# mount uniontechos-server-20-1020a-AppStream-media-20210609-1400.iso /usr/share/nginx/html/AppStream
5. 代理端启动/重启 nginx 服务
# systemctl restart nginx
6. 代理端开放防火墙 80 端口
# firewall-cmd --permanent --add-port=80/tcp
# firewall-cmd --reload
7. 分发离线仓库源配置
# cat /etc/yum.repos.d/UnionTechOS-nginx-AppStream.repo
[UnionTechOS-nginx-AppStream]
name = UnionTechOS nginx AppStream
baseurl = http://10.1.2.3/AppStream/$basearch
enabled = 1
gpgcheck = 0
# cat /etc/yum.repos.d/UnionTechOS-nginx-BaseOS.repo
[UnionTechOS-nginx-BaseOS]
name = UnionTechOS nginx BaseOS
baseurl = http://10.1.2.3/BaseOS/$basearch
enabled = 1
gpgcheck = 0
说明:10.1.2.3: 替换为实际代理服务端的 IP 地址。
8. 清除缓存并使用 nginx 代理源安装 rpm 包
# dnf clean all
# dnf install xxx
说明:xxx: 替换为实际要安装升级的 rpm 软件包名称
©统信软件技术有限公司。访问者可将本网站提供的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本网站任何内容或服务进行转载,须备注:该文档出自【faq.uniontech.com】统信软件知识分享平台。否则统信软件将追究相关版权责任。