分享好友 系统运维首页 频道列表

【Linux】YUM Repositories for CentOS, RHEL & Fedora Systems

Fedora教程  2023-02-10 00:440

这里是官方wiki:https://wiki.centos.org/AdditionalResources/Repositories

一、简介

YUM(Yellowdog Updater Modified)是一种开源的,广泛使用的基于命令行和图形的包管理工具,适用于基于RPM(RedHat Package Manager)的Linux系统,包括但不限于Red Hat Enterprise Linux(RHEL),CentOS和Scientific Linux(SL),Oracle Linux(OL)。它用于在系统上安装,更新,删除或搜索软件包。要安装未包含在默认基础和更新存储库中的软件包,以及其他CentOS存储库(Extras,Centosplus,CentOS-Fasttrack,Continuous Release和Software Collections),您需要安装并启用其他第三方存储库。

先介绍两个命令,yum 和 rpm

命令介绍:https://www.computerhope.com/unix/yum.htm

二、YUM的常见用法

1、选项

  • -h:显示帮助信息;

  • -y:对所有的提问都回答“yes”;

  • -c:指定配置文件;

  • -q:安静模式;

  • -v:详细模式;

  • -d:设置调试等级(0-10);

  • -e:设置错误等级(0-10);

  • -R:设置yum处理一个命令的最大等待时间;

  • -C:完全从缓存中运行,而不去下载或者更新任何头文件。

2、参数

  • install:安装rpm软件包; 安装到指定目录: yum install --installroot=yourDirectory rpmPackage

  • update:更新rpm软件包;

  • check-update:检查是否有可用的更新rpm软件包;

  • remove:删除指定的rpm软件包;删除是通常不要去删除依赖。 yum remove --nodeps yourRPM

  • list:显示软件包的信息;

  • search:检查软件包的信息;

  • info:显示指定的rpm软件包的描述信息和概要信息;

  • clean:清理yum过期的缓存;

  • shell:进入yum的shell提示符;

  • resolvedep:显示rpm软件包的依赖关系;

  • localinstall:安装本地的rpm软件包;

  • localupdate:显示本地rpm软件包进行更新;

  • deplist:显示rpm软件包的所有依赖关系。

3、实例

部分常用的命令包括:

  • 自动搜索最快镜像插件:yum install yum-fastestmirror

  • 安装yum图形窗口插件:yum install yumex

  • 查看可能批量安装的列表:yum grouplist

4、命令

安装
yum install              #全部安装
yum install package1     #安装指定的安装包package1
yum groupinsall group1   #安装程序组group1

更新和升级
yum update               #全部更新
yum update package1      #更新指定程序包package1
yum check-update         #检查可更新的程序
yum upgrade package1     #升级指定程序包package1
yum groupupdate group1   #升级程序组group1

查找
yum info package1      #显示安装包信息package1
yum list               #显示所有已经安装和可以安装的程序包
yum list package1      #显示指定程序包安装情况package1
yum groupinfo group1   #显示程序组group1信息yum search string 根据关键字string查找安装包

删除
yum remove | erase package1   #删除程序包package1
yum groupremove group1             #删除程序组group1
yum deplist package1               #查看程序package1依赖情况

清除缓存
yum clean packages       #清除缓存目录下的软件包
yum clean headers        #清除缓存目录下的 headers
yum clean oldheaders     #清除缓存目录下旧的 headers

三、rpm常见用法

rpm,Redhat Package Manager,即为红帽公司为RHEL开发的专用包管理器,后来更改为RPM Package Manager,类似于GNU项目,使用递归命名,GNU's Not Unix.

通用选项

  • -v 显示附加信息

  • -vv 显示调试信息

  • --root 让RPM将指定的路径做为"根目录",这样预安装程序和后安装程序都会安装到这个目录下

  • --dbpath 设置RPM 资料库存所在的路径为

查询

1、查询指定的包是否安装

[root@localhost ~]# rpm -q tree
tree-1.5.3-3.el6.x86_64

2、查询指定文件来自于那个安装包

