- 一、使用CentOS光盘作为本地yum源
- 二、创建完全自定义的本地源
- 本地路径源
- web源
- http://mirrorlist.centos.org/?release=7&arch=$basearch&repo=os">mirrorlist=http://mirrorlist.centos.org/?release=7&arch=$basearch&repo=os
- http://mirrorlist.centos.org/?release=7&arch=$basearch&repo=updates">mirrorlist=http://mirrorlist.centos.org/?release=7&arch=$basearch&repo=updates
一、使用CentOS光盘作为本地yum源
挂载iso镜像
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
修改yum源配置
配置文件目录:/etc/yum.repos.d/
备份原yum配置文件:新建bak目录并将原yum配置文件移动至此目录。
新建yum源文件并加入以下内容(这里新建文件名为local.repo):[local_server] name=This is a local repo #yum源描述 baseurl=file:///mnt/cdrom #CDROM挂载路径 enabled=1 #开启本地更新模式 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
更新yum配置
yum clean all yum makecache
到此本地YUM源配置完成,可使用yum安装软件。问:为什么连createrepo软件都不用安装? createrepo的作用是创建索引文件的(位于repodata文件夹),光盘中连GPG-KEY都有了。
二、创建完全自定义的本地源
把平时收藏的一些RPM软件包放在一个目录里,就变成一个自定义源了,可以用YUM来管理,灵活性相当大。
官方教程:How to setup your own package repository
创建本地yum仓库
mkdir -p /yum/local #可以有N级目录 cp ... #复制RPM包到上述目录
创建repo文件(这里新建文件名为CentOS-Local.repo)
输入以下内容(可选本地源或web源): ```本地路径源
[Local] name=Local Yum baseurl=file:///yum/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 enabled=1
web源
[Localweb] name=Localweb Yum baseurl=http://192.168.10.100/ gpgcheck=0 //关闭校验 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 enabled=1 //启用源
3. 安装createrepo
yum install createrepo #使用yum安装createrepo rpm -ivh http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/createrepo-0.9.9-28.el7.noarch.rpm
4. 创建索引
createrepo /yum
yum makecache #更新缓存
<a name="1b6769d5"></a>
## 三、创建CentOS公共镜像
详细说明见官方中文文档:<br />`http://wiki.centos.org/zh/HowTos/CreatePublicMirrors`<br />可用镜像列表见:`http://www.centos.org/download/mirrors/`
- 提供一个SHELL脚本,然后cron自动运行:
localpath=”/mirrors/CentOS” mirror=”http://mirrors.aliyun.com/centos/::centos“ rsync=”rsync -avzH —delete”
verlist=”7” baselist=”centosplus extras fasttrack os updates” archlist=”x86_64”
for ver in $verlist do for base in $baselist do for arch in $archlist do remote=$mirror/$ver/$base/$arch/ mkdir -pv $localpath/$ver/$base/$arch/ $rsync $remote $localpath/$ver/$base/$arch/ done done done
- 到此源配置完成。
<a name="0ba51a2a"></a>
## 四、yum源优先级配置
1. 安装yum优先级插件
yum install -y yum-plugin-priorities
2. 编辑yum源的文件并设置优先级<br />
在每一个源的后面加上优先级 `priority=1` , priority=n ∈(1~99), 值越小,优先级越高。<br />
例如:
[base] name=CentOS-7 - Base - mirrors.aliyun.com failovermethod=priority baseurl=http://mirrors.aliyun.com/centos/7/os/$basearch/
mirrorlist=http://mirrorlist.centos.org/?release=7&arch=$basearch&repo=os
gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 priority=1 //此处表示优先级为1
[updates] name=CentOS-7 - Updates - mirrors.aliyun.com failovermethod=priority baseurl=http://mirrors.aliyun.com/centos/7/updates/$basearch/
mirrorlist=http://mirrorlist.centos.org/?release=7&arch=$basearch&repo=updates
gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 priority=2 //此处表示优先级为1 ```