Linux保存依赖安装包到指定目录(用于离线安装)

Linux离线安装依赖问题解决方案 通常很多服务器由于安全原因而无法访问互联网,此时常用软件就需要离线安装,安装前需准备一台与待安装服务器系统相同的联网的机器或虚拟机,用于下载离线安装包。 阅读详情

经常与一些保密级别较高的企业打交道,他们使用的网络都是内部网络,根本无法访问到公网,但是部署一些项目时难免会有依赖包需要离线安装。遇到这种问题通常都是手动去下载依赖的库,然后离线安装,但是你无法判断下载的这个依赖库是否还依赖其他库,如果是手动去下载安装将耗费很长时间(他们导入任何文件都要走流程,一次就需要4h左右),为了改善这种情况,就需要将所有依赖都离线下载到本,本文将介绍如何将Centos和Ubuntu的依赖包保存到本地。

CentOS下载 RPM 包及其所有依赖包(推荐yumdownloader)
方法一:
我们可以通过 yum命令的 Downloadonly 插件下载 RPM 软件包及其所有依赖包。 为了安装 Downloadonly插件,以 root 身份运行以下命令。

yum install yum-plugin-downloadonly

现在,运行以下命令去下载一个 RPM 软件包。

yum install --downloadonly <package-name>

默认情况下,这个命令将会下载并把软件包保存到 /var/cache/yum/ 的 rhel-{arch}-channel/packageslocation 目录,不过,你也可以下载和保存软件包到任何位置,你可以通过 –downloaddir 选项来指定。

yum install --downloadonly --downloaddir=<directory> <package-name>

例子:

yum install --downloadonly --downloaddir=/root/mypackages/ httpd

正如你在上面输出所看到的, httpd软件包已经被依据所有依赖性下载完成了 。 请注意,这个插件适用于yum install/yum update, 但是并不适用于 yum groupinstall 。默认情况下,这个插件将会下载仓库中最新可用的软件包。然而你可以通过指定版本号来下载某个特定的软件版本。 例子:

yum install --downloadonly --downloaddir=/root/mypackages/ httpd-2.2.6-40.el7

此外,你也可以如下一次性下载多个包:

yum install --downloadonly --downloaddir=/root/mypackages/ httpd vsftpd

方法二:
Yumdownloader是一款简单,但是却十分有用的命令行工具,它可以一次性下载任何 RPM 软件包及其所有依赖包。 以 root 身份运行如下命令安装 Yumdownloader 工具。

yum install yum-utils

一旦安装完成,运行如下命令去下载一个软件包,例如 httpd。

yumdownloader httpd

为了根据所有依赖性下载软件包,我们使用 –resolve参数:

yumdownloader --resolve httpd

默认情况下,Yumdownloader 将会下载软件包到当前工作目录下。 为了将软件下载到一个特定的目录下,我们使用 –destdir 参数:

yumdownloader --resolve --destdir=/root/mypackages/ httpd

或者,

yumdownloader --resolve --destdir /root/mypackages/ httpd

终端输出:

Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * epel: epel.mirror.angkasa.id
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net
--> Running transaction check
---> Package httpd.x86_64 0:2.4.6-40.el7.centos.4 will be installed
--> Processing Dependency: httpd-tools = 2.4.6-40.el7.centos.4 for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: /etc/mime.types for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.4.6-40.el7.centos.4.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-3.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
---> Package httpd-tools.x86_64 0:2.4.6-40.el7.centos.4 will be installed
---> Package mailcap.noarch 0:2.1.41-2.el7 will be installed
--> Finished Dependency Resolution
(1/5): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:00:01 
(2/5): mailcap-2.1.41-2.el7.noarch.rpm | 31 kB 00:00:02 
(3/5): apr-1.4.8-3.el7.x86_64.rpm | 103 kB 00:00:02 
(4/5): httpd-tools-2.4.6-40.el7.centos.4.x86_64.rpm | 83 kB 00:00:03 
(5/5): httpd-2.4.6-40.el7.centos.4.x86_64.rpm | 2.7 MB 00:00:19

让我们确认一下软件包是否被下载到我们指定的目录下。

ls /root/mypackages/
终端输出:

apr-1.4.8-3.el7.x86_64.rpm
apr-util-1.5.2-6.el7.x86_64.rpm
httpd-2.4.6-40.el7.centos.4.x86_64.rpm
httpd-tools-2.4.6-40.el7.centos.4.x86_64.rpm
mailcap-2.1.41-2.el7.noarch.rpm\

