linux 下载rpm包到本地,createrepo:创建本地YUM源

来源:互联网 发布:淘宝卖家跑路了 编辑:程序博客网 时间:2024/06/06 15:51
如何下载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 allyum 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,则不需要认证签名。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 吃凉东西牙疼怎么办 吃糖导致的牙疼怎么办 微商退货不退钱怎么办 创维电视要收费怎么办 域名已被注册了怎么办 腿上皮肤干燥像鱼鳞怎么办 货拉拉抢不到单怎么办 京东优惠券删了怎么办 吃了发黄的大米怎么办 误吃了霉味大米怎么办 吃了发霉的食物怎么办 面包发霉了吃了怎么办 长期吃了地沟油怎么办 吃了地沟油呕吐怎么办 dnf冲到别人账号怎么办 皮肤买错大区了怎么办 微信实名超过5个怎么办 微信绑定超过5个怎么办 300英雄忘了账号怎么办 163邮箱登陆不上怎么办 手机收不到微信怎么办 苹果微信反应慢怎么办 微信网速特别慢怎么办 微信突然卡住了怎么办 微信一直卡死怎么办 微信打开卡了怎么办 微信卡住不动了怎么办 微信突然卡死了怎么办 手机京东e卡使用怎么办 携程礼品卡欺诈,怎么办 携程礼品卡诈骗怎么办 易事通卡过期了怎么办 设备被淘宝黑了怎么办 饭店排风噪音大怎么办 善融商城不发货怎么办 ps渲染图像很慢怎么办 买房子收据丢了怎么办 买房子发票丢了怎么办 买房的收据丢了怎么办 首付款收据丢了怎么办 预购房收据丢了怎么办