linux在非联网、无网络环境下,使用yumdownload、reportrack方法安装rpm包

文章目录

  • 前言
  • 1、下载yum-utils​​
  • 2、yumdownloader
  • 3、repotrack
  • 4、安装
  • 5、yumdownloader和repotrack的区别
  • 总结


前言

当开发者在联网环境下使用Linux时,可以轻松地通过yum或apt-get安装软件。然而,在公司和企业中,由于安全原因,生产环境通常无法访问互联网,这就需要进行离线安装。离线安装有两种主要方式可选:

  1. 源码编译:源码编译耗时且需要合适的编译环境,因此一般情况下较少选择此方法。
  2. RPM包安装:相比源码编译,使用离线的RPM包安装更为便捷和高效。
    因此,本文将详细介绍在无网络环境下如何进行RPM包的安装和使用。

1、下载yum-utils​​

首先,在一台可联网的虚拟机上,下载​​yum-utils工具包​​。对于 CentOS/RHEL 系统,可以使用以下命令:

sudo yum install yum-utils

在这个工具包中,两个非常有用的命令,可以帮助用户在没有网络连接的情况下,获取软件包及其依赖项并进行离线安装。分别是:

  1. yumdownloader
  2. repotrack

2、yumdownloader

在安装 yum-utils 包后。在大多数基于 RHEL/CentOS 的系统上,可以直接使用以下组合命令去下载:

yumdownloader --resolve --destdir=<destination-folder> <package-name>
解释:<package-name>:替换为要下载的软件包的名称。
--resolve:此命令将下载指定软件包及其所有依赖项。
--destdir:指定下载目录。将 <destination-folder> 替换为要保存软件包的目录。

以下载net-tools为例:

yumdownloader --resolve --destdir=/opt/temp/yumdownloader/net-tools net-tools

在这里插入图片描述
下载的内容:

cd /opt/temp/yumdownloader/net-tools

在这里插入图片描述


3、repotrack

可以直接使用以下命令去下载:

repotrack -p <destination-folder> <package-name>
解释:<package-name>:替换为要下载的软件包的名称。
-p:指定下载的地址。将 <destination-folder> 替换为要保存软件包的目录。

以下载net-tools为例:

repotrack -p /opt/temp/repotrack/net-tools net-tools

在这里插入图片描述
下载的内容:

cd /opt/temp/repotrack/net-tools

在这里插入图片描述


4、安装

将下载的 RPM 包上传到没有网络连接的虚拟机中。建议将其放在一个文件夹下,并使用以下命令批量解压并安装多个 RPM 包:

rpm -Uvh *.rpm --force --nodeps
解释:
-Uvh:执行升级操作并显示详细的安装进度。
*.rpm:指定要安装的RPM软件包,*.rpm通配符表示当前目录下的所有.rpm文件。
--force:强制安装,即覆盖掉已有的同名软件包。
--nodeps:不检查和处理软件包依赖关系。

5、yumdownloader和repotrack的区别

总之,两个命令的选择,取决于具体需求和场景:
yumdownloader:下载指定软件包及其依赖项,下载速度较快。但它无法自动下载依赖包的依赖项,需要手动处理。
repotrack:下载整个软件仓库的所有软件包及其依赖项,并自动处理软件包之间的依赖关系,节省了寻找依赖项的时间。但是下载速度较慢。

两个命令如何选择?
对于新的虚拟机,由于缺少的安装包较多,建议使用 repotrack。
当需要进行安装包升级,或者所需软件包不缺少依赖项时,推荐使用 yumdownloader。


总结

yumdownloader:下载速度较快。但是无法下载依赖包的依赖包
repotrack:下载速度较慢。但可以下载依赖包的依赖包。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/150378.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

执行npm的时候报权限问题的解决方案

我们在执行npm操作的过程中&#xff0c;会出现以下权限问题&#xff0c;解决方案: 管理员身份 运行cmd 切换目录到要执行命令的文件下 再进行npm操作即可

java17 linux 环境配置

linux版本 :centos 8 1.能联网的情况下: wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz 2.mkdir /usr/local/java tar zxvf jdk-17_linux-x64_bin.tar.gz -C /usr/local/java 3./etc/profile增加: export JAVA_HOME/usr/local/java/jdk-17.…

社交媒体驱动的独立站流量增长:YouTube引流技巧

随着互联网的不断发展&#xff0c;视频内容在网上变得越来越受欢迎。YouTube作为世界上最大的视频分享平台之一&#xff0c;成为了吸引流量和观众的理想场所。对于跨境卖家来说&#xff0c;利用YouTube来增加独立站流量是一种有效的策略&#xff0c;可以增加知名度、吸引潜在客…

IDEA创建SpringBoot的多模块项目教程

最近在写一个多模块的SpringBoot项目&#xff0c;基于过程总了一些总结&#xff0c;故把SpringBoot多个模块的项目创建记录下来。 首先&#xff0c;先建立一个父工程&#xff1a; &#xff08;1&#xff09;在IDEA工具栏选择File->New->Project &#xff08;2&#xff0…

hypermesh学习总结(一)

1、hypermesh导入导出 2、hypermesh如何使用拓扑命令&#xff0c;连接多个几何体为一个&#xff1f; 3、hypermesh模式选择 分别有显示动力学模式explicit,标准模式Standard3D(静力学及模态等) 4、检查网格单元质量 5、基本平移旋转显示视角操作 6、更改网格划分最小…

二-内存模型及所有权和引用、借用