[root@localhost ~]# rpm -qf /bin/ls
coreutils-8.4-43.el6.x86_64

3、查询包更新信息

[root@localhost ~]# rpm -q --changelog tree
* Thu Nov 27 2014 Tim Waugh <twaugh@redhat.com> - 1.5.3-3
- Handle large UID/GID values (bug #1110559).

* Wed Mar 03 2010 Tim Waugh <twaugh@redhat.com> 1.5.3-2
- Added comments to all patches.
...

4、查询包元数据

[root@localhost ~]# rpm -qi tree
Name        : tree                         Relocations: (not relocatable)
Version     : 1.5.3                             Vendor: CentOS
Release     : 3.el6                         Build Date: Wed 14 Jan 2015 08:21:02 PM CST
Install Date: Sat 25 Mar 2017 04:17:05 AM CST      Build Host: c6b9.bsys.dev.centos.org
Group       : Applications/File             Source RPM: tree-1.5.3-3.el6.src.rpm
...

5、查询包生成的所有文件

[root@localhost ~]# rpm -ql tree
/usr/bin/tree
/usr/share/doc/tree-1.5.3
/usr/share/doc/tree-1.5.3/LICENSE
/usr/share/doc/tree-1.5.3/README
/usr/share/man/man1/tree.1.gz

6、查询包相关文档

[root@localhost ~]# rpm -qd tree
/usr/share/doc/tree-1.5.3/LICENSE
/usr/share/doc/tree-1.5.3/README
/usr/share/man/man1/tree.1.gz

7、查询包配置文件

[root@localhost ~]# rpm -qc bash
/etc/skel/.bash_logout
/etc/skel/.bash_profile
/etc/skel/.bashrc

8、查询安装、卸载前后执行的脚本

[root@localhost ~]# rpm -q --scripts bash
postinstall scriptlet (using <lua>):
bashfound = false;
shfound = false;
 
f = io.open("/etc/shells", "r");
if f == nil
then

9、安装rpm程序包

[root@localhost ~]# rpm -ivh gcc-4.4.7-17.el6.x86_64.rpm 

10、在安装过程不执行脚本

[root@localhost ~]# rpm -ivh --noscripts tree-1.5.3-3.el6.x86_64.rpm 
warning: tree-1.5.3-3.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]
   1:tree                   ########################################### [100%]

11、覆盖、替换安装

[root@localhost ~]# rpm -ivh --replacepkgs tree-1.5.3-3.el6.x86_64.rpm 
warning: tree-1.5.3-3.el6.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Preparing...                ########################################### [100%]
   1:tree                   ########################################### [100%]

详细选项

选项 含义
-h 安装时以#显示安装进度
--percent 以百分比的形式输出安装的进度
--test 测试安装
--replacepkgs 替换属于其它软件包的文件
--force 忽略软件包及文件的冲突
--noscripts 不运行预安装和后安装脚本
--ignorearch 不校验软件包的结构
--ignoreos 不检查软件包运行的操作系统
--nodeps 不检查依赖性关系

 12、一般卸载

[root@localhost ~]# rpm -e gcc

13、不执行脚本卸载

[root@localhost ~]# rpm -e --noscripts tree

14、升级

[root@localhost ~]# rpm -Uvh tree-1.5.3-3.el6.x86_64.rpm 

-U和-F选项均可以升级一个包.但是,旧包不存在时,-U选项会安装新包,而-F选项不安装新包。

四、仓库-Repository

关于yum-priorities插件, 这个插件是用来设置yum在调用软件源时的顺序的。因为官方提供的软件源,都是比较稳定和被推荐使用的。因此,官方源的顺序要高于第三方源的顺序。如何保证这个顺序,就需要安装yum-priorities这插件了。

安装 yum-priorities 插件后, 您可以给各个源设置优先级priority,一般设置官方标准源优先级为 1, 最高, 第三方推荐 >10

1、EPEL Repository

EPEL(企业Linux的额外软件包)是一个免费的,开源的,流行的,基于社区的存储库项目,旨在提供在Fedora中开发,测试和改进的高质量软件包,并可用于RHEL,CentOS,Scientific Linux等的软件包。

