说明
有时候有些公司的服务器是不允许访问外网的,那么要下载rpm软件就需要在本地建立一个yum源只对这台本地的yum源开放外网访问权限,就像Windows其他机器不能访问外网打补丁,本地建立一台wsus服务器一样。
安装Http服务
yum install -y httpd
删除默认apache网页
rm -rf /etc/httpd/conf.d/welcome
创建yum仓库目录
mkdir -p /var/www/html/centos6.7/x86_64/
cd /var/www/html/centos6.7/x86_64/
wget http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-agent-3.2.1-1.el6.x86_64.rpm # 下载或者上传rpm包到此目录,此目录下面还可以包括文件夹
安装createrepo软件
yum -y install createrepo
初始化repodata索引文件
createrepo -pdo /var/www/html/centos6.7/x86_64/ /var/www/html/centos6.7/x86_64/
重启httpd
/etc/init.d/httpd restart
新建yum源
其他内网机器上使用下面的配置来新建本地的这台yum源服务器
cd /etc/yum.repos.d/
vi localyum.repo
[localyum]
name= localyum
baseurl= http://192.168.1.1/centos6.7/x86_64/
enabled=1
gpgcheck=0
priority=1
执行清理
yum clean all
yum makecache
搜索测试
yum list |grep zabbix
安装http
[root@localhost html]# mount -o loop /root/iso/CentOS-6.7-x86_64-bin-DVD1.iso /var/www/html/CentOS/
安装 createrepo 工具
yum install createrepo
访问
使用 自己准备的 RPM 包 (这里以 zabbix为例)
(1)、在目录 /var/www/html/ 下建立一个文件夹,把准备的 RPM包放到里面
(2)、创建仓库信息文件,在目录 /var/www/html/ 下执行:createrepo zabbix
查看zabbix目录,可以看到 repodate 文件已经生成
使用yum源
在本机或其他机器上,进入文件夹:/etc/yum.repos.d/ 将其中的文件移除掉
新建文件:CentOS.repo
[base]
name=CentOS
baseurl=http://172.22.6.10/CentOS/
gpgcheck=1
enabled=1
gpgkey=http://172.22.6.10/CentOS/RPM-GPG-KEY-CentOS-6
更新 yum源
yum clean 清除yum源缓存
yum repolist 列出可用yum源
全局配置文件
main部分定义了全局配置选项,整个yum配置文件应该只有一个main,位于/etc/yum.cof
[root@localhost yum.repos.d]# cat /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever ßyum缓存的目录,存储下载的rpm包和数据库
keepcache=0 ß安装完成后是否保留软件包,0为不保留(默认为0),1为保留
debuglevel=2 ßDebug信息输出等级,范围为0-10,缺省为2
logfile=/var/log/yum.log ß日志文件位置
exactarch=1 ß有1和0两个选项,设置为1,则yum只会安装和系统架构匹配的软件包。
obsoletes=1 ß update的参数,相当于upgrade,允许更新陈旧的RPM包。
gpgcheck=1 ß
plugins=1 ß是否启用插件,默认1为允许,0表示不允许
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release ß指定一个软件包,yum会根据这个包判断发行版本
yum仓库配置文件
repository部分定义了每个源服务器的具体配置,可以有一到多个,位于/etc/yum.repos.d/目录下的各文件中
[root@XuBuSi ~]# ll /etc/yum.repos.d/
CentOS-Base.repo ß网络源的配置文件
CentOS-Media.repo ß本地源的配置文件
epel.repo ß第三方源的配置文件
设置开机启动
vi /etc/fstab
/root/iso/CentOS-6.7-x86_64-bin-DVD1.iso /application/yum/centos6.7/x86_64/ iso9660 ro 0 0