yum安装本地rpm软件方案详解

概述

面对无法联网的centos系统,安装rpm软件包是一个比较耗时的工作,尤其是那些包含很多依赖的软件包,如果用rpm命令安装,可以说是一个噩梦。这里根据个人实践发布一个比较完整方便的解决方案。(注:本方案在centos6.564bit测试可用)

具体方案

基本环境介绍

目标操作系统:centos6.564bit,下称“目标机”(无法联网用yum安装)

本地环境:在VMware下安装的纯净centos6.564bit,下称“虚拟机”(可以联网用yum下载安装包)

本方案基本思路是在一个可以联网的系统中下载rpm安装包,然后传到无法联网的目标操作系统,建立安装源,进行安装。为了减少不必要的麻烦,在本地用虚拟机安装一个和目标操作系统一模一样的但是没有安装任何额外软件的系统,用于下载各种安装包和依赖包。

配置本地环境

在虚拟机内配置yum只下载RPM包而不安装,这里要使用–downloadonly选项,需要先安装yum-plugin-downloadonly。

# yum install yum-plugin-downloadonly 

在本地环境下载rpm安装包

# yum install --downloadonly --downloaddir=/tmp RPM_Name

/tmp为指定下载的目录,RPM_Name为目标软件。

yum–downloadonly会只下载RPM包不安装,同时会把依赖的包都下载下来,注意如虚拟机已经安装了依赖包,则不会下载,因此务必确保虚拟机的纯净(如果有方案可以下载已经有的依赖包,欢迎告知)。

需要说明的是,为了在目标机构建软件源,createrepo是必不可少的模块,因此需要在虚拟机上下载createrepo相关模块。

# yum install --downloadonly --downloaddir=/tmp createrepo

一般会下载三个包,一个是createrepo,另外两个是依赖包。

上传rpm安装包到目标机

采用scp或者pscp.exe(Windows下)等方式将rpm安装包文件上传到目标机,并修改权限为可执行(chmod755RPM_Name)。

在目标机构建本地软件源

安装createrepo

在目标机安装createrepo:

# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
# rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
# rpm -ivh createrepo-0.9.9-24.el6.noarch.rpm

createrepo构建本地软件源

假设安装包在目标机的/home/user/rpms/目录下。

# createrepo /home/user/rpms

修改yum软件源

移除现有的软件源

# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bk

开启本地软件源

# vim /etc/yum.repos.d/CentOS-Media.repo

在baseurl增加一行:

=file:////home/user/rpms/

然后修改: enabled=1
这样就可以使yum采用本地源安装软件。

在目标机安装目标软件

使用yum正常安装软件即可。

# yum install demo

如果用的是纯净的虚拟机环境,并且和目标机保持一致,那么依赖包就会都安装,yum安装就会很顺利。除非个别包会有依赖冲突,A依赖B,B又依赖A,导致无法安装,此时可以用rpm命令强制安装其中一个,再用yum安装软件即可。

# rpm -ivh demo.rpm --nodeps --force

总结

以上就是本文关于yum安装本地rpm软件方案详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

10 个超级有趣的 Linux 终端游戏分享

关于Linux系统,你可能还不知道的七件事

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

(0)

