centos6.9-yum安装本地rpm软件-未联网电脑安装-查看软件包依赖关系
文章目录 在实际的centos服务器中,经常遇到客户需要在未联网的电脑中安装服务器程序,实现服务器程序的打包运行,这时可以采取的思路是,先在对应联网的电脑里(或者虚拟机中)联网安装目标程序,缓存到本地,然后制作yum安装源,拷贝至目标电脑,在目标电脑中安装。1.本地虚拟机安装yum-plugin-downloadonly软件 在虚拟机内配置yum只下载RPM包而不安装,这里要使用–downlo
文章目录
在实际的centos服务器中,经常遇到客户需要在未联网的电脑中安装服务器程序,实现服务器程序的打包运行,这时可以采取的思路是,先在对应联网的电脑里(或者虚拟机中)联网安装目标程序,缓存到本地,然后制作yum安装源,拷贝至目标电脑,在目标电脑中安装。
1.本地虚拟机安装yum-plugin-downloadonly软件
在虚拟机内配置yum只下载RPM包而不安装,这里要使用–downloadonly选项,需要先安装yum-plugin-downloadonly。
命令如下:yum install yum-plugin-downloadonly
2.在本地虚拟机下载目标rpm安装包
yum install --downloadonly --downloaddir=/tmp RPM_Name
/tmp为指定下载的目录,RPM_Name为目标软件。
yum–downloadonly会只下载RPM包不安装,同时会把依赖的包都下载下来,注意如虚拟机已经安装了依赖包,则不会下载,因此务必确保虚拟机的纯净(如果有方案可以下载已经有的依赖包,欢迎告知)。
在目标机构建软件源,createrepo是必不可少的模块,需要在虚拟机上下载createrepo相关模块。
命令:yum install --downloadonly --downloaddir=/tmp createrepo
(1/3): createrepo-0.9.9-26.el6.noarch.rpm | 97 kB 00:01
(2/3): deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm | 71 kB 00:00
(3/3): python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm | 27 kB 00:00
3.查询依赖软件依赖关系
yum deplist 软件包名称
4.上传到虚拟机
通过ftp软件或者shell内置软件,上传到centos上。
5.在目标机器上安装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-26.el6.noarch.rpm
6.createrepo构建本地软件源
假设安装包在目标机的/home/user/rpms/目录下。
命令: createrepo /home/user/rpms
7.修改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/
修改文件CentOS-Base.repo,内容如下
[redhat-mylocal] #yum的ID,本地唯一,用于区分不同yum源
name=redhatmyrepo #描述信息
baseurl=file:///media/cdrom/ #前面的file://是协议,后面的/mnt是光盘挂载点
gpgcheck=0 #1使用公钥验证rpm包的正确性,0不验证
enabled=1 #1启用yum源,0禁用yum源
8.在目标机安装目标软件
如果用的是纯净的虚拟机环境,并且和目标机保持一致,那么依赖包就会都安装,yum安装就会很顺利。除非个别包会有依赖冲突,A依赖B,B又依赖A,导致无法安装,此时可以用rpm命令强制安装其中一个,再用yum安装软件即可。
命令:rpm -ivh demo.rpm --nodeps --force
合理的脚本代码可以有效的提高工作效率,减少重复劳动。
更多推荐
所有评论(0)