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


猜你喜欢
- 今天是12月的第二天,正好是我网站运行5个月的纪念日。所以,今天就写了这篇文章来回忆一下我的站在成长过程中的几个飞跃。7月初的时候网站刚刚成
- 近期,我发现,将镜像压缩包使用docker load -i 命令之后,镜像的名字和标签都是none,每次都需要重命名镜像,很是麻烦这个问题的
- 我们终于进入了这个社会。从此结束了被学校老师看管的生涯,结束了做父母乖宝贝的日子,也结束从父母兄长那里拿钱的幸福时光。我们从家里搬了出来,提
- 今天来介绍Godaddy主机用户怎样使用Microsoft Publisher 2003创建FTP位置,具体步骤如下:首先.从Microso
- Google这个搜索巨人很少暴露其数据中心,但在上周,Google研究员Jeff Dean在Google I/O会议上揭秘了它的部分运行情况
- 环境安装JAVA在这里使用yum来安装java的jdk,可以使用指令yum search java | grep jdk来查看yum下提供了
- 一、Rewrite规则简介:Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基于服务器级的(httpd.c
- 圣何塞搜索引擎策略( SES )大会上,显现的主要趋势之一是:图像搜索这一角色越来越重要。这篇文章将会谈一点有关:图像搜索的重要性为什么会逐
- CesarFTP是一款非常优秀的免费FTP服务器端软件,虽然它的体积很小,但功能却非常完善。它的安装非常简单,不需要像其它FTP服务器软件那
- 本文讲解的是服务器虚拟化的十大必须考虑因素。1. 性能为什么处理损耗如此重要?因为它影响应用程序的性能,并最终影响客户的满意程度。如果虚拟化
- Windows的操作系统最头痛的问题莫过于最段时间就要重启一次,服务器版依然如此,过阵子不重启就感觉总有地方不对劲!但手工重启那就非常麻烦了
- 有些发布商可能收到过这样的通知邮件:“发布商不得更改 Google 广告的行为或定位,包括在 “浮动框脚本”中实施 AdSense 广告代码
- V5MALL: 多用户商城的到来过去的2009年是电子商务的“爆发之年”,而2010年作为电子商务“繁荣之年”网购用户规模与交易规模的迅速增
- 随着Web 2.0的发展,互联网的互动性已经越来越强,不过据IT安全公司Radware安全运营中心主管Itzik Kotler的警告,Jav
- 刚好要重装虚拟机上的CentOS系统,就顺便记录下来给新手朋友们做做参考,在windows平台上通过安装虚拟机学习linux基本上是linu
- 从10月7号开始到10月15日止,已经有8天了,网络上关于uucall断网事件的真相之争从来就没有停息过。根据专业人士的判断以及网友们的各种
- WordPress是目前世界上使用广泛的博客软件,比较容易受到各种攻击,因此WordPress安全性也是非常重要的,以下有10个安全技巧,可
- 登录到Godaddy,然后点解导航菜单 Domain Manager 然后在域名管理页面点击菜单中的 Panding Transfers 这
- 曾几何时,我就经常听闻在电视媒体上播放的广告,由王刚代
- 1、查看内存槽数、那个槽位插了内存,大小是多少dmidecode|grep -P -A5 "Memory\s+Device&quo