背景

   实际开发中,我们的linux服务器是处理离线状态的,并不能访问互联网。如果此时要在linux上安装或者升级软件,就只能通过rpm包的安装方式。rpm包安装有一个缺陷,就是不能处理安装包的依赖问题,这也是为什么在联网状态大家都用yum的方式来安装软件了,因为yum可以自动解决依赖包问题。

  解决思路:有人说就直接用rpm包来安装,缺少哪个依赖包就去下载依赖包。这样原则上说是可以的,安装简单软件就可以采用这种方法。不过通常我们安装的rpm软件包依赖比较多,不能手动去下载依赖包的,而且很多依赖包找不到。所以此时应该采用yum命令来下载软件包,同时将其依赖一起下载下来。yum命令有这种功能,只下载安装包和依赖,但是不安装。采用这种方式就需要有一台能联网linux,从能联网的linux上下载安装包及其依赖,然后拷贝到离线的服务器上,这样就可以轻松完成安装了


此处以升级vsftpd为例(机器为centos7的64位系统,下载的vsftpd为3.0,不同的centos版本会有不同版本的安装包)

1、下载安装yum插件下载软件包及依赖

安装yumdownloade

yum install yum-utils -y

列出能联网系统的所有可安装的vsftpd软件

yum list | grep vsftpd

下载软件包vsftpd.x86_64及依赖到指定目录/root/package/httpd

yumdownloader vsftpd.x86_64   --resolve --destdir=/root/package/httpd

2、将指定目录下的rpm包及其依赖拷贝到离线的服务器安装

将rpm安装包集中放在一个文件夹下,rpm可能一个或者多个,不要一个个去安装rpm,使用同时安装的命令,此事系统就会正确的安装软件包

rpm -ivh --replacefiles *.rpm

3、恭喜您成功安装,同样,对于任何别的软件都采用这种方式

@转载请注明出处,thanks!

离线安装rpm包并解决依赖(升级vsftpd为例)的更多相关文章

  1. centos7离线安装rpm包自动解决依赖

    离线安装rpm包自动解决依赖参照https://blog.csdn.net/u011396718/article/details/80153515当生产环境由于安全原因处于断网状态的时候.通过本地源的 ...

  2. CentOS里下载和离线安装rpm包

    离线下载rpm包    yum --downloadonly --downloaddir=/home/packages install mariadb-devel 安装离线rpm包    进入下载包的 ...

  3. yum离线安装rpm包

    CentOS利用yum下载好rpm包,并离线安装   1.联网安装好rpm包,并将下载好的包备好 #yum install --downloadonly --downloaddir=/home/sam ...

  4. docker-ce-17.03.2 离线安装RPM包

    [root@docker05 docker]# ll total 20796 -rw-r--r-- 1 root root    75032 Mar 26 23:52 audit-libs-pytho ...

  5. 解决安装rpm包依赖关系的烦恼 - yum工具介绍及本地源配置方法

    版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...

  6. 安装rpm包时提示错误:依赖检测失败的解决方法

    安装rpm包时提示错误:依赖检测失败 解决方法: 命令末尾加上--nodeps --force

  7. Linux系统手动安装rpm包依赖关系分析(以Kernel升级为例)

    有在Linux系统中安装软件的经历的人都知道,在Linux系统中手动安装软件不想在Windows下安装软件那么方便,直接双击,然后下一步下一步就可以把软件成功的装入到系统中,而在Linux系统中,安装 ...

  8. 安装rpm包时遇到Header V3 DSA signature: NOKEY时解决办法

    安装rpm包,特别是没有GPGkey校验,原因是rpm版本过低导致的. 代码如下: warning: rpmts_HdrFromFdno: Header V3 DSA signature: NOKEY ...

  9. 插入光盘,创建挂载点,挂载设备,安装rpm包,升级rpm包,卸载rpm包,查询rpm包是否安装,查询rpm包信息、安装位置,查询系统文件名属于哪个安装包

    插入光盘: 创建挂载点: 创建挂载点. 挂载设备:或者mount /dev/sr0 /mnt/cdrom 安装rpm包: [root@localhost Packages]# rpm -ivh mys ...

随机推荐

  1. EEPROM工作原理透彻详解

    原文链接点击这里 EEPROM(Electrically Erasable Programmable read only memory)即电可擦可编程只读存储器,是一种掉电后数据不丢失(不挥发)存储芯 ...

  2. docker4-docker网络,容器编排,集群部署

    1,docker网络 1.1,docker0 有三个网络环境,那么docker是如何处理容器网络访问的? 1.2,测试 docker run -d -p 80:8080 --name tomcat01 ...

  3. Terraform插件Provider管理,搜索、定义、下载

    我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 简介 最近工作中用到了Terraform,权当学习记录一下,希望能帮助到其它人. Terraform系列文章如下: Ter ...

  4. ES6 数组的方法

     数组的类 数组的类是Array 数组的定义 var arr=[元素] var arr=new Array(3) 数字3,代表有三个元素或者三个空位 如果数组定义采用 new 实例,类中跟的是一个数字 ...

  5. Android系统编程入门系列之加载界面Activity

    上回说到应用初始化加载及其生命周期,在Android系统调用Applicaiton.onCreate()之后,继续创建并加载清单文件中注册的首个界面即主Activity,也可称之为入口界面.主Acti ...

  6. 11、文件比较与同步工具(FreeFileSync)

    11.1.基本介绍: 1.FreeFileSync是一个用于文件同步的免费开源程序.FreeFileSync通过比较其内容,日期或文件大小上的一个或多个文件夹,然 后根据用户定义的设置同步内容.除了支 ...

  7. 运行cmd时提示你可能没有适当的权限访问该项目

    Windows无法访问指定设备.路径或文件.你可能没有适当的权限访问该项目.   方法/步骤   在C:\Windows\System32目录下中找到cmd.exe文件   右键点击 "属性 ...

  8. 利用C语言识别用户输入字符并且输出该字符ASCII码值(大小写字母篇)(含思路)

    要求:从键盘输入一个字符,如果输入字符的是小写英文字母,则将其转换为大写英文字母,然后将转换后的英文字母及其ASCII码值输出到屏幕上,如果输入的是其他字符,则不转换并且直接将它及其ASCII码值输出 ...

  9. 应用CRM的自动化功能为什么备受推崇

    相信每个销售团队都遇到过这样的问题:在跟进新客户的时候顾此失彼,在跟踪一个客户的时候,转眼就忘记了另一个客户.这种情况很常见,但是每个新客户都有潜在的价值,我们该如何做,才能避免错失商机?CRM客户管 ...

  10. 【转载】CentOS-Docker安装MongoDB(单点)

    下载镜像 $ docker pull mongo 创建相关目录 $ mkdir -p /usr/mongo/data /usr/mongo/dump 运行镜像 $ docker run --resta ...