yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。

基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum本质上也是属于python的一个模块,打开/usr/bin/yum,我们可以看到其实它执行的是python,并且导入了yum模块。

linux安装软件能够使用yum安装依赖包是一件非常简单而幸福的事情,所以这里介绍一下linux安装yum源流程和操作。

yum 语法

yum [options] [command] [package ...]
  • options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等。
  • command:要进行的操作。
  • package操作的对象。

yum常用命令

  • 1.列出所有可更新的软件清单命令:yum check-update
  • 2.更新所有软件命令:yum update
  • 3.仅安装指定的软件命令:yum install <package_name>
  • 4.仅更新指定的软件命令:yum update <package_name>
  • 5.列出所有可安裝的软件清单命令:yum list
  • 利用 yum 的功能,找出以 pam 为开头的软件名称有哪些?

    [root@www ~]# yum list pam*
    Installed Packages
    pam.i386 0.99.6.2-3.27.el5 installed
    pam_ccreds.i386 3-5 installed
    pam_krb5.i386 2.2.14-1 installed
    pam_passwdqc.i386 1.0.2-1.2.2 installed
    pam_pkcs11.i386 0.5.3-23 installed
    pam_smb.i386 1.1.7-7.2.1 installed
    Available Packages <==底下则是『可升级』的或『未安装』的
    pam.i386 0.99.6.2-4.el5 base
    pam-devel.i386 0.99.6.2-4.el5 base
    pam_krb5.i386 2.2.14-10 base
  • 6.删除软件包命令:yum remove <package_name>
  • 7.查找软件包 命令:yum search <keyword>
  • 8.清除缓存命令:
    • yum clean packages: 清除缓存目录下的软件包
    • yum clean headers: 清除缓存目录下的 headers
    • yum clean oldheaders: 清除缓存目录下旧的 headers
    • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers

国内 yum 源

网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常的不错。

将yum源设置为163 yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。

安装步骤

1.查看、卸载已安装的yum包

  查看已安装的yum包

  #rpm –qa|grep yum

卸载软件包

#rpm –e –nodeps yum

 
# 或着一一卸载这些软件包

[root@zf-test-web01-4 ~]# rpm -e yum-plugin-fastestmirror-1.1.31-34.el7.noarch --nodeps
warning: /etc/yum/pluginconf.d/fastestmirror.conf saved as /etc/yum/pluginconf.d/fastestmirror.conf.rpmsave
[root@zf-test-web01-4 ~]# rpm -e yum-metadata-parser-1.1.4-10.el7.x86_64 --nodeps
[root@zf-test-web01-4 ~]# rpm -e yum-3.4.3-132.el7.centos.0.1.noarch --nodeps

2.进入centos镜像网站找到自己对应系统需要的yum包

查看系统的命令:

[root@zf-test-web01-4 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)

查看系统的位数:

