YUM介绍
YUM主要用于自动升级、安装\移除rpm软件包,它能自动查找并解决rpm包之间的依赖关系,要成功的使用YUM工具更新系统和软件,需要有一个包含各种rpm软件包的repository(软件仓库),提供软件仓库的服务器习惯上成为“源”服务器。网络上有大量的源服务器,但是,由于受到网络连接速度、带宽的限制,导致软件安装耗时过长甚至失败。特别是当有大量服务器大量软件包需要升级时,更新的缓慢程序令人难以忍受。
相比较而言,本地YUM源服务器最大优点在局域网的快速网络连接和稳定性。有了局域网中的YUM源服务器,即便在Internet连接中断的情况下,也不会影响其他YUM客户端的软件升级和安装。
下面就介绍下本地yum源的搭建。
一、启动httpd服务(一般httpd服务已经安装)
取一台CentOS操作系统的机器作为源服务器。启动服务器的httpd服务:servicehttpdstart
可查看配置文件:/etc/httpd/conf/httpd.conf了解httpd相关配置信息
这里我们配置的文档根目录为:/var/www/html/端口:Listen80
vi/etc/httpd/conf/httpd.conf
确认服务启动,浏览器访问:http://localhost:80出现如下apache页面(如果从其他机器访问,请先关闭防火墙:serviceiptablesstop)
二、安装createrepo工具(若使用linuxiso镜像则为非必须)
createrepo是linux下的创建仓库的软件包。
1、在机器联网的情况下可直接安装:yuminstallcreaterepo
2、可使用rpm-ivhcreaterepo-xxx.noarch.rpm安装由网上下载的rpm包,一般会有两个依赖
3、linux常用工具rpm包,一般在镜像文件中都存在
三、安装yum源
1、使用LinuxISO镜像中的RPM包安装
(1)、将ISO文件copy到服务器上,并在文件夹:/var/www/html/下创建文件夹CentOS
(2)、将ISO文件挂载至文件夹/var/www/html/CentOS
执行:mount-oloop/var/www/html/CentOS-6.4-x86_64-bin-DVD1.iso/var/www/html/CentOS
(取消挂载umount/var/www/html/CentOS)
(3)、查看文件夹/var/www/html/CentOS
可以看到repodata文件夹的存在,repodata作为软件的仓库信息文件。
ISO镜像yum源搭建OK
浏览器访问:http://localhost:80/CentOS/
2、使用自己准备的RPM包(这里以apacheambari为例)
(1)、在目录/var/www/html/下建立一个文件夹,把准备的RPM包放到里面
(2)、创建仓库信息文件,在目录/var/www/html/下执行:createrepoambari
ambariyum源搭建OK
四、使用yum源
(1)、编辑repo文件
在本机或其他机器上,进入文件夹:/etc/yum.repos.d/将其中的文件移除掉
新建文件:CentOS.repo(可由CentOS-Base.repocopy)
(2)、更新yum源
yumclean清除yum源缓存
yumrepolist列出可用yum源
(3)、使用(尝试安装postgresql)
同理可配置使用ambari源
可将repo文件放置在源服务器/var/www/html/目录下,以供其他机器方便下载使用
五、可能会出现的问题
1、问题
youdon'thavepermissiontoaccess/onthisserver(ApacheServer权限访问问题)
ApacheHttpServer已经在linux上安装完成,可是通过浏览器访问,却出现了“youdon'thavepermissiontoaccess/onthisserver”.
解决:
(1)、在httpd.conf文件中,有这么一段
<Directory/>#这里的目录为自己的目录
OptionsFollowSymLinks
AllowOverrideNone
Orderdeny,allow
Denyfromall
</Directory>
可以尝试把Deny改成Allow,然后重启apache服务,访问页面,看问题是否解决。
(2)、查看相应的目录是否拥有权限,如果你不知道怎么加权限之类,运行如下两个命令:
chownapache.root目录名-R#此是更改目录所属用户和用户组
chmod755目录名-R#此是更改目录读写权限
(3)、终极绝杀,以上2条都还通不过的话(报相同的错误信息),运行如下两个命令
setenforce0#暂时禁用SELinux服务
serviceiptablesstop#暂时禁用防火墙
2、问题:
Loadedplugins:fastestmirror,refresh-packagekit,security
Determiningfastestmirrors
http://10.1.33.21/ambari/repodata/repomd.xml:[Errno14]PYCURLERROR22-"TherequestedURLreturnederror:403Forbidden"
Tryingothermirror.
Error:CannotretrieverepositoryMetadata(repomd.xml)forrepository:ambari-1.x.Pleaseverifyitspathandtryagain
解决:
yum源服务器运行如下命令
setenforce0#暂时禁用SELinux服务
3、问题:
yuminstallxxx.rpm
warning:
Packagexxx.rpmisnotsigned
解决:
只要在在后面加上--nogpgcheck就可以了,格式如下
yuminstall*rpm--nogpgcheck
原文链接:https://www.f2er.com/centos/381436.html