前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >如何查找并下载rpm依赖包并使用yum离线安装rpm包

如何查找并下载rpm依赖包并使用yum离线安装rpm包

作者头像
create17
发布于 2019-04-08 10:15:41
发布于 2019-04-08 10:15:41
8.7K00
代码可运行
举报
运行总次数:0
代码可运行

每一个成功人士的背后,必定曾经做出过勇敢而又孤独的决定。

放弃不难,但坚持很酷~

Linux版本:CentOS Linux release 7.3.1611 (Core)

一、需求

最近在工作中需要postgresql + postgis的离线安装。安装有两种方式:

  • 源码编译
  • rpm包安装

源码编译耗费时间长,缺乏编译环境且生成目录位置不详,所以选择使用rpm包安装。但是我们最终目的是rpm包离线安装,目前不知道安装postgresql + postgis所依赖的rpm包有哪些,并且从网上找rpm包容易引起版本冲突啊,怎么办呢?

办法总比问题多,接着往下看。

二、在线安装

通过下载外部repo源的安装方式,我这里暂且称之为在线安装。

我们首先要使用在线安装的方式,成功安装postgresql + postgis,然后再考虑如何获取相关依赖rpm包的问题。请看具体命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 安装postgresql依赖的rpm包
rpm -ivh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
# 安装postgis的依赖包
rpm -ivh https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm

通过执行上述命令,在/etc/yum.repos.d/目录下会有以下几个文件:

  • pgdg-96-centos.repo
  • epel.repo
  • epel-testing.repo

三个文件含有postgresql + postgis的外部下载源。通过yum的方式来安装:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 安装postgresql
yum install postgresql96 postgresql96-server postgresql96-libs postgresql96-contrib postgresql96-devel
# 安装postGIS
yum install postgis24_96

安装成功。接下来就是要将postgresql + postgis依赖的rpm包收集起来,然后做一个yum本地源,就可以进行离线安装了。

三、收集依赖的rpm包

我们可以使用yum命令的--downloaddir参数及--downloadonly参数来将依赖的rpm包下载到本地。具体步骤如下:

  1. 首先需要将postgresql + postgis相关的包进行yum卸载,然后我们再install到本地
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
yum remove postgresql96 postgresql96-server postgresql96-libs postgresql96-contrib postgresql96-devel postgis24_96
  1. 创建目录,指定rpm依赖包的存储目录。我们后续会用到httpd,所以我们先安装httpd服务。
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
yum install -y httpd
# httpd安装成功后,会自动创建/var/www/html/目录,我们将要下载的rpm依赖包放置到该目录下
mkdir /var/www/html/postgres
  1. 下载rpm依赖包
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
yum install --downloaddir=/var/www/html/postgres --downloadonly postgresql96 postgresql96-server postgresql96-libs postgresql96-contrib postgresql96-devel postgis24_96

等下载完毕之后,rpm依赖包如下图所示:

然后我们再搭建yum本地源。

四、搭建yum本地源

  1. 下载createrepo工具
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
yum install -y createrepo
  1. 生成repodata目录
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd /var/www/html/postgres
createrepo .
ll repodata
  1. 删除之前在线安装时的repo文件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd /etc/yum.repos.d
# 删除之前在线安装时的repo文件,以测试yum本地源是否搭建成功
rm -rf epel.repo epel-testing.repo pgdg-96-centos.repo
  1. 启动httpd服务
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
service httpd start
  1. 制作.repo文件

新建postgres.repo文件,并将其放入到/etc/yum.repos.d目录下。文件内容如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[postgres]
name=postgresql and postgis
baseurl=http://liuyzh2.xdata/postgres/
gpgcheck=0
enabled=1

五、yum安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 先卸载postgresql相关包
yum remove postgresql*
# 安装postgresql9.6 + postgis2.4
yum install -y postgresql96 postgresql96-server postgresql96-libs postgresql96-contrib postgresql96-devel postgis24_96

安装成功,如下图所示;

六、总结

总结一下:

  • 我们首先下载了外部repo源,然后通过yum install的方式将需要的服务成功安装。
  • 然后执行yum install --downloaddir=/var/www/html/postgres --downloadonly postgresql96 postgis24_96 …命令,这样就将postgresql96 postgis24_96 …等所依赖的rpm包下载到了/var/www/html/postgres目录下了。
  • 有了依赖的rpm包,就简单多啦。直接制作yum本地源,生成repo文件就行了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-03-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据实战演练 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
