--时间:2020年10月23日

--作者:飞翔的小胖猪

一、概述

前言

很多生产环境往往是独立的一张网络不与互联网相通,经常会出现的问题就是应用在部署的时候无法安装配套的依赖包。导致很简单的一个可能部署交互动作时间线脱得老长老长的,影响工程交互及业务上线。容器技术很大程度上解决这一问题,只需要把业务应用封装成镜像然后在部署有容器服务的基础环境上直接就可以业务run起来。在不能使用容器同时没有对应软件仓库的环境中安装部署应用时,往往需要我们自己提前把所需的软件及文件准备好。由于本人在工作中使用的系统大多是Centos系列的,文档使用Centos 7.6系统为基础环境演示操作如何下载rpm包。

环境说明

文档采取的操作系统及软件如下表:

操作及步骤说明

下载rpm包的方式一般有两种方式,一种是明确的指导所需的rpm包名和版本,一种是无法获取到准确的软件名。对于能够明确知道rpm包名的情况可使用“yum install --downloadonly rpm名”或“yumdownloader --destdir=/yum_down_soft/ rpm包名”依次下载包。无法准确知道包名的情况下可尝试把整个仓库的内存全部down下来使用reposync命令。

      1.配置yum源

      2.安装相关的软件

      3.进行镜像同步或下载单个软件

      4.生成repo清单文件

      5.打包带走

二、具体方式

配置yum源

按照你的需求配置你想要同步的yum源,如使用zabbix为例,模拟下载同步zabbix的相关软件包。

配置正确的yum源文件,重新生成yum仓库缓存。[root@docker_0001 ~]# vim /etc/yum.repos.d/zabbix.repo
[zabbix]name=zabbixbaseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.4/rhel/7/x86_64/enabled=1gpgcheck=0

[supported]name=supportedbaseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/x86_64/enabled=1gpgcheck=0
[root@docker_0001

~]# yum clean all #清空之前的yum源缓存

[root@docker_0001 ~]# yum makecache     #重新生成仓库缓存,该步操作在网络不稳定的情况下可能会失败,不要慌多试几次,会成功的。

  [root@docker_0001 ~]

# yum repolist      #查看仓库包id及仓库软件数

安装相关软件

yum-utils安装包提供了reposync命令用来同步镜像,yumdownloader命令下载rpm包。

yum-utils安装包提供了reposync命令用来同步镜像,createrepo软件实现生成本地yum仓库的清单文件。[root@docker_0001 ~]# yuminstallyum-utils -y

createrepo软件实现生成本地yum仓库的清单文件。

[root@docker_0001 ~]#  yuminstall createrepo -y 

2.3  同步镜像

如果需要同步制定的yum仓库数据则选取这一步的命令。单个rpm包下载请参考章节的内容。

同步镜像到本地中
安装完成相关的软件过后,使用命令同步远端yum仓库数据到本地中。
命令格式:
reposync -r 仓库名(repo_name)查看仓库名
[root@docker_0001 ~]# yum repolist同步zabbix仓库的包,执行命令过后会在本地当前目录下创建一个与仓库名同名的文件夹。同步zabbix仓库至当前文件夹。
[root@docker_0001 ~]# reposync -r zabbix

注:如果reposync -r zabbix命令不能使用# mkdir docker_自建的文件夹# reposync --repoid repo_id_名 -p docker_自建的文件夹该步骤执行过后同步完了仓库包过后,还需参考章节进行软件关联关系文件生成。

下载rpm包

对于只下载几个rpm的包的情况下可使用命令直接对rpm包进行下载。使用命令直接下载仓库中rpm包有两种方式。

使用yum-utils软件包中的yumdownloader命令对软件进行下载。
命令格式:
yumdownloader --destdir=目录名/  软件名
#下载vim软件到/yum_down_soft/目录下
[root@docker_0001 ~]# yumdownloader --destdir=/yum_down_soft/ vim      

直接使用yum命令下载软件,不推荐这种方式。展示出来只是让你知道有这个玩意。
[root@docker_0001 ~]# yum install --downloadonly yum-utils 找到软件目录使用该种方式下载的包存放在/var/cache/yum目录下但是查找起来是一个大问题。不一定能够找到,所以这种方式直接滚蛋

下载完成软件后如果你想通过yum install命令来安装使用刚才新下载的rpm包,你还需要生成repo清单文件。但是如果你直接使用rpm -ivh命令安装的,恭喜你你可以跳过章节,直接进入章节打包打走。

生成repo清单文件

远端仓库同步完成洪还不能马上使用必须生成一个repodata清单目录,用户才能通过配置yum源的方式来使用仓库中的软件包。

我同步下来的zabbix仓库位置就是/root/zabbix,请个人根据自己的实际路径情况设置。[root@docker_0001 ~]# createrepo /root/zabbix/

对于下载下来的rpm包如果想要通过yum命令安装使用也是要生成repo清单文件的,此处不累述

确认仓库中是否包含repodata数据[root@docker_0001 ~]#  ll /root/zabbix/ | grep -i repo

也可以使用该路径配置为yum源,尝试是否能够进行正常包的安装

打包带走

对于同步过后的镜像需要在其他地方使用直接打包压缩带走,然后在需要的地方解压就好了。

使用tar命令,通过gzip的方式压缩文件。

打包zabbix/文件夹命名为[root@docker_0001 ~]#  tar -zcvf zabbix.tar.gz zabbix/