### For CentOS/RHEL 7 ###
yum localinstall   http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

### For CentOS/RHEL 6 ###
yum localinstall  http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

别忘了,还有一步
yum install yum-priorities

2、REMI Repository

REMI是一个广泛使用的第三方存储库,它为Fedora和Enterprise Linux(EL)发行版的用户提供最新版本的PHP、MySql和一些其他相关软件,如RHEL,CentOS,Oracle,Scientific Linux等。在启用Remi之前,需要首先启用EPEL仓库

### For CentOS/RHEL 7 ###
yum install epel-release
wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm
subscription-manager repos --enable=rhel-7-server-optional-rpms  [On RHEL only]
rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi

### For CentOS/RHEL 6 ###
yum install epel-release
wget https://rpms.remirepo.net/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6.rpm
rhn-channel --add --channel=rhel-$(uname -i)-server-optional-6   [On RHEL only]
rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi

yum install yum-priorities

3、RPMFusion Repository

RPMFusion是一个第三方存储库,为Fedora和Enterprise Linux发行版提供一些免费和非免费的附加软件,包括RHEL和CentOS。在启用RPM Fusion之前,您需要启用EPEL repo。

### For CentOS/RHEL 7 ###
yum install epel-release
yum localinstall  https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
yum localinstall  https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm

### For CentOS/RHEL 6 ###
yum install epel-release
yum localinstall  https://download1.rpmfusion.org/free/el/rpmfusion-free-release-6.noarch.rpm
yum localinstall  https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-6.noarch.rpm

4. ELRepo Repository

ELRepo(社区企业Linux存储库)是一个RPM存储库,旨在提供与硬件相关的软件包,如文件系统驱动程序,图形驱动程序,网络驱动程序,声音驱动程序,网络摄像头和视频驱动程序,以改善您使用Enterprise Linux的体验。要在系统上启用ELRepo,请使用以下命令。

### For CentOS/RHEL 7 ###
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm

### For CentOS/RHEL 6 ###
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-6-8.el6.elrepo.noarch.rpm

5. NUX-dextop Repository

NUX-dextop是用于EL的桌面和多媒体软件包的RPM存储库。它包含许多基于图形软件和命令行界面(CLI)的程序,包括Remmina远程桌面共享工具,VLC媒体播放器等等。在启用nux-dextop之前,还需要启用EPEL repo。

### For CentOS/RHEL 7 ###
yum -y install epel-release
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

### For CentOS/RHEL 6 ###
yum -y install epel-release
rpm -Uvh http://li.nux.ro/download/nux/dextop/el6/x86_64/nux-dextop-release-0-2.el6.nux.noarch.rpm

6. GhettoForge  Repository

GhettoForge项目专注于为Enterprise Linux版本6和7提供包,这些包目前不在基本EL包集中,也不在其他第三方存储库中。您可以使用以下命令在系统上启用GhettoForge。

### For CentOS/RHEL 7 ###
rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm

### For CentOS/RHEL 6 ###
rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el6.noarch.rpm

7、Psychotic Ninja Repository

对于Enterprise Linux版本6和7,Psychotic Ninja旨在提供基本EL包集中以及其他第三方存储库中不存在的高质量包。要启用Psychotic Ninja存储库,首先需要导入GPG密钥然后安装它。

rpm --import http://wiki.psychotic.ninja/RPM-GPG-KEY-psychotic
rpm -ivh http://packages.psychotic.ninja/6/base/i386/RPMS/psychotic-release-1.0.0-1.el6.psychotic.noarch.rpm

请注意,这个统一的精神病发布包适用于所有版本和体系结构,包括64位版本的CentOS / RHEL 7。

8、IUS Community Repository

最后列出的是,IUS(Inline with Upstream Stable)是一个新的第三方社区支持的repo,为最新的PHP,Python,MySQL上游版本提供高质量的RPM包,用于Red Hat Enterprise Linux(RHEL)和CentOS 。

就像我们看到的许多回购一样,IUS也依赖于EPEL。

