但行好事
莫论前程❤

linux命令学习 — yum

​ yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum的命令形式一般是如下:

yum options [package ...]

其中的[options]是可选的,选项包括

  • -h(帮助)
  • -y(当安装过程提示选择全部为”yes”)
  • -q(不显示安装的过程)等等。
  • [command]为所要进行的操作,
  • [package …]是操作的对象。

常用命令:

  • 自动搜索最快镜像插件: yum install yum-fastestmirror
  • 安装yum图形窗口插件: yum install yumex
  • 查看可能批量安装的列表: yum grouplist
1 安装
yum install                  # 全部安装
yum install package1         # 安装指定的安装包package1
yum groupinsall group1       # 安装程序组group1
2 更新和升级
yum update                    # 全部更新
yum update package1           # 更新指定程序包package1
yum check-update              # 检查可更新的程序
yum upgrade package1          # 升级指定程序包package1
yum groupupdate group1        # 升级程序组group1
3 查找和显示
yum info package1            # 显示安装包信息package1
yum list                     # 显示所有已经安装和可以安装的程序包
yum list package1            # 显示指定程序包安装情况package1
yum groupinfo group1         # 显示程序组group1信息yum search string 根据关键字string查找安装包
4 删除程序
yum remove | erase package1       # 删除程序包package1
yum groupremove group1            # 删除程序组group1
yum deplist package1              #  查看程序package1依赖情况
5 清除缓存
yum clean packages               # 清除缓存目录下的软件包
yum clean headers                # 清除缓存目录下的 headers
yum clean oldheaders             # 清除缓存目录下旧的 headers
yum clean, yum clean all (=yum clean packages;yum clean oldheaders) # 清除缓存目录下的软件包及旧的

此外,s可以修改配置文件/etc/yum.conf选择安装源。可见yum进行配置程序有多方便了吧。更多详细的选项和命令,可使用man命令查看:

man yum
6 仓库管理:
yum repolist [all | enabled | disabled]

yum repolist 列出已经配置的所有可用仓库.

-———————————————————————————————————-

yum仓库的组成部分

  1. 数据 :包含所有的软件包文件
  2. 元数据:指的是数据文件:包括每个包的包名、版本信息、各包所包含的文件列表、包与包之间的依赖关系、包的分组信息.

yum 的配置文件有2种:

  • /etc/yum.conf:为所有仓库提供公共配置
  • /etc/yum.repos.d/*.repo:为仓库的指向提供配置

主配置文件路径 /etc/yum.conf

[main]

cachedir=/var/cache/yum/$basearch/$releasever    #下载RPM包的缓存目录

keepcache=0                                      #RPM缓存的程序包安装完成后是否保存,0表示不保存,1表示保存

debuglevel=2                                     #调试级别 取值范围 0 – 10,默认值为2

logfile=/var/log/yum.log                         #yum相关日志存放路径

exactarch=1                                      #是否要平台完全匹配才能安装

obsoletes=1                                      #需不需要检查已过期的仓库

gpgcheck=1                                       #是否检查包的完整性和合法性

plugins=1                                        #是否允许支持yum的插件功能,0 表示不允许,1表示允许

installonly_limit=5                              #允许保留多少个内核包

bugtracker_url=http://bugs.centos.org/set_project.php?project_id=19&ref=http://bugs.centos.org/bug_report_page.php?category=yum

distroverpkg=centos-release                      #指定一个软件包,yum会根据这个包判断你的发行版本,
                                             #默认是redhat-release

仓库配置文件路径 /etc/yum.repos.d/*.repo

[repositoryID]                                   #容器名字,必须是唯一的

name=Some name for this repository               #仓库的名字,仅作一个标识

baseurl=url://path/to/repository/                #指定真正仓库所在的路径,可以指多个仓库

enabled={1|0}                                    #指是否启用这个仓库,1表示启用,0表示不启用

gpgcheck={1|0}                                   #是否要检测软件包的合法性,1表示启用,0表示不启用

gpgkey=URL                                       #软件包的公钥文件所在路径

enablegroups={1|0}                               #是否基于组来批量管理程序包

failovermethod={roundrobin|priority}             #意思是有多个url可供选择时,yum选择的次序,
                                    #roundrobin是随机选择.默认为:roundrobin,意为随机挑选;

cost=                                            #仓库优先级 ,默认为1000

备注:默认各仓库的用法:

​ base库: 通常为系统发行版所提供的程序包(就是光盘)

​ updates库: 存放更新包

​ extra库: 存放额外包

​ epel库: epel库文件

仓库配置文件中的 baseurl 一项可以有多个写法,下面是各写法的格式

  • ftp://
  • http://
  • nfs://
  • file:///

配置网络yum源

  1. 首先备份自己的网络源配置文件

备注:将yum 网络源配置文件改名为CentOS-Base.repo.bak,否则会先在网络源中寻找适合的包

cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak

##########################################
-rw-r--r--. 1 root root 1664 4月  29 00:35 CentOS-Base.repo.bak
-rw-r--r--. 1 root root 1309 4月  29 00:35 CentOS-CR.repo
-rw-r--r--. 1 root root  649 4月  29 00:35 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  314 4月  29 00:35 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 4月  29 00:35 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 4月  29 00:35 CentOS-Sources.repo
-rw-r--r--. 1 root root 4768 4月  29 00:35 CentOS-Vault.repo
  1. 下载阿里云的CentOS-Base.repo配置文件 到/etc/yum.repos.d/

阿里云开源镜像站: https://opsx.alibaba.com/mirror

阿里云开源镜像地址: https://mirrors.aliyun.com/

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo                                                                       #mirrors 镜像
#####################################
-rw-r--r--. 1 root root 1664 4月  29 00:35 Centos-6.repo 
-rw-r--r--. 1 root root 1664 4月  29 00:35 CentOS-Base.repo.bak
-rw-r--r--. 1 root root 1309 4月  29 00:35 CentOS-CR.repo
-rw-r--r--. 1 root root  649 4月  29 00:35 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  314 4月  29 00:35 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 4月  29 00:35 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 4月  29 00:35 CentOS-Sources.repo
-rw-r--r--. 1 root root 4768 4月  29 00:35 CentOS-Vault.repo

3.运行yum makecache生成缓存

yum clean all
yum makecache

配置私服yum源

在/etc/yum.repos.d/新建nexus.repo,内容为:

[nexusrepo]
name=Nexus Repository
baseurl=http://10.10.202.157:8081/repository/aliyun-yum/6.9/os/x86_64/
enabled=1
gpgcheck=0
priority=1

注意:
baseurl=http://mirror.centos.org/centos/$releasever/cr/$basearch/
6.9对应 $releasever,x86_64对应$basearch
其中$releasever 是获取服务器的版本号,该版本号可以通过cat /etc/redhat-release命令(RHEL)查看
– 这里的bashurl可以在Repository -> Respositories中,点击yum代理仓库的copy找到

赞(2) 打赏
未经允许不得转载:刘鹏博客 » linux命令学习 — yum
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