Yum Repository详解

什么是YUM

YUM(Yellowdog Updater Modified)是Fedora、CentOS、RedHat中的软件包管理器。基于 RPM 包管理,YUM通过分析RPM header数据,自动处理依赖关系,从指定服务器自动下载安装所有依赖的软件包。

常用yum命令

安装软件

# yum install package1 [package2] [...]

重装软件

# yum reinstall package1 [package2] [...]

删除软件

# yum remove package1 [package2] [...]
或
# yum erase package1 [package2] [...]

升级软件

# yum update [package1] [package2] [...]
或
# yum upgrade [package1] [package2] [...]

当不指定参数时,升级所有软件。

检查更新

# yum check-update

查询信息

# yum info [...]

查看可用的RPM包

# yum list [...]

列出已安装的包

# yum list installed

搜索软件

# yum search string1 [string2] [...]

清除缓存

# yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

下载并使metadata可用

# yum makecache [fast]

常用的开发工具包

安装编译器:

# yum install -y gcc gcc-c++ libstdc++ libstdc++-devel

安装Development Tools:

# yum groupinstall “Development Tools” 

如出现there is no installed groups file错误,请附加参数--setopt=group_package_types=mandatory,default,optional。
查看组Development Tools的内容:

# yum groupinfo "Development Tools"

解决yum安装问题

可先试以下命令:

# yum clean all
# yum makecache

Structure needs cleaning
yum安装报错:Structure needs cleaning,可使用package-cleanup查找有问题的包,删除后再重新安装:

# package-cleanup --problems or --leaves or --orphans or --oldkernels
# rpm -e xxxxxxxxx

duplicate错误
首先查看是否存在未完成的transaction:

# yum-complete-transaction

然后删除重复包:

package-cleanup --dupes lists duplicate packages
package-cleanup --cleandupes removes duplicate packages

rpmdb open failed
错误信息如下:

error: db5 error(-30973) from dbenv->open: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db5 -  (-30973)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

Error: rpmdb open failed

解决方法:

# rm -f /var/lib/rpm/__db*
# rpm --rebuilddb

更多yum工具,请查看yum-utils:

# man yum-utils

YUM Repository

我们要使用YUM,必须要先找到适合的YUM Server,配置YUM Repositry。CentOS有很多的镜像站点供全世界软件更新之用。CentOS安装后已配置好这些Yum Repository,配置文件位于/etc/yum.repos.d目录下,文件扩展名为repo,如您不慎误删可执行如下命令重新安装:

#rpm -Uvh http://mirror.centos.org/centos/7/os/x86_64/Packages/centos-release-7-6.1810.2.el7.centos.x86_64.rpm

repo文件

下面我们看一下CentOS-Base.repo的内容:

# CentOS-Base.repo
#
# The mirror system uses the connecting IP
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值