一、为什么有RPM包管理还需要YUM(YUM为RPM的前端管理工具)
为了重复利用既有的软件功能,因此很多软件都会以函式库的方式释出部分功能,以方便其他软件的呼叫应用。此外,为了节省使用者的数据量,目前的 distributions 在释出软件时, 都会将软件的内容分为一般使用与开发使用 (development) 两大类。所以你才会常常看到有类似 pam-x.x.rpm 与 pam-devel-x.x.rpm 之类的档名啊!而默认情况下,大部分的 software-devel-x.x.rpm 都不会安装,因为终端用户大部分不会去开发软件嘛!
因为有上述的现象,因此 RPM 软件文件就会有所谓的属性相依的问题产生 (其实所有的软件管理几乎都有这方面的情况存在)。 那有没有办法解决啊?前面不是谈到 RPM 软件文件内部会记录相依属性的数据吗?那想一想,要是我将这些相依属性的软件先列表, 在有要安装软件需求的时候,先到这个列表去找,同时与系统内已安装的软件相比较,没安装到的相依软件就一口气同时安装起来, 那不就解决了相依属性的问题了吗?由此。就有了YUM机制的由来!
二、YUM的简介
YUM,是Yellow dog Updater, Modified 的简称,是杜克大学为了提高RPM 软件包安装性而开发的一种软件包管理器。起初是由yellow dog 这一发行版的开发者Terra Soft 研发,用python 写成,那时还叫做yup(yellow dog updater),后经杜克大学的Linux@Duke 开发团队进行改进,遂有此名。yum 的宗旨是自动化地升级,安装/移除rpm 包,收集rpm 包的相关信息,检查依赖性并自动提示用户解决。yum 的关键之处是要有可靠的repository,顾名思义,这是软件的仓库,它可以是http 或ftp 站点,也可以是本地软件池,但必须包含rpm 的header,header 包括了rpm 包的各种信息,包括描述,功能,提供的文件,依赖性等。正是收集了这些header 并加以分析,才能自动化地完成余下的任务。
YUM的理念是使用一个中心仓库(repository)管理一部分甚至一个distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了Linux 用户一直头痛的dependencies 的问题。这一点上,yum 和apt 相同。apt 原为debian 的deb 类型软件管理所使用,但是现在也能用到RedHat 门下的rpm 了。
YUM主要功能是更方便的添加/删除/更新RPM 包,自动解决包的倚赖性问题,便于管理大量系统的更新问题。
YUM可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除rpm 包时遇到的依赖性问题,保持与RPM 数据库的一致性。
三、YUM源的配置
yum repository: 存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录下:repodata)。当你要找仓库所在网址时, 最重要的就是该网址底下一定要有个名为repodata(该目录就是分析 RPM 软件后所产生的软件属性相依数据放置处)的目录存在!那就是仓库的URL网址了!
配置文件(可以通过man yum.conf查看配置文件的格式和详细选项):
/etc/yum.conf:为所有仓库提供公共配置
main 部分定义了全局配置选项,整个yum 配置文件应该只有一个main。
[root@localhost yum.repos.d]# vim /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever #yum 缓存的目录,yum 在此存储下载的rpm 包和数据库,默认设置为/var/cache/yum keepcache=0 #安装完成后是否保留软件包,0为不保留(默认为0),1为保留 debuglevel=2 #Debug 信息输出等级,范围为0-10,缺省为2 logfile=/var/log/yum.log #yum 日志文件位置。用户可以到/var/log/yum.log 文件去查询过去所做的更新 exactarch=1 #有1和0两个选项,默认1则yum 只会安装和系统架构匹配的软件包 obsoletes=1 #这是一个update 的参数,具体请参阅yum(8),简单的说就是相当于upgrade,允许更新陈旧的RPM包 gpgcheck=1 #是否检查包的完整性,默认为1,检查包的完整性 plugins=1 #是否启用插件,默认1为允许,0表示不允许。我们一般会用yum-fastestmirror这个插件 installonly_limit=5 #一次最大安装的包数 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum #bug追踪URL distroverpkg=centos-release #指定一个软件包,yum 会根据这个包判断你的发行版本,默认是centos-release,也可以是安装的任何针对自己发行版的rpm 包 # This is the default, if you make this bigger yum won't see if the metadata # is newer on the remote and so you'll "gain" the bandwidth of not having to # download the new metadata and "pay" for it by yum not having correct # information. # It is esp. important, to have correct metadata, for distributions like # Fedora which don't keep old packages around. If you don't like this checking # interupting your command line usage, it's much better to have something # manually check the metadata once an hour (yum-updatesd will do this). # metadata_expire=90m
etc/yum.repos.d/*.repo:为仓库的指向提供配置
repository 部分定义了每个源/服务器的具体配置,可以有一到多个。
仓库指向的定义(一般我们不会去修改全局配置文件,而是在yum.repos.d中创建特定的仓库配置):
[repositoryID]
name=Some name for this repository
baseurl=url://path/to/repository/
baseur2=url://path/to/repository/
baseur3=url://path/to/repository/
enabled={1|0}(是否启用)
gpgcheck={1|0}(是否检查包的完整性)
gpgkey=URL(指明包的密钥文件)
enablegroups={1|0}(是否支持在此仓库上使用组来批量管理包)
failovermethod={roundrobin|priority}(当有故障时,多个镜像的挑选方式)
默认为:roundrobin,意为随机挑选;priority,从第一个开始挑选,然后往下挑选
cost=1000(仓库开销数值。默认为1000)
配置一个指向 http://mirrors.aliyun.com/centos/7.1.1503/extras/x86_64/ 阿里云镜像的yum源
这里根据你的Centos版本选择不同的yum源,这里以Centos 7.1作为讲解
[root@localhost yum.repos.d]# pwd /etc/yum.repos.d [root@localhost yum.repos.d]# vim Centos-wlw.repo [base] name=Base Repo on mirrors.aliyun.com baseurl=http://mirrors.aliyun.com/centos/7.1.1503/extras/x86_64/ gpgcheck=0 #这里我们自己定义了一个名为Centos-wlw的yum源
定义好yum源后我们通过yum repolist查看可用源,这里我们可以看到有8619个包可用
[root@localhost yum.repos.d]# yum repolist 已加载插件:aliases, auto-update-debuginfo, changelog, fastestmirror, filter-data, fs-snapshot, keys, langpacks, list-data, local, merge-conf, post-transaction-actions, priorities, : protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, upgrade-helper, verify, versionlock Loading mirror speeds from cached hostfile 0 packages excluded due to repository protections 源标识 源名称 状态 base Base Repo on mirrors.aliyun.com 8,691 repolist: 8,691
配置一个光盘镜像的yum源。这里我们关闭了阿里云的yum包。
[root@localhost yum.repos.d]# vim Centos-wlw.repo [base] name=Base Repo on mirrors.aliyun.com baseurl=http://mirrors.aliyun.com/centos/7.1.1503/extras/x86_64/ gpgcheck=0 enabled=0 [locate_cdrom] name=Locate Repo on cdrom baseurl=file:/mnt gpgcheck=1 gpgkey=file:/mnt/RPM-GPG-KEY-CentOS-7
定义好yum源后我们通过yum repolist查看可用源,这里由于我们第一次访问此yum源。会下载yum源中的repodata元数据
[root@localhost yum.repos.d]# yum repolist 已加载插件:aliases, auto-update-debuginfo, changelog, fastestmirror, filter-data, fs-snapshot, keys, langpacks, list-data, local, merge-conf, post-transaction-actions, priorities, : protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, upgrade-helper, verify, versionlock locate | 3.6 kB 00:00:00 (1/2): locate_cdrom/primary_db | 5.1 MB 00:00:00 (2/2): locate_cdrom/group_gz | 154 kB 00:00:00 Loading mirror speeds from cached hostfile 0 packages excluded due to repository protections 源标识 源名称 状态 locate Locate Repo on cdrom 8,652 repolist: 8,652
其他国内yum源列表如下:
1. 企业贡献:
阿里云开源镜像站:http://mirrors.aliyun.com/
搜狐开源镜像站:http://mirrors.sohu.com/
网易开源镜像站:http://mirrors.163.com/
2. 大学教学:
北京理工大学:http://mirror.bit.edu.cn
厦门大学:http://mirrors.xmu.edu.cn/
四、YUM的常用命令
yum [options] [command] [package ...]
显示仓库列表:
repolist [all|enabled(默认)|disabled]
[root@localhost yum.repos.d]# yum repolist all 已加载插件:aliases, auto-update-debuginfo, changelog, fastestmirror, filter- : data, fs-snapshot, keys, langpacks, list-data, local, merge- : conf, post-transaction-actions, priorities, protectbase, ps, : remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, : tsflags, upgrade-helper, verify, versionlock Loading mirror speeds from cached hostfile 0 packages excluded due to repository protections 源标识 源名称 状态 C7.0.1406-base/x86_64 CentOS-7.0.1406 - Base 禁用 C7.0.1406-centosplus/x86_64 CentOS-7.0.1406 - CentOSPlus 禁用 C7.0.1406-extras/x86_64 CentOS-7.0.1406 - Extras 禁用 C7.0.1406-fasttrack/x86_64 CentOS-7.0.1406 - CentOSPlus 禁用 C7.0.1406-updates/x86_64 CentOS-7.0.1406 - Updates 禁用 _local Automatic local repo. (manged by 启用: 39 base Base Repo on mirrors.aliyun.com 禁用 base-debuginfo/x86_64 CentOS-7 - Debuginfo 禁用 base-source/7 CentOS-7 - Base Sources 禁用 centosplus-source/7 CentOS-7 - Plus Sources 禁用 cr/7/x86_64 CentOS-7 - cr 禁用 extras-source/7 CentOS-7 - Extras Sources 禁用 fasttrack/7/x86_64 CentOS-7 - fasttrack 禁用 locate_cdrom Locate Repo on cdrom 启用: 8,652 updates-source/7 CentOS-7 - Updates Sources 禁用 repolist: 8,691 #这里可以看出我们启用了我们上面自己定义的locate_cdrom源。其他源出于禁止状态
显示程序包:
list {all(默认)|available|installed|updates} [glob_exp1] [...]
[root@localhost yum.repos.d]# yum list hostname.x86_64 3.13-3.el7 @anaconda #这里的@anaconda代表系统安装完自动安装了的包 lftp.x86_64 4.4.8-3.el7 @locate_cdrom #这里的@locate_cdrom代表我们利用locate_cdrom源安装的包 SDL-devel.i686 1.2.15-11.el7 locate_cdrom #这里的locate_cdrom前面没有@符号。代表的是locate_cdrom源没有被安装的包
安装程序包:
install package1 [package2] [...]
reinstall package1 [package2] [...] (重新安装)
[root@localhost yum.repos.d]# yum isntall lftp 0 packages excluded due to repository protections 正在解决依赖关系 Skipping filters plugin, no data --> 正在检查事务 ---> 软件包 lftp.x86_64.0.4.4.8-3.el7 将被 安装 --> 解决依赖关系完成 依赖关系解决 =================================================================================================================================================================================== Package 架构 版本 源 大小 =================================================================================================================================================================================== 正在安装: lftp x86_64 4.4.8-3.el7 locate_cdrom 749 k 事务概要 =================================================================================================================================================================================== 安装 1 软件包 总下载量:749 k 安装大小:2.4 M Is this ok [y/d/N]: Exiting on user command 您的事务已保存,请执行: yum load-transaction /tmp/yum_save_tx.2015-09-01.21-16.drDX2K.yumtx 重新执行该事务
这里需要注意,如果我们直接回车或者输入n都会退出安装。需要输入y然后按回车才能安装。在Centos 7中这里有为你把你这次没有安装的事务保存到/tmp/临时目录中。下次你想重新安装的时候可以直接输入上面的命令
[root@localhost ~]# yum load-transaction /tmp/yum_save_tx.2015-09-01.21-16.drDX2K.yumtx 0 packages excluded due to repository protections 正在解决依赖关系 --> 正在检查事务 --> 解决依赖关系完成 依赖关系解决 =================================================================================================================================================================================== Package 架构 版本 源 大小 =================================================================================================================================================================================== 正在安装: lftp x86_64 4.4.8-3.el7 locate_cdrom 749 k 事务概要 =================================================================================================================================================================================== 安装 1 软件包 总下载量:749 k 安装大小:2.4 M Is this ok [y/d/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : lftp-4.4.8-3.el7.x86_64 1/1 验证中 : lftp-4.4.8-3.el7.x86_64 1/1 已安装: lftp.x86_64 0:4.4.8-3.el7 完毕! New leaves: lftp.x86_64
升级程序包:
update [package1] [package2] [...]
downgrade package1 [package2] [...] (降级)
检查可用升级:
check-update
卸载程序包:
remove | erase package1 [package2] [...]
[root@localhost ~]# yum remove libstdc++-devel 正在解决依赖关系 --> 正在检查事务 ---> 软件包 libstdc++-devel.x86_64.0.4.8.3-9.el7 将被 删除 --> 正在处理依赖关系 libstdc++-devel = 4.8.3-9.el7,它被软件包 gcc-c++-4.8.3-9.el7.x86_64 需要 --> 正在检查事务 ---> 软件包 gcc-c++.x86_64.0.4.8.3-9.el7 将被 删除 --> 解决依赖关系完成 _local | 2.9 kB 00:00:00 _local/primary_db | 41 kB 00:00:00 依赖关系解决 =================================================================================================================================================================================== Package 架构 版本 源 大小 =================================================================================================================================================================================== 正在删除: libstdc++-devel x86_64 4.8.3-9.el7 @locate_cdrom 8.0 M 为依赖而移除: gcc-c++ x86_64 4.8.3-9.el7 @locate_cdrom 16 M 事务概要 =================================================================================================================================================================================== 移除 1 软件包 (+1 依赖软件包) 安装大小:24 M 是否继续?[y/N]:y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction 正在删除 : gcc-c++-4.8.3-9.el7.x86_64 1/2 正在删除 : libstdc++-devel-4.8.3-9.el7.x86_64 2/2 验证中 : gcc-c++-4.8.3-9.el7.x86_64 1/2 验证中 : libstdc++-devel-4.8.3-9.el7.x86_64 2/2 删除: libstdc++-devel.x86_64 0:4.8.3-9.el7 作为依赖被删除: gcc-c++.x86_64 0:4.8.3-9.el7 完毕! New leaves: gcc.x86_64 #卸载的时候需要特别注意。卸载的包中如果给其他包依赖。也会同时卸载依赖此包的其他包
查看程序包information:
info [...]
[root@localhost ~]# yum info bash 已安装的软件包 名称 :bash 架构 :x86_64 版本 :4.2.46 发布 :12.el7 大小 :3.5 M 源 :installed 来自源:anaconda 简介 : The GNU Bourne Again shell 网址 :http://www.gnu.org/software/bash 协议 : GPLv3+ 描述 : The GNU Bourne Again shell (Bash) is a shell or command language : interpreter that is compatible with the Bourne shell (sh). Bash : incorporates useful features from the Korn shell (ksh) and the C shell : (csh). Most sh scripts can be run by bash without modification.
查看指定的特性(可以是某文件)是由哪个程序包所提供:
provides | whatprovides feature1 [feature2] [...]
[root@localhost ~]# yum provides lftp lftp-4.4.8-3.el7.i686 : A sophisticated file transfer program 源 :locate_cdrom lftp-4.4.8-3.el7.x86_64 : A sophisticated file transfer program 源 :_local lftp-4.4.8-3.el7.x86_64 : A sophisticated file transfer program 源 :locate_cdrom
清理本地缓存:
clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
[root@localhost ~]# yum clean all 已加载插件:aliases, auto-update-debuginfo, changelog, fastestmirror, filter-data, fs-snapshot, keys, langpacks, list-data, local, merge-conf, post-transaction-actions, priorities, : protectbase, ps, remove-with-leaves, rpm-warm-cache, show-leaves, tmprepo, tsflags, upgrade-helper, verify, versionlock 正在清理软件源: _local base_aliyun locate_cdrom Cleaning up everything Cleaning up list of fastest mirrors [root@wlw packages]# ls /var/cache/yum/x86_64/6/cdrom/ gen packages #可以看到缓存目录中的所有相关数据和元数据信息已经删除
构建缓存:
makecache
[root@wlw packages]# yum makecache Loaded plugins: fastestmirror, refresh-packagekit, security Determining fastest mirrors cdrom | 4.0 kB 00:00 ... cdrom/group_gz | 219 kB 00:00 ... cdrom/filelists_db | 6.2 MB 00:00 ... cdrom/primary_db | 4.6 MB 00:00 ... cdrom/other_db | 2.8 MB 00:00 ... Metadata Cache Created [root@wlw packages]# ls /var/cache/yum/x86_64/6/cdrom/ 40eeab440905d20a31dd7db33fa8724fba260bcb1047fb6488027b85c22876d2-filelists.sqlite 486d3ee62873814293a1be370640ae9c71863a35c7299eb76739e03369ad0c3f-c6-x86_64-comps.xml.gz bd821d6fb163fc5508b3caa407480faa51a2223e6f475da95675b84c716d6474-other.sqlite c11b211333eadda7b2e2d0f7fa8ffbf70a1d32d5182babbb43b90427578e2891-primary.sqlite cachecookie gen packages repomd.xml
搜索:
search string1 [string2] [...]以指定的关键字搜索程序包名及summary信息;
[root@wlw packages]# yum search ifconfig Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile ========================= Matched: ifconfig ========================== net-tools.x86_64 : Basic networking tools #可以看到ifconfig命令是由net-tools包提供的
查看指定包所依赖的capabilities:
deplist package1 [package2] [...]
查看yum事务历史:
history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|rollback|new|sync|stats]
[root@localhost ~]# yum history ID | 命令行 | 日期和时间 | 操作 | 变更数 ------------------------------------------------------------------------------- 23 | remove libstdc++-devel | 2015-09-01 21:31 | Erase | 2 22 | install gcc-c++.x86_64 | 2015-09-01 21:30 | Install | 2 21 | reinstall gcc | 2015-09-01 21:28 | Reinstall | 1 20 | remove lftp | 2015-09-01 21:27 | Erase | 1 19 | load-transaction /tmp/yu | 2015-09-01 21:21 | Install | 1 18 | remove lftp | 2015-09-01 21:16 | Erase | 1 17 | reinstall lftp | 2015-09-01 21:15 | Reinstall | 1 16 | install lftp | 2015-09-01 21:10 | Install | 1 15 | remove lftp | 2015-09-01 21:10 | Erase | 1 14 | remove htop | 2015-09-01 21:08 | Erase | 1 13 | reinstall gcc | 2015-09-01 13:15 | Reinstall | 1 12 | install gcc | 2015-09-01 13:10 | Install | 1 11 | remove gcc | 2015-09-01 13:10 | Erase | 1 10 | install gcc | 2015-09-01 12:49 | Install | 7 9 | install libzip | 2015-09-01 12:44 | Install | 1 8 | install htop | 2015-09-01 12:09 | Install | 1 7 | install lftp | 2015-08-31 22:32 | Install | 1 6 | install lvm* | 2015-08-27 21:36 | I, U | 38 5 | install yum-3.4.3-125.el | 2015-08-27 21:32 | I, U | 52 E< 4 | install vim | 2015-08-25 18:47 | Install | 31 > history list
包组管理的相关命令:
* groupinstall group1 [group2] [...]
* groupupdate group1 [group2] [...]
* grouplist [hidden] [groupwildcard] [...]
* groupremove group1 [group2] [...]
* groupinfo group1 [...]
五、YUM的常用命令选项
yum的命令行选项:
--nogpgcheck:禁止进行gpg check;
-y: 自动回答为“yes”;
-q:静默模式(在写脚本的时候可能会用到)
--disablerepo=repoidglob:临时禁用此处指定的repo;
--enablerepo=repoidglob:临时启用此处指定的repo;
--noplugins:禁用所有插件;
为什么yum的repo配置文件需要用到变量呢,有时候因为别人的需求。我们把我们自己repo配置文件放到网络上供网友下载参考。但是有部分网友不太明白里面代表的意思。不会修改。那问题就出现了,比如我们的repo配置文件是Centos 7的X86_64的。而网友的是Centos 6的i386的。那么yum源就会出错导致配置文件无法使用。由此。repo配置文件为我们提供了变量解决此问题!
yum的repo配置文件中可用的变量:
$releasever: 当前OS的发行版的主版本号;
$arch: 平台;
$basearch:基础平台;
$YUM0-$YUM9
这个时候我们就可以把yum源配置为一下格式(变量会根据系统配置而改变为对应的值):
http://mirrors.aliyun.com/centos/$releasever/$basearch/os
六、手动创建yum仓库
这里我们我们需要先安装createrepo包来为我们提供创建yum仓库服务
①、安装createrepo包
[root@localhost ~]# yum install createrepo 正在解决依赖关系 Skipping filters plugin, no data --> 正在检查事务 ---> 软件包 createrepo.noarch.0.0.9.9-23.el7 将被 安装 --> 解决依赖关系完成 依赖关系解决 ======================================================================== Package 架构 版本 源 大小 ======================================================================== 正在安装: createrepo noarch 0.9.9-23.el7 locate_cdrom 92 k 事务概要 ======================================================================== 安装 1 软件包 总下载量:92 k 安装大小:298 k Is this ok [y/d/N]: y Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : createrepo-0.9.9-23.el7.noarch 1/1 验证中 : createrepo-0.9.9-23.el7.noarch 1/1 已安装: createrepo.noarch 0:0.9.9-23.el7 完毕! New leaves: createrepo.noarch
②、首先在本地创建一个存放rpm包的目录,这里我创建了/yum/loca_repo/目录作为存放rpm包的目录
[root@localhost ~]# mkdir -p /yum/loca_repo/
③、把需要提供的rpm包存放到目录中。供别人链接我们的yum源提供的rpm包,这里测试我们就cp了几个包过来
[root@localhost Packages]# cp /mnt/Packages/gcc* /yum/loca_repo/ [root@localhost Packages]# cd /yum/loca_repo/ [root@localhost loca_repo]# pwd /yum/loca_repo [root@localhost loca_repo]# ls gcc-4.8.3-9.el7.x86_64.rpm gcc-c++-4.8.3-9.el7.x86_64.rpm gcc-gfortran-4.8.3-9.el7.x86_64.rpm gcc-gnat-4.8.3-9.el7.x86_64.rpm gcc-go-4.8.3-9.el7.x86_64.rpm gcc-objc-4.8.3-9.el7.x86_64.rpm gcc-objc++-4.8.3-9.el7.x86_64.rpm gcc-plugin-devel-4.8.3-9.el7.x86_64.rpm
④、使用createrepo指令创建本地repo
[root@localhost loca_repo]# createrepo /yum/loca_repo/ Spawning worker 0 with 8 pkgs Workers Finished Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete [root@localhost loca_repo]# pwd /yum/loca_repo [root@localhost loca_repo]# ls gcc-4.8.3-9.el7.x86_64.rpm gcc-c++-4.8.3-9.el7.x86_64.rpm gcc-gfortran-4.8.3-9.el7.x86_64.rpm gcc-gnat-4.8.3-9.el7.x86_64.rpm gcc-go-4.8.3-9.el7.x86_64.rpm gcc-objc-4.8.3-9.el7.x86_64.rpm gcc-objc++-4.8.3-9.el7.x86_64.rpm gcc-plugin-devel-4.8.3-9.el7.x86_64.rpm repodata
这里我们可以看到生产了repodata目录。该目录就是分析 RPM 软件后所产生的软件属性相依数据放置处
⑤、此时我们只需要配置repo配置文件,然后安装即可
vim /etc/yum.repos.d/Centos-wlw.repo [loca_repo] name=loca repo baseurl=file:/yum/loca_repo/ gpgcheck=0 enable=1 [root@localhost loca_repo]# yum clean ^[[6~已加载插件:aliases, auto-update-debuginfo, changelog, fastestmirror, filter- : data, fs-snapshot, keys, langpacks, list-data, merge-conf, : post-transaction-actions, priorities, protectbase, ps, : remove-with-leaves, rpm-warm-cache, show-leaves, tsflags, : upgrade-helper, verify, versionlock 错误:清理命令需要参数:headers, packages, metadata, dbcache, plugins, expire-cache, rpmdb, all [root@localhost loca_repo]# ^C [root@localhost loca_repo]# yum clean all loca_repo | 2.9 kB 00:00 loca_repo/primary_db | 7.0 kB 00:00 Determining fastest mirrors 0 packages excluded due to repository protections 源标识 源名称 状态 loca_repo loca repo 8 repolist: 8 看吧,这里已经显示我们配置的loca_repo源了,并且有8包,即为我们copy过去的包了
转载于:https://blog.51cto.com/kgdbfmwfn/1690005