相关推荐

  • yum安装(卸载)本地rpm包的方法

    举例: 一.yum安装和卸载jdk 1.先查看是否有版本: #rpm -qa|grep jdk 2.再卸载 #yum remove Java-*-openjdk –y #yum remove java-1.8.0-openjdk-headless-1.8.0.91-1.b14.el6.x86_64-y 3.使用yum安装本地jdk的rpm包 #yum localinstall /opt/soft/jdk-8u45-Linux-x64.rpm -y 二.rpm命令安装jdk 1.安装jdk: 使用

  • Linux 中 RPM包 安装 查询 卸载命令小结及yum命令详解

    之前一直在用ubuntu,安装卸载软件基本上是使用apt-get 这个非常的简单,而且过程中遇到的软件依赖会自动帮我们处理,类似于傻瓜式安装.另外在 Linux 操作系统下,几乎所有的软件都可以通过RPM 进行安装.卸载及管理等操作.RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件.Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装.RPM 有五种操作模式,分别为:安装.卸载.升级.查

  • YUM解决RPM包安装依赖关系及yum工具介绍本地源配置方法详解

    1.背景概述 在实际生产环境下,对于在linux系统上安装rpm包,主要面临两个实际的问题 1)安装rpm包过程中,不断涌现的依赖关系问题,导致需要按照提示或者查询资料,手工安装更多的包 2)由于内外网的隔离,无法连接外网的yum源 鉴于上述因此,本文将详细介绍,yum工具以及配置本地yum源的方法 2.yum工具简介 •yum工具作为rpm包的软件管理器,可以进行rpm包的安装.升级以及删除等日常管理工作,而且对于rpm包之间的依赖关系可以自动分析,大大简化了rpm包的维护成本. •yum工具

  • yum安装本地rpm软件方案详解

    概述 面对无法联网的centos系统,安装rpm软件包是一个比较耗时的工作,尤其是那些包含很多依赖的软件包,如果用rpm命令安装,可以说是一个噩梦.这里根据个人实践发布一个比较完整方便的解决方案.(注:本方案在centos6.564bit测试可用) 具体方案 基本环境介绍 目标操作系统:centos6.564bit,下称"目标机"(无法联网用yum安装) 本地环境:在VMware下安装的纯净centos6.564bit,下称"虚拟机"(可以联网用yum下载安装包)

  • CentOS7 通过YUM安装MySQL5.7的步骤详解

    1.进入到要存放安装包的位置 cd /home/lnmp 2.查看系统中是否已安装 MySQL 服务,以下提供两种方式: rpm -qa | grep mysql yum list installed | grep mysql 3.如果已安装则删除 MySQL 及其依赖的包: yum -y remove mysql-libs.x86_64 4.下载 mysql57-community-release-el7-8.noarch.rpm 的 YUM 源: wget http://repo.mysql

  • Centos7 Yum安装PHP7.2流程教程详解

    Centos7Yum安装PHP7.2 1.安装源 安装php72w,是需要配置额外的yum源地址的,否则会报错不能找到相关软件包. php高版本的yum源地址,有两部分,其中一部分是epel-release,另外一部分来自webtatic.如果跳过epel-release的话,安装webtatic的时候,会有错误爆出. 所以,这里需要的命令是: rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-rele

  • centos通过yum安装JDK1.8的教程详解

    安装之前先检查一下系统有没有自带open-jdk 命令: rpm -qa |grep java rpm -qa |grep jdk rpm -qa |grep gcj 如果没有输入信息表示没有安装. 如果安装可以使用rpm -qa | grep java | xargs rpm -e --nodeps 批量卸载所有带有Java的文件  这句命令的关键字是java 首先检索包含java的列表 yum list java* 检索1.8的列表 yum list java-1.8*   安装1.8.0的

  • 如何查找YUM安装的JAVA_HOME环境变量详解

    前言 开发中很多需要javac 的程序依赖 JAVA_HOME环境变量. 如果是手工下载源码安装的JDK,很容易知道JAVA_HOME的目录. 例如 whereis javac javac: /usr/local/jdk1.8.0_74/bin/javac 那么对应的 JAVA_HOME 为 /usr/local/jdk1.8.0_74. 而 YUM 安装的 jdk, 不需要配置 PATH, 因为已经自动使用软连接做好了. echo $PATH javac -version 1. YUM安装JD

  • Linux yum 命令安装mysql8.0的教程详解

    一 ,做好安装前的清理工作 rpm -pa | grep mysql 或者 rpm -qa | grep -i mysql yum remove mysql-xxx-xxx find / -name mysql rm -rf /xxx/xxx/xxx 二 , 下载对应的安装包 下载链接:https://dev.mysql.com/downloads/repo/yum/  三 , 安装mysql 执行rpm文件 rpm -ivh mysql57-community-release-el7-11.n

  • Linux 6 下编译安装 PHP 5.6实例详解

    Linux 6 下编译安装 PHP 5.6实例详解 PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域.PHP以其开发源代码,免费,快捷,跨平台,高效,面向对象,强大的动态图像创建等功能深受广大开发者的喜爱.本文描述基于CentOS 6.7下编译安装PHP 5.6.9,同样也适用于CentOS 7下安装. 一.相关依赖包安装

  • 在 CentOS 7 中安装 MySQL 8 的教程详解

    准备 本文环境信息: 软件 版本 CentOS CentOS 7.4 MySQL 8.0.x 安装前先更新系统所有包 sudo yum update 安装 1. 添加 Yum 包 wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm # 或者 wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm sudo yum up

  • CentOS 7.2安装Zabbix 3.2教程详解

    安装环境:VMware虚拟机 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [root@localhost ~]# uname -a Linux localhost.localdomain 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 为方便你参考,发

随机推荐