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

作者:AndersJing 时间:2023-11-03 00:48:26 

概述

面对无法联网的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

总结

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

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

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

来源:http://blog.csdn.net/lanjianhun/article/details/69360406

标签:yum,安装,rpm包
0
投稿

猜你喜欢

  • 个人网站怎样转成商业网站

    2008-07-29 19:32:00
  • 阿江: 网站要专业,更要简单

    2008-11-10 13:11:00
  • 基于Linux的虚拟主机搭建

    2008-10-14 14:11:00
  • 探秘Google数据中心内部运行

    2008-06-03 11:43:00
  • 社会化媒体整合营销 到底是希望还是忽悠

    2009-04-07 12:34:00
  • 草根站长对分类信息的一点想法

    2009-03-05 13:44:00
  • 如何利用404错误页面引导流量、吸引点击

    2009-02-05 03:08:00
  • 安装IIS发布我的第一个网站图文教程

    2022-08-28 12:46:53
  • 我们应该做一个勤劳和有想法的站长

    2007-06-23 14:14:00
  • 社区运营的经验分享 吸引用户仅是第一步

    2008-11-26 16:21:00
  • 解析Zabbix 5.0磁盘自动发现和读写监控的问题

    2021-09-09 16:58:41
  • Linux 中firewall的使用方法总结

    2023-07-13 07:52:25
  • Linux命令替换rm命令防止误删除

    2023-08-29 23:57:52
  • 怎样做反向域名解析(反向DNS解析)?

    2010-02-05 19:18:00
  • 构建反病毒反垃圾邮件系统(六)

    2007-10-08 13:50:00
  • 在VMware上 安装 centos8的详细教程

    2022-08-06 17:11:26
  • 网赚贵在坚持

    2010-05-10 14:18:00
  • 设置IP安全策略将木马阻杀在端口外

    2009-11-24 13:16:00
  • 学生站长持续自己的冬天 仍坚守春天的期待

    2008-12-01 14:08:00
  • 谷歌操作系统打破微软垄断 相互渗透核心业务

    2009-11-22 09:41:00
  • asp之家 网站运营 m.aspxhome.com