CentOS 利用yum下载离线包

有的时候,我们的服务器由于考虑到安全问题,不能连外网。或者由于下载的源比较慢,所以我们想在自己客户端的电脑上下载好之后,复制到服务器再安装。这个时候我们就可以通过创建一个本地的yum仓库,来解决这一问题。

虽然我们可以使用 curl 或者 wget 等命令来下载网上的软件包,但是一般我们执行安装命令的时候,却会提示我们还要先安装一些其他的依赖软件包,然后又要再下载其他的软件包,这样太费时费力了。

于是,下面我们要介绍的是用yum将安装包及其依赖包下载到本地的方法。

一、Downloadonly工具

我们可以通过 yum 命令的 Downloadonly 插件下载 RPM 软件包及其所有依赖包。如无此命令,请安装:

yum install yum-plugin-downloadonly

1、命令格式:

yum install –downloadonly   软件包名(可加上版本号,指定版本)

2、软件包保存位置:

默认保存到/var/cache/yum/ 下的软件相应的repo的源的目录的packages目录下

cachedir=/var/cache/yum/$basearch/$releasever

/var/cache/yum/x86_64/7/base/packages

  • x86_64是指令集 
  • 7  是 centos版本
  • base 是 repo源
  • packages 包所在最后一层目录
vi /etc/yum.conf 
 
[main] 
 
cachedir=/var/cache/yum 
 
keepcache=1 
 
#将 keepcache=0 修改为 keepcache=1 
#保留的rpm安装包在 /var/cache/yum

1 默认rpm包保留在/var/cache/yum下,找出来并拷贝到需要安装的服务器上。
2 用以下命令安装
 
# 因为部分rpm包互相依赖,只能用此方法安装。
rpm -ivh *.rpm --nodeps --force

也可以通过 –downloaddir 来指定位置,软件包和依赖的软件将被下载到此目录
yum install –downloadonly –downloaddir=/root/mypackages/ vim

二、Yumdownloader工具

我们可以通过 yum 命令的 Yumdownloader 插件下载 RPM 软件包及其所有依赖包。

如无此命令,请安装:

yum install yum-utils

命令格式:

yumdownloader –resolve  –destdir=存放位置   软件包名

  • –resolve    可选,意为下依赖包 
  • –destdir     可选,指定软件存放位置,不加放到当前目录 

例如:yumdownloader --resolve httpd     #下载httpd最新安装包及依赖

[root@localhost http-2.4.6bao-yilai]# ls
apr-1.4.8-5.el7.x86_64.rpm       httpd-2.4.6-90.el7.centos.x86_64.rpm        mailcap-2.1.41-2.el7.noarch.rpm
apr-util-1.5.2-6.el7.x86_64.rpm  httpd-tools-2.4.6-90.el7.centos.x86_64.rpm

然后我们可以将这些包上传到其他机器,利用rpm -ivh *命令,一键安装。

[root@localhost http-2.4.6bao-yilai]# rpm -ivh *
准备中...                          ################################# [100%]
正在升级/安装...
   1:apr-1.4.8-5.el7                  ################################# [ 20%]
   2:apr-util-1.5.2-6.el7             ################################# [ 40%]
   3:httpd-tools-2.4.6-90.el7.centos  ################################# [ 60%]
   4:mailcap-2.1.41-2.el7             ################################# [ 80%]
   5:httpd-2.4.6-90.el7.centos        ################################# [100%]
[root@localhost http-2.4.6bao-yilai]# rpm -q httpd
httpd-2.4.6-90.el7.centos.x86_64
[root@localhost http-2.4.6bao-yilai]# systemctl start httpd.service 
[root@localhost http-2.4.6bao-yilai]# 

 

三、reposync工具

我们可以通过 yum 命令的reposync命令下载 某一个repo源的所有RPM 软件包。

命令格式:

reposync -r repo源的名称  -p  指定下载的路径(可选)

软件包保存位置:
默认,将会下载软件包到当前目录下(自动生成repo源的目录及Packges)

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

亦良Cool

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

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

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

打赏作者

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

抵扣说明:

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

余额充值