1. 内存模型1 内存模型&#xff0c;heap和stack的区别&#xff0c;GC方面和go的区别 基本同go一样&#xff0c;分为堆内存、栈内存。栈内存函数退出时会自动释放&#xff0c;大小有限&#xff0c;一般是比较“小”的变量存到栈上。 比较“大”的或者大小动态变化的会分配到堆上…

vue3 ref和reactive使用watch属性的方法和区别

在Vue 3中&#xff0c;您可以使用watch函数和watch选项来监视ref和reactive创建的响应式数据的变化。下面是它们的使用方法和区别&#xff1a; 使用方法&#xff1a; 使用ref和watch&#xff1a; import { ref, watch } from vue;const count ref(0);watch(count, (newVal,…

【算法挨揍日记】day28——413. 等差数列划分、978. 最长湍流子数组

413. 等差数列划分 413. 等差数列划分 题目描述&#xff1a; 如果一个数列 至少有三个元素 &#xff0c;并且任意两个相邻元素之差相同&#xff0c;则称该数列为等差数列。 例如&#xff0c;[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。 给你一个整数数组 nums…

【数据结构】邻接表与邻接矩阵的转换

一.基本思想 1.邻接矩阵转换为邻接表&#xff1a; 先设置一个空的邻接表&#xff0c;然后查找邻接矩阵的值不为零元素&#xff0c;找到后在邻接表的单链表对应位置加入表边节点。 2.邻接表转换为邻接矩阵&#xff1a; 在邻接表上顺序取出每个表边结点&#xff0c;将邻接矩阵…

【基础架构】part-1 高可用策略和知识点总结

​ 系统应该保持高可用性&#xff0c;以确保用户能够始终访问和使用系统。这可以通过设计冗余和容错机制来实现&#xff0c;如负载均衡、故障转移、备份和恢复策略等。 1.1、引入冗余 通过冗余架构设计&#xff0c;如使用多个服务器节点、多个数据中心或云区域&#xff0c;确…

gRPC博客【建设进度0%】

学习资料来源&#xff1a;https://grpc.io/

鸿蒙系统调研适配

写在前面&#xff1a; 以下内容基于我个人翻阅的官方资料以及自己的理解写的&#xff0c;可能存在认知和理解上的偏差&#xff0c;有些地方并不一定是对的&#xff0c;请谨慎对待&#xff0c;注意甄别&#xff01; 一、鸿蒙OS是什么&#xff1f; 华为推出的多端统一平台&…

【Gateway】基于ruoyi-cloud-plus项目,gateway局部过滤器和过滤返回以及集成nacos

1.使用Gateway路由转发 1.1标题引入依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency>1.2添加YML配置 spring:cloud:gateway:# 打印请求日志(自定义)…

链动2+1模式:创新营销引领白酒产业新潮流

在当今高度竞争的市场环境中&#xff0c;创新营销模式对于企业的发展至关重要。链动21模式作为一种独特的营销策略&#xff0c;将白酒产品与该模式相结合&#xff0c;充分发挥其优势&#xff0c;通过独特的身份晋升和奖励机制&#xff0c;快速建立销售渠道&#xff0c;提高用户…

C++基础从0到1入门编程(二)

系统学习C 方便自己日后复习&#xff0c;错误的地方希望积极指正 往期文章&#xff1a;C基础从0到1入门编程&#xff08;一&#xff09; 参考视频&#xff1a; 1.黑马程序员匠心之作|C教程从0到1入门编程,学习编程不再难 2.系统化学习C 1 函数指针和回调函数 如果把函数的地址…

【C语言.oj刷题】有序#整型矩阵元素查找##{思路+C源码}

目录 题目信息 题目分析&#xff1a; 法一&#xff1a; 遍历二维数组&#xff08;低效&#xff09; 思路 源码 局限性 法二&#xff1a; 对每一行二分查找&#xff08;有所提效&#xff09; 思路 源码 局限性 法三&#xff1a; 利用一切有利条件使用二分查找 思路 …

由两个独立的高增益运算放大器组成的运放芯片D258,可应用于音频信号处理系统上

D258是由两个独立的高增益运算放大器组成。可以是单电源工作&#xff0c;也可以是双电源工作,电源的电流消耗与电源电压大小无关。应用范围包括变频放大器、DC增益部件和所有常规运算放大电路。 主要特点&#xff1a; ● 可单电源或双电源 工作 ● 在一个封装内的两个经…

vue3项目安装eslint和prettier

【几乎最全/全网最长的 2 万 字】前端工程化完整流程&#xff1a;从头搭到尾&#xff08;vue3 vite qiankun docker tailwindcss iview......&#xff09;_前端工程化流程-CSDN博客 vue3tsvite项目中使用eslintprettierstylelinthusky指南 - 掘金 上面两篇文章相互结合操…

网络工程师网络配置经典例题(五)

1、配置SwitchA的单臂静态BFD特性 [SwitchA] bfd [SwitchA-bfd] quit [SwitchA] bfd 1 bind peer-ip 10.2.2.2 interface vlanif 10 source-ip 10.1.1.1 one-arm-echo [SwitchA-bfd-session-1] discriminator local 1 [SwitchA-bfd-session-1] min-echo-rx-interval 200 …

音视频项目—基于FFmpeg和SDL的音视频播放器解析(十三)

介绍 在本系列&#xff0c;我打算花大篇幅讲解我的 gitee 项目音视频播放器&#xff0c;在这个项目&#xff0c;您可以学到音视频解封装&#xff0c;解码&#xff0c;SDL渲染相关的知识。您对源代码感兴趣的话&#xff0c;请查看基于FFmpeg和SDL的音视频播放器 如果您不理解本…