Yum 是yellowdog updater modified的缩写。yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个 distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了 Linux 用户一直头痛的 dependencies 的问题。
一般这类软件通过一个或者多个配置文件描述对应的 repository 的网络地址,通过 http 或者 ftp 协议在需要的时候从 repository 获得必要的信息,下载相关的软件包。这样,本地用户通过建立不同的 repository 的描述说明,在有 Internet 连接时就能方便进行系统的升级维护工作。另外,如果需要使用代理,可以用 http_proxy 和 ftp_proxy 这些 shell 里面标准环境变量的设定。
Yum包的下载:
可以用wget 直接从网上下载,该命令下载的文件会放在当前目录下。如:
[root@localhost ~]# wget http://yum.baseurl.org/download/3.2/yum-3.2.26.tar.gz
[root@localhost ~]# wget http://yum.baseurl.org/download/3.2/yum-3.2.26-0.src.rpm
安装:
[root@localhost ~]# rpm -ivh /yum/Server/createrepo-0.4.11-3.el5.noarch.rpm
创建YUM 配置文件:
路径为/etc/yum.repos.d/,文件名随意,例如本例的命令为:cat > /etc/yum.repos.d/local_yum.repo << EOF[Base]name=Red Hat Enterprise Linux 5 update 5 (名字可以随便起)baseurl=file:///var/ftp/pub/RHEL5u5_x86_64/Server (搜索路径,必须指向你本机的yum源路径)enabled=1 (是否启用源,0为不启用,1为启用,过没这一项,就是启用)gpgcheck=0 (gpgcheck是gpg验证是否开启的选项,1是开启,0是不开启,一般情况可以关掉)gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[Cluster]name=Red Hat Enterprise Linux 5 update 5baseurl=file:///var/ftp/pub/RHEL5u5_x86_64/Clusterenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[ClusterStorage]name=Red Hat Enterprise Linux 5 update 5baseurl=file:///var/ftp/pub/RHEL5u5_x86_64/ClusterStorageenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release[VT]name=Red Hat Enterprise Linux 5 update 5baseurl=file:///var/ftp/pub/RHEL5u5_x86_64/VTenabled=1gpgcheck=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-releaseEOF
注意:baseurl=后面的参数,file://表示使用的协议,类似于ftp://、http:// 等,第3个“/”表示系统文件路径的根目录;光盘下的Server目录的YUM 标签名必须是“[Base]”,不区分大小写,否则该目录下的RPM 包读取不到,其他目录的标签名随意。要使配置的新YUM 安装源生效,运行下面的命令:yum clean && yum updateYUM常用命令:1.安装软件包:yum install packageyum localinstall package 从本机目录安装软件包yum groupinstall group 安装某个组件的全部软件包2.更新软件包:yum update packageyum check-update 列出所有可更新的软件包yum list updates mysql* 查找mysql的更新yum update 更新所有可更新的软件包yum update mysql* 更新所有mysql的软件包yum groupupdate group 更新某个组件的所有软件包yum list 列出所有已安装和仓库中可用的软件包yum list available 列出仓库中所有可用的软件包yum list updates 列出仓库中比当前系统更新的软件包yum list installed 列出已安装的软件包yum list recent 列出新加入仓库的软件包yum info 查询软件包信息 3.删除软件包:yum remove packageyum groupremove group 删除某个组件的全部软件包4.清除软件包yum clean packages 清除遗留在缓存里的包文件yum clean metadata 清除遗留在缓存里的元数据yum clean headers 清除遗留在缓存里的头文件yum clean all 清除包文件,元数据,头文件5.搜索软件包:yum search packageyum info package 查找一个软件包的信息yum list package 列出包含指定信息的软件包yum list installed 列出已安装的软件包yum list extras 列出不是通过软件仓库安装的软件包yum list *ttp* 列出标题包含ttp的软件包yum list updates 列出可以更新的软件包6.查找特定文件是由什么软件包提供的:yum whatprovides filename例子:yum whatprovides httpd.conf可用选项–disalberepo=lib 禁用某个软件仓库–enalberepo=lib 启用某个软件仓库-C 禁用使用本机缓存的元数据例子:yum –disalberepo=livna|–enalberepo=livna install mplayeryum -C info httpd
特别提醒:yum源里的软件安装包一般会有gpg签名,验证gpg签名,是为了保证软件安装包是可靠性。但一些新的软件的安装包是无法通过验证的,但又确实没有问题,就需要跳过验证。gpgcheck是gpg验证是否开启的选项,=1是开启,=0是不开启,一般情况可以关掉