linux 下载rpm包到本地,createrepo:创建本地YUM源
如何下载rpm包到本地
设置yum安装时,保留rpm包。
1.编辑 /etc/yum.conf 将keepcache的值设置为1;
这样就可以将yum安装时的rpm包保存在 /var/cache/yum下面
2.或者使用yum-plugin-downloadonly插件,
sudo yum install yum-plugin-downloadonly
用法:sudo yum install ceph-0.87.1-0.el7.centos.x86_64.rpm --downloadonly --downloaddir=./
有时centos的rpm源不是最新的,需要安装一个epel源,sudo yum install epel-release
repodata作为软件的仓库,其目录下有四个必要文件:filelists.xml.[gz],other.xml.[gz],primary.xml.[gz]和repomd.xml(md意思是metadata),其中最主要的是repomd.xml文件。一般出现的找不到repodata目录或文件的错误的原因通常有三个:一是路径问题;二是没有生成repodate目录;三是*.repo配置文件冲突(这个需要特意注意)。
创建本地源步骤如下:
1、安装createrepo包;
2、新建本地源目录(假若本地源在当前家目录下)
2.1 $mkdir -p local-yum/i386/ #其中i386是包放置目录
2.2 将安装包放置到i386目录中
2.3 createrepo local-yum/ #创建一个源
3、配置yum源(可以单独新建一个repo文件,也可以添加到已经存在的repo文件中)在/etc/yum.repos.d/下面创建文件
************************************************************
[local-yum]
name=local-yum
baseurl=file:///home/test/local-yum/ #文件目录不能设置到i386,否则本地源使用会报错
enabled=1
gpgcheck=0
解释:
[....] 代表这个库的名字,必须是唯一的,不可以重复。
name= 是这个库的说明,没有太大的实际意义,只是一个字段说明。
baseurl= 说明采取什么方式传输,具体路径在哪里,可以使用的方式有,file:///,ftp://,http://等
enabled=1 说明启用这个更新库,0表示不启用。
gpgcheck=1 表示使用gpg文件来检查软件包的签名
gpgkey= 表示gpg文件所存放的位置,此处也可以有http方式的位置。
************************************************************
可以使用以下命令来检验yum源是否安装成功
yum clean all
yum repolist
4、yum工具介绍
yum工具有很多的参数可供使用,如下:
yum install 软件名1 [软件名2] [...]
yum update [软件名1][软件名2] [...]
yum check-update
yum upgrade [软件1] [软件2] [...]
yum remove | erase 软件名1 [软件名2] [...]
yum list [...]
yum info [...]
yum provides | whatprovides feature1 [feature2] [...]
yum clean [ packages | headers | metadata | dbcache | all ]
yum makecache
yum groupinstall 软件组1 [软件组2] [...]
yum groupupdate 软件组1 [软件组2] [...]
yum grouplist [hidden] [groupwildcard] [...]
yum groupremove group1 [group2] [...]
yum groupinfo 软件组名 [...]
yum search 字符串1 [字符串2] [...]
yum shell [文件名]
yum resolvedep 依赖关系1 [依赖关系2] [...]
yum localinstall rpm包1 [rpm包2] [...]
yum localupdate rpm包1 [rpm包2] [...]
yum reinstall 软件包1 [软件包2] [...]
yum downgrade 软件包1 [软件包2] [...]
yum deplist 软件包1 [软件包2] [...]
yum repolist [all|enabled|disabled]
yum help [command]
以上就是yum全部的可用参数了,自动分析依赖性关系是它最好的一个特点,也是目前最方便的安装方法。
5、更新本地源,在仓库所在目录下
createrepo --update local-yum/ # 更新本地源
createrepo local-yum/ # 重新生成metadata
6、用的上的命令
createrepo --update:
有时候你的软件仓库中含有很多的软件包,虽然只是其中的一小部分有所改动但是你却不必为每个软件包重新产生元数据,这样做明显太浪费时间了。这就是--update选项诞生的原因。
像之前一样运行createrepo命令但是添加了--update选项. $createrepo --updatelocal-yum/ 现在createrepo只更新那些在上次产生元数据之后被改变,添加或者删除了的项目.
verifytree 如果你刚刚做了一个repo并且你想要验证在你的repo中的所有东西都是正确且可以完成其功能的话,你可以运行erifytree命令来检查所有的repodata和软件包。
7、创建基于html的更新源
7.1 安装httpd安装包
7.2 如上创建本地更新源
cd /var/www/html/
mkdir -p nsmc
cdnsmc
mkdir RPMS SRPMS
7.3 拷贝相关文件到RPMS和SRPMS目录中
7.4 在nsmc所在目录下执行如下命令
createrepo nsmc #创建仓库
7.5 service httpd start #启动httpd守护进程,这是关键地方之一,否则在其他机器上会提示找不到相关源
7.6 编写repo文件
*************************************
[nsm]
name=NeoShine Linux Desktop 5 nsmc repo - i386
baseurl=http://xxx.xxx.xxx.xxx/nsmc
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neoshine-release
注意:gpgcheck设置为0,则不需要认证签名。
linux 下载rpm包到本地,createrepo:创建本地YUM源的更多相关文章
- 在Linux下下载RPM包
在Linux下下载RPM包,但是不安装 在工作中经常会遇到离线安装RPM包的情况,下面是下载RPM包的方法 # 使用yum下载RPM包 yum -y install --downloadonly &l ...
- Linux系统yum命令安装软件时保留(下载)rpm包 -- 转载
昨天在部署zabbix监控的时候,遇到一个问题:监控服务器处于无外网状态,在线安装不可用.而某些依赖包度娘或谷姐搜索起来也挺呛人的!于是想到一个办法,利用有外网的服务器的yum命令来安装这些软件,并自 ...
- Linux centosVMware yum更换国内仓库源、yum下载rpm包、源码包安装
一.yum更换国内仓库源 cd /etc/yum.repos.d/ rm -f dvd.repo wget http://mirrors.163.com/.help/CentOS7-Base-163. ...
- Centos Linux下载rpm软件包(基础环境篇)-从零到无
--时间:2020年10月23日 --作者:飞翔的小胖猪 一.概述 1.1 前言 很多生产环境往往是独立的一张网络不与互联网相通,经常会出现的问题就是应用在部署的时候无法安装配套的依赖包.导致很简单 ...
- yum更换国内源、yum下载rpm包、源码包安装 使用介绍
第5周第4次课(4月19日) 课程内容: 7.6 yum更换国内源7.7 yum下载rpm包7.8/7.9 源码包安装 7.6 yum更换国内源 当yum仓库的软件不好用时,例如很多yum源都是国外的 ...
- 如何使用yum来下载RPM包而不进行安装
如何使用yum来下载RPM包而不进行安装 2015-03-23 13:15 theo-l译 linux.cn 字号:T | T yum是基于Red Hat的系统(如CentOS.Fedora.RHEl ...
- 使用yum下载rpm包
查看系统有哪些可用的yum源yum repolist all yum指定本地源安装rpm包yum install <package-name> --enablerepo=<repos ...
- Linux下RPM包的安装
Linux下RPM包安装 二进制包(RPM包.系统默认包) RPM安装 rpm -ivh 包全名(查询依赖网址:http://www.rpmfind.net) -i(install):安装 -v(ve ...
- 包管理 ----- Linux操作系统rpm包安装方式步骤
Linux操作系统rpm包安装方式步骤 2016年08月04日 07:00:26 阅读数:17140 转自 : http://os.51cto.com/art/201003/186467.htm 特别 ...
随机推荐
- tornado 初学
tornado第一个例子 import tornado.ioloopimport tornado.web class MainHandler(tornado.web.RequestHandler): ...
- Unicode utf8等编码类型的原理
1.ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte). ...
- java比较字符串长度
1.一种:str1.length()>=str.length():这种只比较字符串中的计算字符的数量,不管是中文还是英文 2:另一种:str1.getBytes().length>=str ...
- struts2 拦截器,使用spring注入
ActionContext actionContext = invocation.getInvocationContext();ServletContext context = (ServletCon ...
- hive中遇到的问题
) from t_1 where country ='China' group by (name = 'qq'); 结果图 select * from t_sz_part; 按照理解来说,应该只有一个 ...
- u-boot README--Memory Management&initialize
Memory Management:------------------ U-Boot runs in system state and uses physical addresses, i.e. t ...
- Web性能测试工具:http_load安装&使用简介
除了siege,在Web性能测试工具中,http_load也是比较热门和常见的一款,有时因为种种原因,只能使用现成的工具,所以多了解和掌握一种Web性能测试工具是很有必要的. 1.下载安装包 略过 2 ...
- 为什么Goroutine能有上百万个,Java线程却只能有上千个?
作者|Russell Cohen 译者|张卫滨 本文通过 Java 和 Golang 在底层原理上的差异,分析了 Java 为什么只能创建数千个线程,而 Golang 可以有数百万的 Go ...
- linux vmware提示:此虚拟机似乎正在使用中,取得该虚拟机的所有权失败错误
用vm的时候,没有挂起和关闭虚拟机,直接关实体机.然后不幸的就异常了. 然后今天用的时候提示 此虚拟机似乎正在使用中. 如果此虚拟机已在使用中,请按“取消”按钮,以免损坏它.如果此虚拟机未使用,请按“ ...
- run ceph in docker
申明:基本安装是依照http://dockone.io/article/436来进行的,但原文中ceph集群的搭建不够完整.我这里会做一些补充及说明. 1. 下载mon和osd镜像 [root@u ...