yum命令的使用

文章目录

  • 前言
  • 一、查询功能
    • 1.安装/升级功能:yum [install|update] 软件
    • 2.移除功能:yum [remove] 软件
  • 二、yum的配置文件
  • 三、yum的软件群组功能
  • 四、全系统自动升级


前言

很多人都觉得自己会用yum,它就是个下载命令而已,是,也不是。yum是通过分析RPM(RPM是Linux中两大软件安装方式之一,在这里不细讲)的标头资料后,根据各软件的相关性制作出属性相依时的解决方案,然后自动处理软件的相依问题,以此来解决软件安装或移除与升级的问题。


一、查询功能

查询功能的语法如下:

yum [list|info|search|provides|whatprovides] 参数

如果想要利用yum查询原版distribution所提供的软件或已知软件名称想要知道软件的功能,可以利用yum相关参数:

[root@www ~]# yum [option] [查询工作项目] [相关参数]
选项与参数:
[option]:主要的选项,包括有:
 -y :当 yum 要等待用户输入时,这个选项可以自动提供 yes 的响应;
 --installroot=/some/path :将该软件安装在 /some/path 而不使用默认路径
[查询工作项目] [相关参数]:这方面的参数有:
 search :搜寻某个软件名称或者是描述 (description) 的重要关键字;
 list :列出目前 yum 所管理的所有的软件名称与版本,有点类似 rpm -qa;
 info :同上,不过有点类似 rpm -qai 的执行结果;
 provides:从档案去搜寻软件!类似 rpm -qf 的功能!

下面给出一些范例
yum命令的使用_第1张图片

利用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 bas

可以发现,pam,pam_krb5这两个软件可以升级,而pam-devel这个软件可以安装

1.安装/升级功能:yum [install|update] 软件

语法如下:

[root@www ~]# yum [option] [查询工作项目] [相关参数]
选项与参数:
 install :后面接要安装的软件!
 update :后面接要升级的软件,若要整个系统都升级,就直接 update 即可```

2.移除功能:yum [remove] 软件

范例如下:

[root@www ~]# yum remove pam-devel
Setting up Remove Process
Resolving Dependencies <==同样的,先解决属性相依的问题
--> Running transaction chec
---> Package pam-devel.i386 0:0.99.6.2-4.el5 set to be erased
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Removing:
pam-devel i386 0.99.6.2-4.el5 installed 495 k
Transaction Summary
=============================================================================
Install 0 Package(s)
Update 0 Package(s)
Remove 1 Package(s) <==还好,幵没有属性相依的问题,单纯移除一个软件
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
 Erasing : pam-devel ######################### [1/1]
Removed: pam-devel.i386 0:0.99.6.2-4.el5
Complete!

二、yum的配置文件

正常使用yum命令会比较慢,因为CentOS选择的映射站台可能会出错,选择到了日本或者台湾,所以我们可以修改yum的配置文件来使我们的下载速度更快。
假设我们已经找到了一个本地的映射站台,网址如下:http://ftp.twaren.net/Linux/CentOS/5/os/i386/,接下来我们修改配置文件 /etc/yum.repos.d/CentOS-Base.repo

[root@www ~]# vi /etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base
baseurl=http://ftp.twaren.net/Linux/CentOS/5/os/i386/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

只用修改baseurl即可

三、yum的软件群组功能

所谓软件群组,就是指一套相互关联的软件,可以一次性全部安装,语法如下:

[root@www ~]# yum [群组功能] [软件群组]
选项与参数:
 grouplist :列出所有可使用的『套件组』,例如 Development Tools 之类
的;
 groupinfo :后面接 group_name,则可了解该 group 内含的所有套件名;
 groupinstall:这个可以安装一整组的套件群组,相当的不错
 groupremove :移除某个套件群组;

四、全系统自动升级

我们可以选择使用yum来升级系统,但是总不能每次都自己手动升级吧,其实很简单,将系统升级命令写入到crontab中,这样每次开机就会自动升级系统了

[root@www ~]# vim /etc/crontab
....(前面省略幵保留设定值)....
0 3 * * * root /usr/bin/yum -y update

每天三点自动升级系统


你可能感兴趣的:(Linux,linux)