@xtccc
2015-12-23T10:22:55.000000Z
字数 1715
阅读 2555
Linux
当我们使用命令 yum install <package-name>
来安装软件时,这个命令首先会在 /etc/yum.repos.d/ 目录中检查已存在的YUM Repo配置文件。它将读取其中的每一个配置文件以获取下载和安装软件所需信息,并解析软件之间的依赖关系,然后安装需要的RPM文件。
YUM Repo配置文件必须:
我们先看一看文件/etc/yum.repos.d/Centos-Base.repo中的内容
YUM Repo配置文件可以包含以下内容:
[base]
)name=CentOS-$releasever - Base - mirrors.aliyun.com
)file://path
),也可以是远程目录(ftp://link
, http://link
, https://link
, http://user:passwd@link
)。一个例子是 baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
enabled=1
)gpgcheck=1
)http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-6
)exclude=httpd,mod_ssl
)include=kernel
)
其中,必须包含的是:Repository ID, Name, Baseurl, Enabled
rpm -qa <package>
其中,“package”的由package-name、version-number和release-number三部分构成。
在执行命令rpm -qa <package>
时,这里的<package>
可以是RPM的全名,也可以用星号来省略package-name、version-number或者release-number,但是在这个三部分的内部不能用星号进行模糊匹配。
例: 想查询关于cloudera的已安装RPM
假设我们将安装文件放在目录/disk1/user/tao/cloudera5.2中,并希望将该目录作为repo url。
创建文件/etc/yum.repos.d/cloudera-5.2.repo,内容如下
[cloudera-repo-5.2]
name=Local Cloudera-5.2 Repo
baseurl=file:///disk1/user/tao/cloudera5.2
enabled=1
有了上面的repo config file之后,还需要创建一个对应的yum repo。
yum install createrepo
我们将需要安装的RPM文件全部放入目录/disk1/user/tao/cloudera5.2
createrepo /disk1/user/tao/cloudera5.2
命令“createrepo ”会在repo-dir中创建一个名为“repodata”的目录,其中包含了有关repo-dir的元数据。每次我们向repo-dir中添加新的RPM文件后,都要运行“createrepo ”命令,以及“yum clean all”命令。
好了,现在就可以通过“yum install ”来愉快地安装我们自己库中的软件了!