不像 Downloadonly 插件,Yumdownload 可以下载一组相关的软件包。 yumdownloader “@Development Tools” --resolve --destdir /root/mypackages/ 我更推荐使用Yumdownloader ,但是两者都是十分简单易懂而且可以完成相同的工作。
Ubuntu 下载 deb 包及其所有依赖包

 aptitude clean
 
 aptitude --download-only install <your_package_here>
 
 cp /var/cache/apt/archives/*.deb <your_directory_here>

或者

sudo apt-get install --reinstall -d $(apt-cache depends kubeadm | grep Depends |cut -d: -f2 | tr -d "<>")
#!/bin/bash

logfile=/home/perrin/Desktop/log
ret=""
function getDepends()
{
   echo "fileName is" $1>>$logfile
   # use tr to del < >
   ret=`apt-cache depends $1|grep Depends |cut -d: -f2 |tr -d "<>"`
   echo $ret|tee  -a $logfile
}
# 需要获取其所依赖包的包

libs="gnome-shell"                  # 或者用$1,从命令行输入库名字

# download libs dependen. deep in 3
i=0
while [ $i -lt 3 ] ;
do
    let i++
    echo $i
    # download libs
    newlist=" "
    for j in $libs
    do
        added="$(getDepends $j)"
        newlist="$newlist $added"
        apt install $added --reinstall -d -y
    done

    libs=$newlist
done

参照:

https://jermine.vdo.pub/linux/linux%E4%BF%9D%E5%AD%98%E4%BE%9D%E8%B5%96%E5%AE%89%E8%A3%85%E5%8C%85%E5%88%B0%E6%8C%87%E5%AE%9A%E7%9B%AE%E5%BD%95/
https://blog.youkuaiyun.com/junbujianwpl/article/details/52811153
Linux没网络的情况下快速安装依赖或软件(挂载本地yum仓库源(Repository)) LInux没联网的情况下快速安装依赖 阅读详情

相关推荐

linux离线安装tcpdump

tcpdump离线安装

qq_43522910的博客 9791

linux离线安装各种依赖

以安装glibc-2.17-292.el7.i686.rpm 为例: 在需要安装的主机上直接执行安命令,来查看需要的依赖包 sudo yum install glibc-2.17-292.el7.i686.rpm 可以查看到需要的依赖包 Error downloading packages: nspr-4.21.0-1.el7.x86_64: [Errno 256] No more mirrors to try. nss-softokn-freebl-3.44.0-5.el7.x8...

QYmufeng的博客 1万+

linux 离线安装nfs,ubuntu 上离线安装包制作与安装之NFS搭建

在Ubuntu上离线搭建NFS服务器一、制作离线软件包在联网且环境与你相同的电脑上 制作离线软件包注:先查看有没有安装nfs-utils的安装包 命令:# rpm -q nfs-utils1、下载软件所需deb包#sudo apt-get install nfs-kernel-server下载后安装包在/var/cache/apt/ archives目录下2、生成依赖关系#sudo apt-get...

weixin_39548832的博客 3061

CentOS7中下载RPM及其所有的依赖包

利用 Downloadonly 插件下载 RPM 软件包及其所有依赖包 我们可以通过 yum 命令的 Downloadonly 插件下载 RPM 软件包及其所有依赖包。 为了安装 Downloadonly 插件,以 root 身份运行以下命令。 yum install yum-plugin-downloadonly 现在,运行以下命令去下载一个 RPM 软件包。 yum install --do...

beeworkshop的博客 8211

CentOS 7 Linux 离线安装 Docker:离线安装包、依赖文件、安装步骤

本文详细介绍了在无网络环境下为 CentOS 7 系统离线安装 Docker 的完整流程,包括版本选择、安装包与依赖文件的下载、GPG 公钥导入、RPM 包安装顺序、服务启动验证,以及常用 Docker 命令速查。内容兼顾实用性与可操作性,适合运维人员、开发者在内网或隔离环境中快速部署 Docker 环境。

寒水馨 · 轻量级技术文档 · hanshuixin.org 2066

CentOS7最新的 libcap 依赖包(离线安装 ftp 时可能需要)

CentOS7最新的libcap依赖包,libcap-2.22-11.el7.x86_64.rpm、libcap-devel-2.22-11.el7.x86_64.rpm(大家可以免费下载)

Linux系统离线安装包及其依赖的下载安装

我们在Linux系统下进行项目开发时,经常会出现缺少某些依赖库或者开发包的情况,这时候一般会通过使用apt命令去联网下载。但在某些特殊情况下(例如终端硬件不支持网络连接,周边缺少有线与无线网络,或者需要批量安装程序到很多终端上时),就需要我们先将对应的依赖环境安装包下载下来,然后拷贝到对应终端上手动安装。以下就针对Linux系统下载与安装离线安装包以及依赖包的相关知识进行整理。

weixin_56291477的博客 2万+

ZYNQ-Video out IP与Video Timing Controller IP协同工作模式解析

本文深入解析了ZYNQ平台上Video out IP与Video Timing Controller IP的协同工作模式,详细介绍了它们的架构、工作原理及配置要点。通过AXI4-Stream接口实现高效视频数据传输,并结合HDMI输出系统设计实践,为开发者提供了实用的调试技巧和性能优化建议。

redis7keeper的博客 637

linux收集离线安装包及依赖包

本文介绍了Linux系统下离线安装包及依赖包的收集方法,针对CentOS/RHEL和Ubuntu/Debian系统分别提供了多种解决方案。 对于CentOS/RHEL系统: 推荐使用repotrack下载全量依赖包 也可使用yumdownloader或downloadonly下载系统缺少的依赖包 提供了三种离线安装方式 对于Ubuntu/Debian系统: 使用apt install -d下载包及依赖 通过apt download仅下载主软件包 推荐使用apt-offline工具直接指定下载目录 提供了离线

技术分享 1373

Hermes Agent Windows安装教程:本地智能体离线部署实战

本地智能体(Local Agent)是一种运行在用户设备端、无需云端依赖即可响应自然语言指令并自动化执行任务的轻量级AI运行时框架。其核心原理基于配置驱动的任务监听与脚本调用机制,通过服务化驻留实现持续响应能力,技术价值在于保障数据隐私、规避API调用限制、适配内网及老旧系统环境。典型应用场景包括财务报表自动整理、科研仪器数据归档、IT资产变更通知等Windows桌面自动化需求。本文聚焦Hermes Agent这一主流开源实现,围绕Windows平台特有的服务注册、权限模型、杀软拦截、中文路径与YAML编码

weixin_34411563的博客 433

传感器融合的智能演进:ST-MC-Workbench中霍尔与编码器的协同控制策略

本文探讨了ST-MC-Workbench中霍尔传感器与编码器的协同控制策略,通过传感器融合技术提升电机控制精度。文章详细介绍了分层处理架构、霍尔安装角度优化及编码器Z脉冲容错机制,展示了在新能源汽车和工业应用中的实际效果,为高精度位置检测提供了解决方案。

weixin_29159441的博客 482

【Linux】yum如何下载离线安装包?(详解)

首先我们要在有外网的环境中下载离线包;yum下载离线安装包的参数及解析;实例:Centos7 yum直接下载安装lrzsz命令,下载完并不会有安装包残留,直接就会安装上; Centos7 yum下载离线安装包mysql,不进行安装,只需要离线安装包,并且放到/data/mysql目录中; 然后咱们可以把rpm包下载到本地,之后使用的时候就可以上传到内网环境中,直接rpm -ivh 包名安装就可以了。......

liu_chen_yang的博客 1万+

手机Camera硬件电路设计:从电源管理到信号完整性的实战解析

本文深入解析了手机Camera硬件电路设计的核心挑战与实战经验,重点聚焦于电源管理与信号完整性两大基石。文章详细阐述了AVDD、DVDD、IOVDD和AFVDD四路电源的差异化设计要点与噪声控制策略,并剖析了MIPI等高速信号通道的完整性设计原则,为硬件工程师提供了从理论到PCB布局布线的完整实战指南。

weixin_28308325的博客 250

Linux Anaconda使用、离线安装包及其依赖库

如果您需要在没有网络连接的环境下安装 scikit-image 和其依赖库,比较好用的方法是:在另一台已连接网络的计算机上,使用包管理器 pip 或 conda 下载 scikit-image 及其依赖库。这将下载 scikit-image 和所有的依赖库到当前目录下。

wokaowokaowokao12345的专栏 6122

Plot3d 网格数据格式

PLOT3D是一个计算机图形程序,旨在可视化计算流体力学的网格和解决方案。PLOT3D文件可以是ASCII, 也可是Fortran unformatted 或 C binary形式。PLOT3D文件分为网格文件(XYZ 文件), 空气动力学结果文件 (Q 文件)和通用结果文件(函数文件 + 函数名称文件)。网格文件中可加入所谓的IBlank参数。

weixin_62592231的博客 3721

2025年人形机器人产业研究

人形机器人是一种模仿人类外形、动作和行为的机器人,旨在替代或辅助人类完成各种任务。其显著特征包括人类外形、动作模仿和智能交互能力。根据形态和功能,人形机器人可分为小型、中型、大型以及服务型、工业型、救援型和娱乐型等类别。发展历程经历了初始阶段、高度集成系统阶段和突破性进展阶段,技术不断进步。关键技术包括执行系统、控制系统和感知与交互系统,涉及机械结构、运动控制、平衡控制、任务执行控制以及感知与交互能力。主要研究方向包括外部仿人化和内部仿生,前者关注外观设计、动作控制和任务执行能力,后者致力于模拟人类核心机制

一名80后IT人的成长记录,记录自己在工作、学习中的点点滴滴,在成长的喜悦与忧心的故事里,铭记反脆弱的勇气。 1569

lrzsz Linux 离线安装包

lrzsz Linux 离线安装包 【下载地址】lrzszLinux离线安装包 lrzsz是一款在Linux系统中广泛使用的文件传输工具,支持rz和sz命令,方便在Linux与Windows之间进行文件传输。本仓库提供了lrzsz的离线安装包,适用于无法联网的环境。通过简单的解压、编译和安装步骤,您可以快速在Linux系...

gitblog_06720的博客 747

36 Agent Memory:如何让智能体记住该记的东西

Agent 会调用工具,只能说明它有了行动能力。要让它跨会话、跨任务持续工作,还需要一套可治理的 Memory 系统。本文讲清上下文窗口、RAG 和 Agent Memory 的区别,以及工作记忆、情景记忆、语义记忆、程序记忆该如何分层设计。

老于的笔记的专栏 89

ubuntu离线安装软件及依赖

ubuntu离线安装软件包及依赖包,以及依赖关系循环时的处理方式

u012123768的博客 5074

【系统分析师】2026年上半年真题:案例分析-答案及详解(回忆版)

案例一聚焦因果分析法(鱼骨图)的应用,分析企业订单履约问题。问题1阐述因果分析法定义及常见方法(鱼骨图、5个为什么等);问题2将8个原因归类为人员、方法、合同等5类;问题3筛选适合鱼骨图的场景(如系统响应慢、服务器故障等),强调其适用于复杂根因分析。 案例二对比嵌入式系统中Linux与RTOS的差异(实时性、资源占用等),结合智能监控终端需求推荐Linux+四核ARM方案(高算力、性价比),并列选Linux的5大优势(生态成熟、多任务支持等)。 案例三设计互联网医院系统用例图(患者、医生等参与

数据知道的博客 1353

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

linux 安装nginx到指定目录

1.主机可以连外网 这样可以直接在线安装 pcre ,zlib,openssl(安装nginx时一般都需要提前安装这些) pcre :PCRE库支持正则表达式。如果我们在配置文件nginx.conf中使用了正则表达式,那么在编译Nginx时就必须把PCRE库编译进Nginx zlib:zlib库用于对HTTP包的内容做gzip格式的压缩,如果我们在nginx.conf中配置了gzip on,并指定对于某些类型(content-type)的HTTP响应使用gzip来进行压缩以减少网络传输量,则在编译时.

VIP006008的博客 7485

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Linux安装MySQL缺少libaio依赖问题处理全离线安装包:让MySQL安装更顺畅

Linux安装MySQL缺少libaio依赖问题处理全离线安装包:让MySQL安装更顺畅 【下载地址】Linux安装MySQL缺少libaio依赖问题处理全离线安装包 在Linux系统上安装MySQL时,常因缺少libaio依赖导致安装失败。本开源项目提供了一套全离线安装包,帮助用户轻松解决这一问题。通过简单的下载、解压...

gitblog_06703的博客 416

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

NFS离线安装包(含所有依赖-已亲测)

NFS离线安装包(含所有依赖-已亲测) 【下载地址】NFS离线安装包含所有依赖-已亲测 NFS离线安装包(含所有依赖-已亲测) 项目地址: https://gitcode.com/open-source-toolkit/58748...

gitblog_09724的博客 1155

【免费下载】 PostgreSQL V15 在 CentOS7 上的离线安装包及依赖文件

本仓库提供了在 CentOS7 操作系统上离线安装 PostgreSQL V15 所需的完整软件包集合。如果您因为网络限制或安全策略需要在没有互联网连接的环境下部署 PostgreSQL 15,这些资源将是您的理想选择。此套资源包含了 PostgreSQL 15 的核心组件以及必要的依赖库,确保您能顺利进行离线安装和运行。 ## 包含文件列表: - `libzstd-1.5.5-1.el7.x

gitblog_09732的博客 1596

【亲测免费】 Linux CentOS 谷歌浏览器离线安装包及所有依赖

Linux CentOS 谷歌浏览器离线安装包及所有依赖 【下载地址】LinuxCentOS谷歌浏览器离线安装包及所有依赖 本仓库提供了一个适用于 Linux CentOS 系统的谷歌浏览器离线安装包及其所有依赖。该安装包版本为 `google-chrome-stable-87.0.4280.66-1.x86_64.rp...

gitblog_09816的博客 888

Linux - Nginx离线安装(安装包的方式安装Nginx)

nginx离线安装

weixin_46739493的博客 1479
上一篇: 【nginx】源码安装nginx以及手动配置域名ssl证书
下一篇: MySQL 8.0.23 源码安装
和月明
博客等级 码龄6年 214粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值