### For CentOS/RHEL 7 ###
yum -y install epel-release
rpm -Uvh https://centos7.iuscommunity.org/ius-release.rpm

### For CentOS/RHEL 6 ###
yum -y install epel-release
rpm -Uvh https://centos6.iuscommunity.org/ius-release.rpm

9、Webtatic Repository

Webtatic是一个yum存储库,通常处理与Web主机相关的包,CentOS / RHEL存储库中不包含这些包。 执行以下命令之一以在CentOS / RHEL 7/6系统上安装REMI yum存储库。

### For CentOS/RHEL 7 ###
yum localinstall  http://repo.webtatic.com/yum/el7/webtatic-release.rpm

### For CentOS/RHEL 6 ###
yum localinstall  http://repo.webtatic.com/yum/el6/latest.rpm

以上部分仓库也可以忽略key,参数是:--nogpgcheck 

五、解决冲突

特殊情况 : 但在不同优先级的源中都含有同一个包时, 它的行为可能就不是我们所需要的.

例如, 在 base 源中有个包 : abc-2.2.0.x86_64.rpmbase 是最高优先级. 在其他的优先级中也有许多 abc 包, 如果你想安装 abc-2.1.0-x86_64.rpm, 通过命令

yum install abc-2.1.0

就会出现下面的提示:xx packages excluded due to repository priority protection,并且找不到所需要的包,这是因为在高优先级源中存在的包,会将其他低优先级中的包屏蔽掉,因此无法从低优先级的源中安装所需要的包。

修改priorities的配置文件是/etc/yum/pluginconf.d/priorities.conf

其内容为:

[main]

enabled=0   # 0禁用 1启用

默认是1;设置enabled = 0, 这样就可以禁用priorities插>件。从而能够安装任意源上的包。

参考文章:

https://www.cnblogs.com/mityaya/p/4672312.html

https://tecadmin.net/top-5-yum-repositories-for-centos-rhel-systems/

 

查看更多关于【Fedora教程】的文章

展开全文
相关推荐
反对 0
举报 0
评论 0
图文资讯
热门推荐
优选好物
更多热点专题
更多推荐文章
[转]Fedora 15 安装与配置一览
Fedora 15 将于2011.5.24日发布,今日离正式版发布还有4天。笨兔兔这里提前给大家支招用好Fedora 15。下面是笨兔兔在安装、配置Fedora 15 过程中的小结,希望给大家配置自己的Fedora 15 带来方便。仅供参考,如有错误,敬请指出。『一』安装介绍Fedora 15 Bet

0评论2023-03-08508

新换的 Fedora Core Linux 桌面,来秀一秀(多图)
1、桌面、终端、文件浏览器,已经设置好字体、自动挂载硬盘,不是很麻烦2、即时通讯:QQ,Skype3、firefox4、D4X、BT、电驴5、开发工具:eclipse netbeans6、openoffice 大开 word 公式文档,输出 PDF7、小企鹅输入法,支持微软双拼8、星际译王,linux 下免费

0评论2023-02-10695

Fedora 14添加RPM Fusion源
RPM Fusion 是 Fedora 和 Red Hat 企业版的软件仓库,是由Dribble, Freshrpms 和 RPM Fusion 合并而来的。各种各样的应用程序包含在这个软件仓库中,比如MP3、未加密的DVD 、Mplayer, VLX, Xine 等多媒体应用程序使用的解码库,以及闭源的 Nvidia 和 ATI 显卡

0评论2023-02-10718

Fedora中安装VMtools步骤 vmware虚拟机安装fedora教程
  第一次玩Fedora的系统,通过VMware工具安装的一个虚拟机,由于公司要求尽可能的留有足够空间,所以安装的时候就没选开发环境选项。安装成功后,又要准备安装VMware--tools工具,在此记录安装的过程,以及安装过程中遇到的一些问题。一、准备工作  确保

0评论2023-02-10794

