问题现象
项目现场内网环境下的服务器,在安装第三方离线包提示某系统组件依赖关系不满足、源码编译软件时提示gcc环境和lib库错误、系统启动后图形化界面加载不出或不显示登录界面、输入正确的密码后无法进入系统等。
问题原因
项目现场服务器系统处于非互联网环境下,无法直接通过默认的仓库源获取并安装软件。为了高效解决实际需求,无需单独申请资源搭建测试环境,需要搭建本地仓库以满足依赖软件包安装、gcc环境和lib库修复、dde或lightdm图形界面系统组件修复、deepin-authenticate与dbus系统登录安全认证组件修复需求。
解决方案
下面分别演示在不同的服务器系统版本下,搭建本地仓库的方法。
1、基于服务器系统D版iso镜像搭建本地仓库
步骤一:下载iso镜像文件并上传服务器端,此处下载的镜像名为:uniontechos-server-20-enterprise-1020-arm64.iso,然后通过scp方式将镜像文件上传到服务器端的uos用户的主目录/home/uos下
步骤二:通过ssh方式登录到服务器,切root身份,挂载iso镜像,新建本地仓库目录/home/uos/data(可根据需要自定义),拷贝数据目录dists、pool至新建仓库目录
第一条 切root身份(下文所有命令操作都在root身份下执行)
sudo -i
第二条 挂载iso镜像至挂载点目录/mnt
mount uniontechos-server-20-enterprise-1020-arm64.iso /mnt
第三条 新建本地仓库数据目录
mkdir -p /home/uos/data
第四条 切换至挂载点目录
cd /mnt
第五条 拷贝数据目录dists、pool至新建仓库目录
cp -r diskts/ pool/ /home/uos/data
步骤三:配置本地仓库apt源
第一条 备份系统默认的apt源配置文件sources.list
cp -rfp /etc/apt/sources.list /etc/apt/sources.list.bak
第二条 修改apt源配置文件sources.list,注释掉所有其他源,新增本地仓库apt源“deb [trusted=yes] file:///home/uos/data eagle main contrib non-free”
vim /etc/apt/sources.list
第三条 查看修改后的apt源配置文件sources.list
cat /etc/apt/sources.list
步骤四:更新本地仓库并搜索软件包验证
第一条 在更新仓库前先使用apt clean清空所有已缓存的apt源
apt clean
第二条 更新本地仓库
apt update
第三条 搜索软件包,验证搭建的本地仓库能正常使用
apt search tomcat
2、基于服务器系统E版iso镜像搭建本地仓库
步骤一:下载iso镜像文件并上传服务器端,此处下载的镜像名为:uniontechos-server-20-1050e-amd64.iso,然后通过scp方式将镜像文件上传到服务器端的guest用户的主目录/home/guest下
步骤二:通过ssh方式登录到服务器,切root身份,新建本地仓库目录挂载点/iso(可根据需要自定义),挂载iso镜像至挂载点
第一条 切root身份(下文所有命令操作都在root身份下执行)
sudo -i
第二条 新建本地仓库挂载点/iso
mkdir /iso
第三条 挂载iso镜像文件至本地仓库挂载点/iso
mount uniontechos-server-20-1050e-amd64.iso /iso
第四条 查看本地仓库目录
ls -l /iso
步骤三:配置本地仓库repo源
在默认仓库源目录/etc/yum.repos.d下新建本地仓库repo源配置文件UnionTechOS-Local.repo并写入本地仓库标识、仓库名称、源路径等信息
vim /etc/yum.repos.d/UnionTechOS-Local.repo
本地仓库repo源文件配置内容:
[UnionTechOS-Local]
name=UnionTechOS-Local
baseurl=file:///iso/AppStream
enabled=1
gpgcheck=0
步骤四:更新本地仓库并安装软件包验证
第一条 在更新仓库前先使用yum clean all清空所有已缓存的repo源
yum clean all
第二条 重建本地仓库缓存
yum makecache
第三条 查看缓存的本地仓库所有软件包列表
yum repolist
第四条 查看本地仓库docker相关的软件包,验证搭建的本地仓库能正常使用
yum list | grep docker
3、基于服务器系统A版iso镜像搭建本地仓库
A版的步骤一、步骤二同E版
步骤三:配置本地仓库repo源
第一条 查看本地仓库目录数据文件
ls /iso
第二条 在默认仓库源目录/etc/yum.repos.d下新建本地仓库repo源配置文件UniontechOS.repo并写入本地仓库AppStream、BaseOS源路径信息
vim /etc/yum.repos.d/UniontechOS.repo
本地仓库repo源文件配置内容:
[UniontechOS-Local-AppStream]
name = UniontechOS Local AppStream
baseurl = file:///iso/AppStream
enabled = 1
username=$auth_u
password=$auth_p
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-uos-release
gpgcheck = 0
skip_if_unavailable = 1
[UniontechOS-Local-BaseOS]
name = UniontechOS Local BaseOS
baseurl = file:///iso/BaseOS
enabled = 1
username=$auth_u
password=$auth_p
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-uos-release
gpgcheck = 0
skip_if_unavailable = 1
步骤四:更新本地仓库并安装软件包验证
第一条 清空缓存方法同前节E版
第二条 重建本地仓库缓存
yum makecache
第三条 安装软件包,验证搭建的本地仓库能正常使用
yum install java-1.8.0-openjdk
©统信软件技术有限公司。访问者可将本网站提供的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本网站任何内容或服务进行转载,须备注:该文档出自【faq.uniontech.com】统信软件知识分享平台。否则统信软件将追究相关版权责任。