linux之yum下载rpm包离线安装
原文链接:https://rumenz.com/rumenbiji/linux-download-rpm.html
入门笔记
2021/10/27
10.4K0
yum下载rpm包
这是我在制作离线化部署项目时,亲自踩得坑,要下载大量rpm包,因为无知,只能从一个干净系统中执行yum -y install来查看依赖项的rpm包有哪些,然后再去复制名字版本去网页中下载。听起来很笨,要是早点觉悟就不止那么麻烦了
互联网-小阿宇
2022/11/21
3.1K0
Redhat/CentOS用yum命令下载依赖和安装包到本地,自建yum源仓库
拓展:同步网络源到本地目录,以方便内网快速传输,更利于制作本地yum源。 reposync --repoid=xxxx #xxxx为镜像仓库名称 命令使用后会在当前目录生成一个一样xxxx 的文件夹,里面放的便是你选择仓库的rpm包,一样xxxx目录下会有一个repodata目录可以为写入repo文件做指定的。写入repo文件便于以下自制本地源一样。 自建yum源就是使用自己本地的rpm包来作为yum的源仓库。扩展 使用yum命令下载安装包以及依赖文件到本地。 1.可以在yum命令安装
Tianlin_Zz
2022/11/01
1.6K0
离线rpm包安装zabbix5.0 LTS版本
经过了两个月的休息,开始了新的工作,zabbix之前有接触,但是不深,后面会着重的学习并分享。
Bob hadoop
2021/06/17
3.6K0
cloudera manager server 安装
1.bin文件: http://archive.cloudera.com/cm5/installer/5.3.6/cloudera-manager-installer.bin 2.依赖rpm包 : http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.3.6/RPMS/x86_64/ 下所有的rpm包
solve
2019/10/30
7200
Centos7.2学习记录(3)——搭建本地yum仓库
胡了了
2017/12/28
1.8K0
Centos7.2学习记录(3)——搭建本地yum仓库
yum更换国内源,yum下载rpm包和源码包的安装
yum更换国内源: 首先进入yum.repos.d 然后删除本地的仓库。 然后重新下载一个源,可以使用 wget http://mirrors.163.com/.help/CentOS7-Base-1
叶瑾
2018/06/14
1.5K0
yum更换国内源,yum下载rpm包,源码包 安装
CentOS自带yum仓库源网址是国外的网址,所以从国内下载国外网址的rpm包有时候会很慢或者无法下载,这时可以更换国内的yum仓库源来解决这个问题。
端碗吹水
2020/09/23
2.6K0
yum更换国内源,yum下载rpm包,源码包 安装
centos7自建yum源 安装rpm
如果生产环境需要大规模的安装部署rpm包,每次安装,更新,都需要上传,安装,比较麻烦,可以在生产环境中自建一个yum源。
菲宇
2022/12/21
9480
yum扩展源、下载rpm包、源码包安装 原
说明: 执行完curl命令后,原有yum源文件CentOS-Base.repo被替换成CentOS7-Base-163.repo。查看该yum源文件:
阿dai学长
2019/04/03
3.5K0
第十五章 yum安装
我们在《Linux系统》一书中介绍过yum的配置,是把光盘作为安装源操作的,配置文件在/etc/yum.repos.d/下,以.repo结尾。其实yum可以设置多个repo文件,即从多个源上下载、查找安装包。本章就来介绍一下有几种镜像源可以设置。
晓天
2019/07/04
2.7K0
第十五章  yum安装
yum 下载全量依赖 rpm 包及离线安装(终极解决方案)
通常生产环境由于安全原因都无法访问互联网。此时就需要进行离线安装,主要有两种方式:源码编译、rpm包安装。源码编译耗费时间长且缺乏编译环境,所以一般都选择使用离线 rpm 包安装。
叨叨软件测试
2020/04/14
25.4K0
定制rpm包-Yum环境搭建
惨绿少年
2017/12/27
1.1K0
定制rpm包-Yum环境搭建
linux学习第二十二篇:yum更换国内源,yum下载rpm包,源码包安装
yum更换国内源 删除/etc/yum.repos.d/下上一部分创建的dvd.repo文件: rm -f dvd.repo 将备份的/etc/yum.repos.d.bak/目录下的所有repo文件复制回/etc/yum.repos.d/目录下: cp /etc/yum.repos.d.bak/* /etc/yum.repos.d/ 删除最核心的配置文件 CentOS-Base.repo: rm -f /etc/yum.repos.d/CentOS-Base.repo 从网上下载国内的
用户1215343
2018/02/05
1.9K0
linux学习第二十二篇:yum更换国内源,yum下载rpm包,源码包安装
使用yum来安装PostgreSQL数据库(从PG9.4到PG16各个版本通用)
PG安装方法很多,和MySQL类似,给用户提供很大的选择空间。如:RPM包安装(在线、离线)、源码编译安装、系统自带、二进制、NDB安装等。
AiDBA宝典
2023/09/19
4.2K0
使用yum来安装PostgreSQL数据库(从PG9.4到PG16各个版本通用)
利用yum离线下载rpm包
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的 前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的 ,而且 简洁而又好记。
用户1685462
2021/09/05
1.5K0
linux基础(day22)
7.6 yum更换国内源 更换yum国内源 cd /etc/yum.repos.d/ rm -f dvd.repo wget http://mirrors.163.com/.help/CentOS7-Base-163.repo 或者 curl -O http://mirrors.163.com/.help/CentOS7-Base-163.repo yum list 更换国内yum源 1.首先切换到该目录下,并cp复制之前备份的文件 [root@hf-01 ~]# cd /etc/yum.repos.d
运维小白
2018/02/06
9440
yum离线安装rpm包
#yum install --downloadonly --downloaddir=/home/samba  samba
庞小明
2018/12/12
5.2K0
7.7 yum下载rpm包
安装扩展源epe目录概要 yum install -y epel-release //安装扩展源 yum list |grep epel //过滤出epel包 yum下载rpm包目录概要 yum install -y 包名 --downloadonly //仅仅下载,而不安装 ls /var/cache/yum/x86_64/7/ //rpm包下载的位置 yum install -y 包名 --dow
运维小白
2018/02/06
3.8K0
yum 快速入门与基础
0x00 Linux中软件安装的几种方式 Q:Linux中的如何进行安装、卸载、升级软件和管理? 答:回答这个问题前需要了解Linux的多个发行版本,不同版本之间安装软件方式和命令不一样,且同一个版本
全栈工程师修炼指南
2022/09/28
1.3K0
yum 快速入门与基础
推荐阅读
相关推荐
linux之yum下载rpm包离线安装
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档