手机版
你好,游客 登录 注册
背景:
阅读新闻

Linux基础教程 - Linux yum 命令

[日期:2017-04-25] 来源:Linux社区  作者:Linux [字体: ]

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

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

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
  • 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

实例 1

安装 pam-devel

[root@www ~]# yum install pam-devel
Setting up InstallProcessParsingpackage install arguments
ResolvingDependencies<==先检查软件的属性相依问题-->Running transaction check
--->Package pam-devel.i386 0:0.99.6.2-4.el5set to be updated
-->ProcessingDependency: pam =0.99.6.2-4.el5forpackage: pam-devel
-->Running transaction check
--->Package pam.i386 0:0.99.6.2-4.el5set to be updated
filelists.xml.gz          100%|=========================|1.6 MB    00:05
filelists.xml.gz          100%|=========================|138 kB    00:00->FinishedDependencyResolution……(省略)

实例 2

移除 pam-devel

[root@www ~]# yum remove pam-devel
Setting up RemoveProcessResolvingDependencies<==同样的,先解决属性相依的问题-->Running transaction check
--->Package pam-devel.i386 0:0.99.6.2-4.el5set to be erased
-->FinishedDependencyResolutionDependenciesResolved=============================================================================PackageArchVersionRepositorySize=============================================================================Removing:
 pam-devel               i386       0.99.6.2-4.el5   installed         495 k

TransactionSummary=============================================================================Install0Package(s)Update0Package(s)Remove1Package(s)<==还好,并没有属性相依的问题,单纯移除一个软件Isthis ok [y/N]: y
DownloadingPackages:Running rpm_check_debug
RunningTransactionTestFinishedTransactionTestTransactionTestSucceededRunningTransactionErasing: pam-devel                    ######################### [1/1]Removed: pam-devel.i386 0:0.99.6.2-4.el5Complete!

实例 3

利用 yum 的功能,找出以 pam 为开头的软件名称有哪些?

[root@www ~]# yum list pam*InstalledPackages
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
AvailablePackages<==底下则是『可升级』的或『未安装』的
pam.i386                  0.99.6.2-4.el5base
pam-devel.i386            0.99.6.2-4.el5base
pam_krb5.i386             2.2.14-10base

国内 yum 源

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

将yum源设置为163 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.repoCentOS-Base.repo

运行以下命令生成缓存

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

配置本地Yum仓库

实现此案例需要按照如下步骤进行。

步骤一:搭建一个本地Yum,将RHEL6光盘手动挂载到/media

命令操作如下所示:

[root@localhost ~]# mount /dev/cdrom /media/
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# mount | tail -1/dev/sr0 on /media type iso9660 (ro)

步骤二:将本地设置为客户端,进行Yum验证

Yum客户端需编辑配置文件,命令操作如下所示:

[root@localhost ~]# cd /etc/yum.repos.d///必须在这个路径下[root@localhost yum.repos.d]# ls                  //此路径下事先有配置文件的模板
rhel-source.repo

[root@localhost yum.repos.d]# cp rhel-source.repo rhel6.repo //配置文件必须以.repo结尾[root@localhost yum.repos.d]# vim rhel6.repo
[rhel-6]//中括号里内容要求唯一,但不要出现特殊字符
name=RedHatEnterpriseLinux6//此为描述信息,可以看情况填写
baseurl=file:///media/                     //此项为yum软件仓库位置,指向光盘挂载点
enabled=1//此项为是否开启,1为开启0为不开启
gpgcheck=1//此项为是否检查签名,1为监测0为不检测
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release  //签名认证信息的路径[root@localhost /]# yum repolist
Loaded plugins: product-id, refresh-packagekit, security, subscription-manager
This system isnot registered to RedHatSubscriptionManagement.You can use subscription-manager to register.
rhel-6|3.9 kB     00:00... 
rhel-6/primary_db                                  |3.1 MB     00:00... 
repo id             repo name                                     status
rhel-6RedHatEnterpriseLinux63,690
repolist:3,690

对于 Linux 软件安装时提示缺失库的,可以使用 yum 的 provides 参数查看 libstdc++.so.6 的库文件包含在那个安装包中只需要执行:

yum provides libstdc++.so.6

然后按查询到安装包包名,使用 yum install 安装即可。

linux
相关资讯       Linux基础教程  Yum命令 
本文评论   查看全部评论 (1)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
第 1 楼
* 匿名 发表于 2017/5/19 15:33:31
继续学习中