yum 下载全量依赖 rpm 包及离线安装(终极解决方案)
目录
简介
通常生产环境由于安全原因都无法访问互联网。此时就需要进行离线安装,主要有两种方式:源码编译、rpm包安装。源码编译耗费时间长且缺乏编译环境,所以一般都选择使用离线 rpm 包安装。
验证环境
Centos 7.2
查看依赖包
可以使用“yum deplist”命令来查找 rpm 包的依赖列表。例如,要查找“ansible”rpm的依赖包:
$ yum deplist ansible
软件包:ansible.noarch 2.9.3-1.el7
依赖:/usr/bin/env
provider: coreutils.x86_64 8.22-24.el7
依赖:/usr/bin/python2
provider: python.x86_64 2.7.5-86.el7
依赖:PyYAML
provider: PyYAML.x86_64 3.10-11.el7
依赖:python(abi) = 2.7
provider: python.x86_64 2.7.5-86.el7
依赖:python-httplib2
provider: python-httplib2.noarch 0.9.2-1.el7
依赖:python-jinja2
provider: python-jinja2.noarch 2.7.2-4.el7
依赖:python-paramiko
provider: python-paramiko.noarch 2.1.1-9.el7
依赖:python-setuptools
provider: python-setuptools.noarch 0.9.8-7.el7
依赖:python-six
provider: python-six.noarch 1.9.0-2.el7
依赖:python2-cryptography
provider: python2-cryptography.x86_64 1.7.2-2.el7
依赖:python2-jmespath
provider: python2-jmespath.noarch 0.9.0-3.el7
依赖:sshpass
provider: sshpass.x86_64 1.06-2.el7
方案一(推荐):repotrack
# 安装yum-utils
$ yum -y install yum-utils
# 下载 ansible 全量依赖包
$ repotrack ansible
方案二:yumdownloader
# 安装yum-utils
$ yum -y install yum-utils
# 下载 ansible 依赖包
$ yumdownloader --resolve --destdir=/tmp ansible
参数说明:
- --destdir:指定 rpm 包下载目录(不指定时,默认为当前目录)
- --resolve:下载依赖的 rpm 包。
注意
仅会将主软件包和基于你现在的操作系统所缺少的依赖关系包一并下载。
方案三:yum 的 downloadonly 插件
# 安装插件
$ yum -y install yum-download
# 下载 ansible 依赖包
$ yum -y install ansible --downloadonly --downloaddir=/tmp
注意
与 yumdownloader 命令一样,也是仅会将主软件包和基于你现在的操作系统所缺少的依赖关系包一并下载。
离线安装 rpm
# 离线安装
$ rpm -Uvh --force --nodeps *.rpm
参考资料
yum 下载全量依赖 rpm 包及离线安装(终极解决方案)的更多相关文章
- 如何使用yum来下载RPM包而不进行安装
如何使用yum来下载RPM包而不进行安装 2015-03-23 13:15 theo-l译 linux.cn 字号:T | T yum是基于Red Hat的系统(如CentOS.Fedora.RHEl ...
- 用yum下载rpm包(不安装)到制定目录
用yum下载rpm包(不安装)到制定目录用yum下载rpm包 www.pcjsh.com 1.安装yum-downloadonly # yum install yum-downloadonly -y ...
- 用yum下载rpm包(不安装)到指定目录
用yum下载rpm包(不安装)到制定目录 用yum下载rpm包 1.安装yum-downloadonly # yum install yum-downloadonly -y 2. ...
- 在centos使用rpm包的方式安装mysql,以及更改root密码
在centos使用rpm包的方式安装mysql,对于centos官方实际推荐使用yum进行安装,下载安装的方式主要用于内网服务器不能连接外网yum源的情况. 下载包 首先根据centos版本在mysq ...
- centos7上Jenkins通过rpm包方式直接安装及使用war包方式升级
一.通过rpm包方式直接安装jenkins 1.官网下载rpm安装包(前提是安装jdk) wget https://pkg.jenkins.io/redhat-stable/jenkins-2.121 ...
- 20180903 - Python Pip 工具下载whl包与离线安装
20180903 - Python Pip 工具下载whl包与离线安装 1. 我的Blog 博客园 https://www.cnblogs.com/piggybaba 个人网站 http://pigg ...
- Python第三方包之离线安装
Python第三方包之离线安装 第一步 首先我们得从pypi上先下载要装的第三方包 https://pypi.org/ 第二步(因为下载下来的包可能需要其他包的依赖,那我们依旧要按照第一步再次下载) ...
- yum 下载RPM包而不进行安装
yum命令本身就可以用来下载一个RPM包,标准的yum命令提供了--downloadonly(只下载)的选项来达到这个目的. $ sudo yum install --downloadonly < ...
- 利用yum下载rpm包并批量安装
一.下载rpm包 方法一:downloadonly 1.yum自动下载RPM包及其所有依赖的包至/root/rpm目录: yum install yum-plugin-downloadonly yum ...
随机推荐
- HDOJ 1301最小生成树的Kruskal算法
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1301 将结点的字符信息处理成点信息即可,代码如下: #include<bits/stdc++.h ...
- 「面试指南」JS数组Array常用算法,Array算法的一般解答思路
先看一道面试题 在 LeetCode 中有这么一道简单的数组算法题: // 给定一个整数数组 nums 和一个目标值 target, // 请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下 ...
- vue命令式组件和插件编写
一直在写各种业务,好多基本用法都忘记了,回顾一下: 一.vue各种UI库里的命令式组件比如element-ui里Notification组件,可以这样调用 this.$notify({ title: ...
- Java 添加、删除Excel表单控件
通过表单控件,用户可以快速地将数据填写到模板文档中,轻松引用单元格数据并与其进行交互.本文通过Java代码示例介绍如何在Excel表格中添加表单控件,包括文本框.单选按钮.复选框.组合框.微调按钮等: ...
- 深入理解JavaScript中的堆与栈 、浅拷贝与深拷贝
JavaScript中的浅拷贝与深拷贝 学了这么长时间的JavaScript想必大家对浅拷贝和深拷贝还不太熟悉吧,今天在项目中既然用到了,早晚也要理清一下思路了,在了解之前,我们还是先从JavaSc ...
- .Net微服务实践(二):Ocelot介绍和快速开始
目录 介绍 基本原理 集成方式 快速开始 创建订单服务 创建产品服务 创建网关 运行验证 最后 上篇.Net微服务实践(一):微服务框架选型 我们对微服务框架整体做了介绍,接下来我们从网关Ocelot ...
- pycharm 秘籍:快捷键技巧等
Pycharm基本使用 安装 下载地址:https://www.jetbrains.com/pycharm/download 选择Professional 专业版 Comunnity社区版是免费的,但 ...
- JS去除字符串内的空白字符方法
有时我们需要对用户的输入进行一些处理,比如用户输入的密码或者用户名我们就需要去除前后空格,下面写一个去除空白字符的方法 function trim(string = '') { return stri ...
- Go语言笔记(1)变量的定义与赋值
变量的定义与赋值 在go笔记系列开始之前,我强烈建议大家使用Goland的IDM,配合vscode使用真的非常亲民. 1.go程序基本结构 首先,是go程序的基本结构,主要有package引入包.im ...
- VMware中虚拟机克隆后多台主机网络冲突
在Vmware中将虚拟机的一台centos7机器克隆了3台,然后启动机器后出现机器都能够上网,但是无法在本地xshell中同时进行连接,且连接的某一台虚拟机都会经常中断 虚拟机克隆后,会遇到的问题: ...