Fedora 23 配置
刻到u盘上下好iso后准备刻录到u盘...可是查了一下只能在用一个叫dd的东西刻= =于是学了下...然而就是一句话:dd if=/path/xxx.iso of=/dev/sdx其中前面是文件,后面是盘,注意是整个盘sdx而不是什么sdx1啥的,注意这样做会格式化整个盘...请不要乱实验...。(

0评论2023-02-10996

Fedora 9安装说明 Fedora 9安装说明
 Fedora 9 安装手册◆准备工作硬件       硬盘空间:5G以上;       内存容量:384 M以上(256M也可以,但在分区后会提示您启用swap分区);       光盘介质:Fedora 9 安装光盘(1张DVD);设置BIOS为从光盘引导;启动计算机,将安装盘的

0评论2023-02-10336

fedora27安装DB2 Express-C 11
首先在官网下载对应的安装包和语言包两个文件。然后通过tar -zxvf命令将下载的两个文件解压。其中一个文件解压后是名为expc的文件,进入这个文件。里面有一个名为db2setup的文件。在命令行下首先通过命令su切换到超级用户,然后通过./db2setup进入图形化界面

0评论2023-02-10952

Red Hat Linux、rhel 和 Fedora Core 以及 Centos 区别与联系 - spring3mvc学习笔记
Red Hat Linux、rhel 和 Fedora Core 以及 Centos 区别与联系1. Red Hat LinuxLinux是GNU/Linux的缩写,通常指各种Linux发行版的通称,Red Hat Linux是redhat最早发行的个人版本的linux, 其1。0版本于1994年11月3日发行。虽然其历史不及其它linux发行

0评论2023-02-10521

Fedora Core 3安装杂记(一)
  数日前欣闻Fedora Core 3正式版已经出来,作为一个Linux的初学者,期待着Core3能带给我们更好的功能和易用性,所以迫不及待地找到下载的地方,开始了漫长的安装旅程 (几乎花了一整天,相当于什么都没做成,只有这篇杂记……)。现在就将其间碰到的问题与

0评论2023-02-10893

SUSE Linux 10、whitefin、Fedora Core Linux 6桌面效果大比拼 - 哼哼唧唧
SUSE Linux 10、whitefin、Fedora Core Linux 6桌面效果大比拼          Novell公司发布了SUSE Linux 10,向世人证明了一点,桌面版Linux已能和Windows相抗衡了。而接下来,拓林思公司的whitefin,走社区路线,三十分钟创造一个个性Linux,又为开发

0评论2023-02-10695

Fedora 10编程开发工具
 1请问Fedora 10编程开发工具有什么编辑器就用vim,编译用gcc,当然个人爱好随意IDE的话推荐eclipse,如果做C/C++的,用codeblocks也是个不错的选择输入gcc -v 是否返回版本,有就装了,没就没装 gcc编译器:gcc –v查看是否安装有gcc,经查看是4.3.2 2.#s

0评论2023-02-10876

1、Fedora 安装的一点小建议
  要留给Fedora安装的空间必须是没有被分配的,也就是说利用分区工具(如Acronis)将E盘删除,即该段空间不分配给任何盘符。   由于MBR块的容量有限,一个硬盘最多只能分成4个分区P+P+P+P或P+P+P+E,其中P为主分区,E为扩展分区(只能有1个扩展分区),

0评论2023-02-10543

使用移动硬盘安装fedora14 使用移动硬盘安装Linux
以前一直使用DVD的方式安装,为响应绿色环保的号召,遂使用移动硬盘来完成此工作。原来用的是fedora13,下载Fedora-14-i386-DVD.iso后,把Fedora-14-i386-DVD.iso放到移动硬盘的fedora目录下,此移动硬盘的分区应为ext2, ext3, ext4, or FAT32,避免NTFS,将I

0评论2023-02-10406

关闭Fedora的防火墙 防火墙linux关闭
重启后生效 开启: chkconfig iptables on 关闭: chkconfig iptables off   或者 /sbin/chkconfig --level 2345 iptables off2) 即时生效,重启后失效 service 方式开启: service iptables start 关闭: service iptables stop iptables方式查看防火墙状

0评论2023-02-10457

更多推荐