解压仓库包,解压过后就可以像一般的仓库一样使用。

[root@docker_0001 ~]#  tar -zxvf zabbix.tar.gz 

ps:如果解压过后你需要把仓库内的rpm包添加到之前正在使用仓库中,一定要在拷贝过后使用createrepo重新生成一次repodata

linux的yum命令无法使用在哪里下载_Centos Linux下载rpm软件包(基础环境篇)-从零到无 - 飞翔的小胖猪...相关推荐

  1. linux的yum命令无法使用在哪里下载_Linux 知识分享:为Linux的cp和mv命令添加进度条...

    cp和mv可能是大家日常中使用最多的Linux命令之一.但是有一个突出的问题是这两个命令都不会有任何提示信息,这在操作大文件时候只能干等.可能大家对此已经习以为常,但是其实上也有解决解决方法,本文我们 ...

  2. linux的yum命令无法使用在哪里下载_一行命令下载全网视频,这个命令太牛逼了!...

    相信大家有遇到这样的情况,在网站上看到一些不错的视频,想要下载下来,但是没有找到网站的下载入口. 虽然像优酷.爱奇艺.腾讯视频都有自己的客户端,但下载的视频都是它们专用格式,其它播放器无法播放. 今天 ...

  3. linux的yum命令无法使用在哪里下载_下载:微软正式发布Win10 2004版并即日起开始推送...

    PS:关于Windows 10 v2004版蓝点网早前已建立专题,目前该专题已收录关于该版本的101篇文章,微信篇幅有限无法全部发过来,准备升级的用户建议点击阅读原文按钮或使用电脑访问蓝点网首页查看W ...

  4. Linux学习-21-yum命令(查询、安装、升级和卸载软件包)和软件组管理

    7.9 Linux yum命令(查询.安装.升级和卸载软件包) yum 提供了查找.安装.删除某一个.一组甚至全部软件包的命令 yum 语法 yum [options] [command] [pack ...

  5. linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)

    linux useradd(adduser)命令参数及用法详解(linux创建新用户命令) useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号 ...

  6. linux用yum命令下载地址,linux学习之yum命令的使用

    1. yum的优点:在安装.更新或者删除软件,yum可以自动解决软件之间的依赖问题:yum源可以通过http,ftp.file方式获取 2. 设置yum yum配置文件为/etc/yum.conf,下 ...

  7. linux中yum命令详解

    yum是干什么的 使用redhat,fedora的linuxer肯定都为rpm著名的dependency hell而头疼(这也是所有基于rpm发行版都有的问题).foo is needed by ba ...

  8. 【收藏】Linux系统常用命令速查手册(附PDF下载链接)

    给大家收集整理了日常常用的Linux系统命令,仅供大家参考. 大家如果觉得文章看起来不太方便,可以在+qq. 2 3 5 53 3 1 0 4 6 备注"liunx命令",即可获取 ...

  9. Linux之yum 命令详解

    什么是yum yum是Yellowdog update Modified的简称.yum的宗旨是自动化的升级.安装/移除rpm安装包(也就是说yum这个命令它的操作对象是RPM包),收集rmp的相关信息 ...

  10. Linux的yum命令及基本用法

    一.yum命令 yum clean all ###清除原有的yum缓存 yum repolist ###列出仓库信息 yum install software ####安装软件 yum update ...

最新文章

  1. 皮克斯技术指导辞职读博:研究AI设计怪物,从《游戏王》卡牌开始
  2. Servlet(1)
  3. JavaScript严格模式 use strict
  4. Spring @scope注解
  5. 好中的图像处理方面的期刊_约会中,注意这四个方面,帮助你把握好自己的真爱...
  6. 广电运通不好进吗_我可以说郑州新风的安装大部分都是垃圾吗?
  7. 信安教程第二版-第8章防火墙技术原理与应用
  8. 如何利用用户业务行为画像,做套餐与用户之间个性化智能匹配模型?
  9. CF 71C. Round Table Knights
  10. 【Android笔记】Android引用第三方依赖包library报错解决方法
  11. 支持linux_Linux的UL库 支持MCC数据采集卡
  12. 复数fft的时间复杂度_DFT算法与FFT算法的优劣分析
  13. pdf怎么压缩的小一点?
  14. pngimg 可以商用吗_超级干货,30个无版权免费商用高清素材网站整理(设计师必备灵感源泉)...
  15. 第020篇:SPM(Salford Predictive Modeler)中CART决策树的创建方法一:Model和Categorical 面板
  16. linux xdg open 安装,xdg-open默认应用程序行为
  17. MAC突然连不上蓝牙
  18. 用python制作一张简单的节日贺卡
  19. [CATransaction flush] 作用详解
  20. 【C语言】一文搞懂C语言文件操作

热门文章

  1. angular源码分析 摘抄 王大鹏 博客 directive指令及系列
  2. win7 mysql 启动 问题
  3. activity 和service通信,调用service方法
  4. 书籍-分布式系统常用技术及案例分析
  5. vue 实现数据滚动显示_vue 通过定时器轮询获取后台数据--滚动条显示在底部(展示最新的内容)...
  6. SQL中 and or in的用法
  7. windows10中安装anaconda和pytorch
  8. 专题一:MATLAB基础知识
  9. Matlab函数——randn
  10. Xcode给应用开启沙箱sandbox