[root@zf-test-web01-4 ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aa7ff68f13de25936a098016243ce57c3c982e06, stripped

3.下载安装依赖包python、python-iniparse和下载安装yum依赖包

下载安装依赖包python    python-iniparse

下载地址http://centos.ustc.edu.cn/centos/6.5/os/x86_64/Packages/

http://mirrors.163.com/centos/6/os/x86_64/Packages/

找到对应包如:python-2.6.6-51.el6.x86_64.rpm     python-iniparse-0.3.1-2.1.el6.noarch.rpm

源地址可以从网上找一些速度比较快的,自身测试这两个地址速度还不错。包的名字可能跟上面不同,主要是版本和操作系统位数的不同,建议不要在页面搜索全部,如第一个包只搜索python,第二个包搜索python-iniparse。

安装

#rpm –ivh python-2.6.6-51.el6.x86_64.rpm python-iniparse-0.3.1-2.1.el6.noarch.rpm

下载安装yum包

下载地址http://centos.ustc.edu.cn/centos/6.5/os/x86_64/Packages/

http://mirrors.163.com/centos/6/os/x86_64/Packages/

找到对应包如:http://centos.ustc.edu.cn/centos/6.5/os/x86_64/Packages/

yum- plugin-fastestmirror-1.1.30-14.el6.noarch.rpm

yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

yum-3.2.29-40.el6.centos.noarch.rpm

wget http://vault.centos.org/7.2.1511/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-34.el7.noarch.rpm
wget http://vault.centos.org/7.2.1511/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://vault.centos.org/7.2.1511/os/x86_64/Packages/yum-3.4.3-132.el7.centos.0.1.noarch.rpm

安装

[root@zf-test-web01-4 ~]# rpm -ivh yum-*
Preparing...                          ################################# [100%]
Updating / installing...
   1:yum-metadata-parser-1.1.4-10.el7 ################################# [ 33%]
   2:yum-plugin-fastestmirror-1.1.31-3################################# [ 67%]
   3:yum-3.4.3-132.el7.centos.0.1     ################################# [100%]

若安装失败可重新输入此命令并加参数--nodeps –force

rpm -ivh yum-*发现报以下错
error: Failed dependencies:
python-urlgrabber >= 3.10-8 is needed by yum-3.4.3-163.el7.centos.noarch
rpm >= 0:4.11.3-22 is needed by yum-3.4.3-163.el7.centos.noarch
是说python-urlgrabbe的版本必须大于3.10-8

卸载原有python-urlgrabbe安装新的python-urlgrabbe
可以直接进行更新这个软件包
去rpm.pbone.net搜索这个包 python-urlgrabber-3.10-8.el7.noarch.rpm
然后去下载下来 wget ftp://ftp.pbone.net/mirror/ftp.scientificlinux.org/linux/scientific/7.4/x86_64/os/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm
卸载原来的包 rpm -e --nodeps python-urgrabber-*
安装包 rpm -ivh --nodeps python-urlgrabber-3.10-8.el7.noarch.rpm
查看有没有安装上:[root@localhost ~]# rpm -qa |grep python-url
python-urlgrabber-3.10-8.el7.noarch
说明:此过程报别的错,说几个包相互缺失,就要下载好软件包,然后,rpm -ivh 软件包1 软件包2 ...软件包3(需要并列放置,达到完整安装)

  4.更改yum源

首先备份/etc/yum.repos.d/CentOS-Base.repo

mv /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.backup

下载对应版本 repo 文件, 放入 /etc/yum.repos.d/ (操作前请做好相应备份)

    • CentOS5 :http://mirrors.163.com/.help/CentOS5-Base-163.repo
    • CentOS6 :http://mirrors.163.com/.help/CentOS6-Base-163.repo
    • CentOS7 :http://mirrors.163.com/.help/CentOS7-Base-163.repo
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo CentOS-Base.repo
说明:以上还可以参考此链接:https://blog.csdn.net/homewm/article/details/80642851 有一定借鉴意义

以上会遇到:

     CentOS 7 报错: "Repository base is listed more than once in the configuration"和"没有可用软件包 XXX"的问题
    

具体参看:https://blog.csdn.net/wy_bk/article/details/89648052

运行以下命令生成缓存

  yum clean all
  yum makecache

除了网易之外,国内还有其他不错的 yum 源,比如中科大和搜狐。

中科大的 yum 源,安装方法查看:https://lug.ustc.edu.cn/wiki/mirrors/help/centos

sohu 的 yum 源安装方法查看: http://mirrors.sohu.com/help/centos.html

安装过程报错1——“yum clean all之坑”

在Centos7系统中执行yum clean all 之后,发现yum的其他执行都报错了;

要解决,关键在这里:

把/var/cache/yum/ 下面的文件删除了

接下来,如果执行yum repolist all,结果为0;

执行yum list正常的话,那就是/etc/yum.repos.d/*.repo 这货有问题啦,解决这货的问题

接着执行 yum makecache 然后再执行yum update

这样就O啦!

Linux—软件包管理器yum安装详解的更多相关文章

  1. yum(Fedora和RedHat以及SUSE中的Shell前端软件包管理器)命令详解

    yum官方网站:http://yum.baseurl.org/ Fedora对于yum的介绍:http://fedoraproject.org/wiki/Yum yum(全称为 Yellow dog ...

  2. 【转】Linux下Android ADB驱动安装详解

    原文网址:http://blog.csdn.net/zhenwenxian/article/details/5901350 Linux下Android ADB驱动安装详解 概述 最近由于内置的合作商比 ...

  3. 【Linux开发】Linux下jpeglib库的安装详解

    Linux下jpeglib库的安装详解 首先要下载所需的库压缩包:jpegsrc.v6b.tar.gz或 jpegsrc.v8b.tar.gz 然后将下载的压缩包随便放在和解压到你喜欢的地方. # t ...

  4. Linux ssh登录和软件安装详解

    阿哲Style   Linux第一天 ssh登录和软件安装详解 Linux学习第一天 操作环境: Ubuntu 16.04 Win10系统,使用putty_V0.63 本身学习Linux就是想在服务器 ...

  5. Linux系列教程(十二)——Linux软件包管理之yum在线管理

    上一篇博客我们介绍了rpm包管理之rpm命令管理,我们发现在使用rpm命令手动安装rpm包的时候,会发现安装遇到到的依赖让你痛不欲生,安装一个rpm时会要先先安装某个依赖的rpm,而安装这个依赖的rp ...

  6. Linux软件包管理之yum在线管理

    目录 1.yum在线管理 2.网络 yum 源 3.光盘 yum 源搭建步骤 ①.挂载光盘 ②.让网络 yum 源失效 ③.修改光盘yum源文件 ④.输入yum list 可以查看光盘yum源里面的软 ...

  7. linux笔记:linux软件包管理,软件安装位置

    linux软件包简介 软件包分类:1.源码包(用C语言等编写的源代码,没有进行编译):脚本安装包(对源码包进行了安装优化的源码包)优点:开源,可修改可以自由选择所需的功能编译安装,更适合自己的系统,稳 ...

  8. Linux—账号管理及命令使用详解

    关注微信公众号:CodingTechWork,一起学习进步. 引言   在Linux系统中,我们常常会看到目录或文件的所属关系: [root@linux01 ~]# ll -d test.sh -rw ...

  9. Linux远程管理Windows程序Rdesktop详解

    #rpm –q rdesktop                       //查找是否已经安装 #yum install rdesktop                //使用yum安装 rde ...

随机推荐

  1. [Beta]the Agiles Scrum Meeting 3

    会议时间:2020.5.14 20:00 1.每个人的工作 今天已完成的工作 成员 已完成的工作 yjy 实现前端界面美化 tq 实现查看.删除测试点功能的前端修复功能中的bug wjx 升级系统实现 ...

  2. Vue el 使用el-checkbox-group复选框进行单选框操作

    el-checkbox-group这个组件与其他复选框不一样,我当初也是半天不知道怎么操作 页面使用v-model绑定 size就是等比例缩小放大,v-ror循环应该看的懂.重要的是@chage到我们 ...

  3. 2021.9.12考试总结[NOIP模拟51]

    T1 茅山道术 仔细观察发现对于每个点只考虑它前面第一个与它颜色相同的点即可. 又仔细观察发现对一段区间染色后以这个区间内点为端点的区间不能染色. 于是对区间右端点而言,区间染色的贡献为遍历到区间左端 ...

  4. A*,IDA*—高档次的暴搜

    A*通过评价函数来判断当前状态是否可以到达最终状态(即可行性剪枝),来减少不必要的搜索. 例题--P2324 [SCOI2005]骑士精神 我们通过当前不在指定位置上的棋子个数为评价函数,\(used ...

  5. 升级 dubbo 小心 default.version

    上周遇到个关于升级dubbo 2.6 到2.7的兼容性问题,差点造成线上故障,这里记录下,也给大家提个醒. 问题回放 有一个接口的提供方(dubbo 2.6.6)这么配置接口的版本号 <dubb ...

  6. 树的子结构 牛客网 剑指Offer

    树的子结构 牛客网 剑指Offer 题目描述 输入两棵二叉树A,B,判断B是不是A的子结构.(ps:我们约定空树不是任意一个树的子结构) # class TreeNode: # def __init_ ...

  7. 第01课 OpenGL窗口(2)

    下一段包括了所有的绘图代码.任何您所想在屏幕上显示的东东都将在此段代码中出现.以后的每个教程中我都会在例程的此处增加新的代码.如果您对OpenGL已经有所了解的话,您可以在 glLoadIdentit ...

  8. 聊了聊宏内核和微内核,并吹了一波 Linux

    看这里!!!https://mp.weixin.qq.com/s?__biz=MzI0ODk2NDIyMQ==&mid=2247494048&idx=1&sn=cacfc6a4 ...

  9. Oracle ORA 12541 报错解决过程

    Oracle 导入全库之后使用plsql登陆时报错 版本12C版本2 ORA-12541: TNS: No Listener 再oracle主机本地可以使用sqlplus 登陆,但是使用plsql无法 ...

  10. VNC服务器的搭建(带图形化支持)

    环境:centos7.6最小化安装 图形化支持 如果希望安装简单的图形支持的话,仅包含gnome的最最最最基础的包的话可以使用以下命令 yum groups install "X Windo ...