yum的离线化安装--yumdownloader和yum downloadonly

                              yum的离线化安装--yumdownloader和yum downloadonly

很多的时候,我们需要快速搭建项目环境,而环境搭建有的时候是比较繁琐并且有限制的,比如,内网环境,没有外网,Linux的yum外部源是无法使用的,例如,阿里云的yum源,163的yum源,华科大的yum源,这些yum源需要能够访问外部网络才可以使用。

通常,这样的情况,我们有两个选择,第一,是自建一个本地源,本地源使用系统安装ISO文件,挂载到系统内,然后mount即可使用,这样的本地源软件可选择多,但系统安装ISO文件通常很大,文件传输花费时间比较多。第二,在有网的环境,配置外部源,将所需的软件包括它的所有依赖包下载后,上传到内网环境的服务器安装即可。

那么,第二种方式无疑是最为便捷的一种方式了,在此,我以zabbix4.0为例,详细介绍如何离线化安装。

一,配置外部源,在此,我使用的是阿里云的yum源,zabbix当然还需要使用epel源,这两个源的配置没什么好说的。

vim /etc/yum.repos.d/zabbix.repo

[zabbix-4.0]
name=zabbix-4.0
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/
enable=1
gpgcheck=0
[k8s]
name=k8s
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enable=1
gpgcheck=0

    yum install epel-release -y

如此,两个外部源就已经配置好了。

二,将zabbix4.0的相关包,包括所有依赖全部下载。

下载这些软件包有两种方式,yumdownloader命令 和yum命令

(1)yumdownloader命令---此命令默认是没有的,需要执行命令: yum install yum-utils -y 安装

zabbix是一系列软件,包括zabbix-server ,zabbix-server-mysql 等等。因此,下载命令如下:

yumdownloader zabbix zabbix-server zabbix-server-mysql --resolve --destdir=/root/zabbix

以上命令意思为: --resolve 下载相关依赖,指定下载的文件存放路径为 root/zabbix,执行该命令后,在zabbix这个文件夹下就会看到zabbix的rpm包和它所有的相关依赖。

(2)yum install zabbix zabbix-server zabbix-server --downloadonly --downloaddir=/root/zabbix

该条命令和上面的命令是一样的效果

三,以上所下载的包上传到内网环境的服务器,rpm命令安装所下载的rpm文件即可安装完zabbix

总结:

推荐使用yumdownloader命令下载软件,该命令毕竟是专业的处理下载的命令,会更为准确高效。

<think>好的,我现在需要帮用户解决如何通过yum进行RPM包的离线安装。首先,我得回忆一下yum的基本工作原理。yum通常是在线安装,依赖网络下载包解决依赖关系。离线安装的话,用户需要自己处理这些依赖,可能得先创建一个本地仓库。 用户的问题是关于离线安装的,所以步骤应该包括如何下载所有需要的RPM包及其依赖,然后在离线环境中配置本地仓库。我需要确保步骤正确,比如使用yumdownloadonly插件或者yumdownloader工具来获取包。不过要注意,有些系统可能需要安装yum-utils才能使用这些工具。 接下来,用户可能需要将下载的包转移到离线机器上,并创建repo文件指向这些包的位置。这里需要确认createrepo命令是否已安装,因为生成元数据是必要的。然后使用yum --enablerepo=localrepo install来安装,这样应该可以处理本地依赖。 同时,用户提供的引用里有提到安装oracle-database-preinstall-18c其他包,可能需要处理特定包的依赖,比如gccxhost+,所以在步骤中可能需要提醒用户根据实际需要补充这些包。另外,引用中的命令可能有拼写错误,比如“yun”应该是“yum”,需要注意这一点,避免误导用户。 用户可能的疑问点包括:如何正确下载所有依赖,如何处理不同架构的包,如何确保本地仓库配置正确。需要详细说明每一步的操作,比如使用--resolve--destdir参数,以及配置repo文件时的baseurl路径是否正确。 此外,可能还需要提到常见问题,比如依赖缺失怎么办,如何更新本地仓库,或者如何处理签名验证等问题。但根据用户提供的引用,可能不需要深入这些细节,保持步骤简洁明了。 最后,生成相关问题时要考虑用户可能进一步的问题,比如如何创建本地仓库的更多细节,或者如何处理特定错误,以及如何扩展应用到其他场景,如Docker镜像构建。这有助于用户更全面地理解离线安装的不同方面。</think>### 通过Yum进行RPM离线安装的步骤指南 #### 1. 在联网环境中准备离线包 ```bash # 安装必要工具 yum install -y yum-utils createrepo # 创建存放目录 mkdir -p /opt/offline_rpms # 下载目标包及其所有依赖(示例:httpd包) yumdownloader --resolve --destdir=/opt/offline_rpms httpd # 或使用repoquery递归查询依赖 repoquery -R --resolve httpd | xargs yumdownloader -y --destdir=/opt/offline_rpms ``` #### 2. 打包并传输到离线环境 ```bash tar czvf offline_rpms.tar.gz /opt/offline_rpms # 通过U盘/SCP等方式传输到目标机器 ``` #### 3. 在离线机器配置本地仓库 ```bash # 解压文件 tar xzvf offline_rpms.tar.gz -C /opt # 创建仓库元数据 createrepo /opt/offline_rpms # 创建repo配置文件 cat > /etc/yum.repos.d/local.repo <<EOF [localrepo] name=Local Repository baseurl=file:///opt/offline_rpms enabled=0 gpgcheck=0 EOF ``` #### 4. 执行离线安装 ```bash yum --enablerepo=localrepo install httpd ``` #### 5. 补充依赖处理(如报错) ```bash # 手动安装缺失依赖(示例) rpm -ivh /opt/offline_rpms/*.rpm ``` ### 关键注意事项 1. 架构一致性:确保下载的RPM包与目标系统架构(x86_64/i686)匹配 2. 版本锁定:使用`yum --showduplicates list`确认版本可用性 3. 最小依赖:推荐使用`yum groups mark install`标记组依赖[^2]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晚风_END

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值