用于软件包管理的21个Linux YUM命令 转载
http://flycars001.iteye.com/blog/1949085
YUM到底是啥东东?
YUM(Yellowdog Updater Modified)是一款开源命令行及图形化软件包管理工具,面向基于RPM(红帽软件包管理器)的Linux系统。 它让广大用户和系统管理员可以在系统上轻松地安装、更新、移除或搜索软件包。它由Seth Vidal开发和发布,采用了GPL(通用公共许可证),是一款开源工具。这意味着,谁都可以下载和访问代码,以修复软件错误,开发定制的软件包。YUM 通过解决软件包的依赖项问题,使用众多的第三方软件库来自动安装软件包。
1. 使用Yum安装软件包
想安装一个名为Firefox 14的软件包,只要运行下面这个命令,它会自动寻找并安装Firefox浏览器的所有必要依赖项。
- # yum install firefox
- Loaded plugins: fastestmirror
- Dependencies Resolved
- ==================================== Package Arch Version Repository Size
- ====================================
- Updating:
- firefox i686 10.0.6-1.el6.centos updates 20 M
- Updating for dependencies:
- xulrunner i686 10.0.6-1.el6.centos updates 12 M
- Transaction Summary
- ===========================================Install 0 Package(s)
- Upgrade 2 Package(s)
- Total download size: 32 M
- Is this ok [y/N]: y
- Downloading Packages:
- (1/2): firefox-10.0.6-1.el6.centos.i686.rpm | 20 MB 01:10
- (2/2): xulrunner-10.0.6-1.el6.centos.i686.rpm | 12 MB 00:52
- ------------------------------------------------------------------------------------------------
- Total 63 kB/s | 32 MB 02:04
- Updated:
- firefox.i686 0:10.0.6-1.el6.centos
- Dependency Updated:
- xulrunner.i686 0:10.0.6-1.el6.centos
- Complete!
上述命令会先要求予以确认,然后再将任何软件包安装到你的系统上。如果你不要求任何确认,就想自动安装软件包,可使用选项-y,如下例所示。
- # yum -y install firefox
2. 使用Yum移除软件包
想完全移除软件包连同所有依赖项,只要运行下面这个命令,如下所示。
- # yum remove firefox
- Loaded plugins: fastestmirror
- Setting up Remove Process
- Resolving Dependencies
- --> Running transaction check
- ---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased
- --> Finished Dependency Resolution
- Dependencies Resolved
- ===========================================Package Arch Version Repository Size
- ===========================================Removing:
- firefox i686 10.0.6-1.el6.centos @updates 23 M
- Transaction Summary
- ===========================================
- Remove 1 Package(s)
- Reinstall 0 Package(s)
- Downgrade 0 Package(s)
- Is this ok [y/N]: y
- Downloading Packages:
- Running rpm_check_debug
- Running Transaction Test
- Transaction Test Succeeded
- Running Transaction
- Erasing:firefox-10.0.6-1.el6.centos.i686 1/1
- Removed:
- firefox.i686 0:10.0.6-1.el6.centos
- Complete!
同样,上述命令会先要求予以确认,然后再移除软件包。想禁用确认提示,只要添加选项-y,如下所示。
- # yum -y remove firefox
3. 使用Yum更新软件包
假设你有过时版本的MySQL软件包,想把它更新到最新的稳定版本。只要运行下面这个命令,它就会自动解决所有的依赖项问题,并安装依赖项。
- # yum update mysql
- Loaded plugins: fastestmirror
- Dependencies Resolved
- ===========================================Package Arch Version Repository Size
- ===========================================Updating:
- vsftpd i386 2.0.5-24.el5_8.1 updates 144 k
- Transaction Summary
- Install 0 Package(s)
- Upgrade 1 Package(s)
- Total size: 144 k
- Is this ok [y/N]: y
- Downloading Packages:
- Running rpm_check_debug
- Running Transaction Test
- Finished Transaction Test
- Transaction Test Succeeded
- Running Transaction
- Updating : vsftpd 1/2
- Cleanup : vsftpd 2/2
- Updated:
- vsftpd.i386 0:2.0.5-24.el5_8.1
- Complete!
4. 使用Yum列出软件包
使用list函数,可搜索带名称的特定软件包。比如说,想搜索一个名为openssh的软件包,使用该命令。
- # yum list openssh
- Loaded plugins: fastestmirror
- Loading mirror speeds from cached hostfile
- * base: mirror.neu.edu.cn
- * epel: mirror.neu.edu.cn
- * extras: mirror.neu.edu.cn
- * rpmforge: mirror.nl.leaseweb.net
- * updates: mirror.nus.edu.sg
- Installed Packages
- openssh.i386 4.3p2-72.el5_6.3 installed
- Available Packages 4.3p2-82.el5 base
想让你的搜索更精确,明确软件包名称的版本,如果你知道的话。比如说,想搜索软件包的特定版本openssh-4.3p2 ,使用该命令。
- # yum list openssh-4.3p2
5. 使用Yum搜索软件包
要是你不记得软件包的确切名称,那么可以使用search函数,搜索与指定软件包的名称相匹配的所有可用软件包。比如说,想搜索与vsftpd这个单词匹配的所有软件包。
- # yum search vsftpd
- Loaded plugins: fastestmirror
- Loading mirror speeds from cached hostfile
- * base: mirror.neu.edu.cn
- * epel: mirror.neu.edu.cn
- * extras: mirror.neu.edu.cn
- * rpmforge: mirror.nl.leaseweb.net
- * updates: ftp.iitm.ac.in
- ============================== Matched: vsftpd ========================
- ccze.i386 : A robust log colorizer
- pure-ftpd-selinux.i386 : SELinux support for Pure-FTPD
- vsftpd.i386 : vsftpd - Very Secure Ftp Daemon
6. 使用Yum获取软件包信息
假设你想在安装软件包之前先知道它的信息。想获得某软件包的信息,只要执行下面这个命令。
- # yum info firefox
- Loaded plugins: fastestmirror
- Loading mirror speeds from cached hostfile
- * base: mirror.neu.edu.cn
- * epel: mirror.neu.edu.cn
- * extras: mirror.neu.edu.cn
- * rpmforge: mirror.nl.leaseweb.net
- * updates: ftp.iitm.ac.in
- Available Packages
- Name : firefox
- Arch : i386
- Version : 10.0.6
- Release : 1.el5.centos
- Size : 20 M
- Repo : updates
- Summary : Mozilla Firefox Web browser
- URL : http://www.mozilla.org/projects/firefox/
- License : MPLv1.1 or GPLv2+ or LGPLv2+
- Description : Mozilla Firefox is an open-source web browser, designed for standards
- : compliance, performance and portability.
7. 使用Yum列出所有的可用软件包
想列出Yum数据库中所有的可用软件包,使用下面这个命令。
- # yum list | less
8. 使用Yum列出所有的已安装软件包
想列出系统上所有的已安装软件包,只要执行下面这个命令,它会显示所有的已安装软件包。
- # yum list installed | less
9. Yum Provides函数
Yum provides函数用于查找某个特定文件属于哪个软件包。比如说,如果你想知道含有/etc/httpd/conf/httpd.conf文件的软件包的名称。
- # yum provides /etc/httpd/conf/httpd.conf
- Loaded plugins: fastestmirror
- httpd-2.2.3-63.el5.centos.i386 : Apache HTTP Server
- Repo : base
- Matched from:
- Filename : /etc/httpd/conf/httpd.conf
- httpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP Server
- Repo : updates
- Matched from:
- Filename : /etc/httpd/conf/httpd.conf
- httpd-2.2.3-65.el5.centos.i386 : Apache HTTP Server
- Repo : updates
- Matched from:
- Filename : /etc/httpd/conf/httpd.conf
- httpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP Server
- Repo : installed
- Matched from:
- Other : Provides-match: /etc/httpd/conf/httpd.conf
10. 使用Yum检查可用更新版
想找出你系统上有多少已安装软件包有可用更新版,只要使用下面这个命令。
- # yum check-update
11. 使用Yum更新系统
想确保系统版本最新,打上了所有的安全补丁和二进制软件包更新,只要运行下面这个命令。它会为你的系统安装所有最新的补丁和安全更新版。
- # yum update
12. 列出所有的可用群组软件包
在Linux中,软件包数量与特定群组捆绑在一起。你可以安装某个群组,它就会安装属于该群组的所有相关软件包,用不着使用Yum安装单个软件包。比如说,想列出所有的可用群组,只要执行下面这个命令。
- # yum grouplist
- Installed Groups:
- Administration Tools
- DNS Name Server
- Dialup Networking Support
- Editors
- Engineering and Scientific
- FTP Server
- Graphics
- Java Development
- Legacy Network Server
- Available Groups:
- Authoring and Publishing
- Base
- Beagle
- Cluster Storage
- Clustering
- Development Libraries
- Development Tools
- Eclipse
- Educational Software
- KDE (K Desktop Environment)
- KDE Software Development
13. 安装群组软件包
想安装某个软件包群组,我们使用选项groupinstall。比如说,想安装"MySQL Database",只要执行下面这个命令。
- # yum groupinstall 'MySQL Database'
- Dependencies Resolved
- ==================================================================Package Arch Version Repository Size
- ==================================================================Updating:
- unixODBC i386 2.2.11-10.el5 base 290 k
- Installing for dependencies:
- unixODBC-libs i386 2.2.11-10.el5 base 551 k
- Transaction Summary
- ==================================================================Install 1 Package(s)
- Upgrade 1 Package(s)
- Total size: 841 k
- Is this ok [y/N]: y
- Downloading Packages:
- Running rpm_check_debug
- Running Transaction Test
- Finished Transaction Test
- Transaction Test Succeeded
- Running Transaction
- Installing : unixODBC-libs 1/3
- Updating : unixODBC 2/3
- Cleanup : unixODBC 3/3
- Dependency Installed:
- unixODBC-libs.i386 0:2.2.11-10.el5
- Updated:
- unixODBC.i386 0:2.2.11-10.el5
- Complete!
14. 更新群组软件包
想更新任何现有的已安装群组软件包,只要运行下面这个命令,如下所示。
- # yum groupupdate 'DNS Name Server'
- Dependencies Resolved
- ==================================================================Package Arch Version Repository Size
- ==================================================================
- Updating:
- bind i386 30:9.3.6-20.P1.el5_8.2 updates 981 k
- bind-chroot i386 30:9.3.6-20.P1.el5_8.2 updates 47 k
- Updating for dependencies:
- bind-libs i386 30:9.3.6-20.P1.el5_8.2 updates 864 k
- bind-utils i386 30:9.3.6-20.P1.el5_8.2 updates 174 k
- Transaction Summary
- Install 0 Package(s)
- Upgrade 4 Package(s)
- Total size: 2.0 M
- Is this ok [y/N]: y
- Downloading Packages:
- Running rpm_check_debug
- Running Transaction Test
- Finished Transaction Test
- Transaction Test Succeeded
- Running Transaction
- Updating : bind-libs 1/8
- Updating : bind 2/8
- Updating : bind-chroot 3/8
- Updating : bind-utils 4/8
- Cleanup : bind 5/8
- Cleanup : bind-chroot 6/8
- Cleanup : bind-utils 7/8
- Cleanup : bind-libs 8/8
- Updated:
- bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2
- Dependency Updated:
- bind-libs.i386 30:9.3.6-20.P1.el5_8.2 bind-utils.i386 30:9.3.6-20.P1.el5_8.2
- Complete!
15. 移除群组软件包
想从系统删除或移除任何现有的已安装群组软件包,只要使用下面这个命令。
- # yum groupremove 'DNS Name Server'
- Dependencies Resolved
- ==========================================Package Arch Version Repository Size
- ==========================================Removing:
- bind i386 30:9.3.6-20.P1.el5_8.2 installed 2.1 M
- bind-chroot i386 30:9.3.6-20.P1.el5_8.2 installed 0.0
- Transaction Summary
- ==========================================Remove 2 Package(s)
- Reinstall 0 Package(s)
- Downgrade 0 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 : bind 1/2
- warning: /etc/sysconfig/named saved as /etc/sysconfig/named.rpmsave
- Erasing : bind-chroot 2/2
- Removed:
- bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2
- Complete!
16. 列出启用的Yum软件库
列出系统里面所有启用的Yum软件库,使用下面这个选项。
- # yum repolist
- repo id repo name status
- base CentOS-5 - Base enabled: 2,725
- epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783
- extras CentOS-5 - Extras enabled: 282
- mod-pagespeed mod-pagespeed enabled: 1
- rpmforge RHEL 5 - RPMforge.net - dag enabled: 11,290
- updates CentOS-5 - Updates enabled: 743
- repolist: 20,824
17. 列出所有启用和禁用的Yum软件库
下面这个命令会显示系统上所有启用和禁用的yum软件库。
- # yum repolist all
- repo id repo name status
- C5.0-base CentOS-5.0 - Base disabled
- C5.0-centosplus CentOS-5.0 - Plus disabled
- C5.0-extras CentOS-5.0 - Extras disabled
- base CentOS-5 - Base enabled: 2,725
- epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783
- extras CentOS-5 - Extras enabled: 282
- repolist: 20,824
18. 安装来自特定软件库的软件包
想安装来自某个启用或禁用的软件库的某个软件包,必须在yum命令中使用-enablerepo选项。比如,想安装PhpMyAdmin 3.5.2软件包,只要执行这个命令。
- # yum --enablerepo=epel install phpmyadmin
- Dependencies Resolved
- ================================================================== Package Arch Version Repository Size
- ==================================================================Installing:
- phpMyAdmin noarch 3.5.1-1.el6 epel 4.2 M
- Transaction Summary
- ==================================================================Install 1 Package(s)
- Total download size: 4.2 M
- Installed size: 17 M
- Is this ok [y/N]: y
- Downloading Packages:
- phpMyAdmin-3.5.1-1.el6.noarch.rpm | 4.2 MB 00:25
- Running rpm_check_debug
- Running Transaction Test
- Transaction Test Succeeded
- Running Transaction
- Installing : phpMyAdmin-3.5.1-1.el6.noarch 1/1
- Verifying : phpMyAdmin-3.5.1-1.el6.noarch 1/1
- Installed:
- phpMyAdmin.noarch 0:3.5.1-1.el6
- Complete!
19. 交互式Yum外壳
Yum实用工具提供了一个自定义外壳,你可以在这个环境下执行多个命令。
- # yum shell
- Loaded plugins: fastestmirror
- Setting up Yum Shell
- > update httpd
- Loading mirror speeds from cached hostfile
- * base: mirrors.sin3.sg.voxel.net
- * epel: ftp.riken.jp
- * extras: mirrors.sin3.sg.voxel.net
- * updates: mirrors.sin3.sg.voxel.net
- Setting up Update Process
- >
20. 清理Yum缓存内容
默 认情况下,yum将所有软件库中启用软件包的数据,连同每个子目录保存在/var/cache/yum/中,想清除启用软件库中的所有缓存文件,你要定期 运行下面这个命令,清理所有缓存内容,并确保没有任何东西在使用不必要的存储空间。我们不想给出下面这个命令的输出结果,因为我们想保持缓存数据的原来样 子。
- # yum clean all
21. 查看Yum的历史记录
想查看Yum命令的所有过去的事务,只要使用下面这个命令。
- # yum history
- Loaded plugins: fastestmirror
- ID | Login user | Date and time | Action(s) | Altered
- ------------------------------------------------------------------
- 10 | root | 2012-08-11 15:19 | Install | 3
- 9 | root | 2012-08-11 15:11 | Install | 1
- 8 | root | 2012-08-11 15:10 | Erase | 1 EE
- 7 | root | 2012-08-10 17:44 | Install | 1
- 6 | root | 2012-08-10 12:19 | Install | 2
- 5 | root | 2012-08-10 12:14 | Install | 3
- 4 | root | 2012-08-10 12:12 | I, U | 13 E<
- 3 | root | 2012-08-09 13:01 | Install | 1 >
- 2 | root | 2012-08-08 20:13 | I, U | 292 EE
- 1 | System | 2012-08-08 17:15 | Install | 560
- history list
我们试图探讨所有基本面,给出了每个Yum命令的示例。要是遗漏了与Yum命令有关的任何内容,请在此留言告知我们,以便我们根据收到的反馈,不断更新内容。
用于软件包管理的21个Linux YUM命令 转载的更多相关文章
- 用于软件包管理的21个Linux YUM命令
FROM:http://os.51cto.com/art/201309/411895.htm YUM(Yellowdog Updater Modified)是一款开源命令行及图形化软件包管理工具,面向 ...
- linux yum 命令
linux yum 命令 yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器. 基於RPM包管理,能够从指 ...
- 【转发】linux yum命令详解
linux yum命令详解 yum(全 称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理, ...
- linux yum 命令 详解
linux yum命令详解 yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能 ...
- Linux vi/vim and linux yum 命令
Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主 ...
- linux yum命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- linux yum命令详解-转
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- 【转】linux yum命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
- Linux -Yum 命令详解
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RP ...
随机推荐
- 转:LAV Filter 源代码分析
1: 总体结构 LAV Filter 是一款视频分离和解码软件,他的分离器封装了FFMPEG中的libavformat,解码器则封装了FFMPEG中的libavcodec.它支持十分广泛的视音频格式. ...
- XMPP系列2:如何掌握XMPP协议
michaely 回答于 2012-08-07 08:34 举报我要说的是:1.任何一个协议想学习并熟练掌握,都不是一天两天的事情.2.XMPP协议现在已经有很多成熟的架构和客户端,无需重新造轮子.3 ...
- 基于 Quartz 开发企业级任务调度应用
原文地址:http://www.ibm.com/developerworks/cn/opensource/os-cn-quartz/index.html Quartz 基本概念及原理 Quartz S ...
- Spark使用总结与分享
背景 使用spark开发已有几个月.相比于python/hive,scala/spark学习门槛较高.尤其记得刚开时,举步维艰,进展十分缓慢.不过谢天谢地,这段苦涩(bi)的日子过去了.忆苦思甜,为了 ...
- ASP.NET弹出显示ex.Message异常信息 存在换行符和回车符处理办法。
1.把ex.Message换成任意字符串,检验在catch语句块中可以用Response.Write方法显示对话框.结果显示成功,说明问题就出在ex.Message上. 2.在程序中下断点,可以看到e ...
- 封装一个UILabel圆形边框显示进度
封装了一个UILabel并让它显示圆形的边框,UILabel上面显示百份比,而边框则用Animation绘制到整个圆占指定百分比的点. 这只是我个人想的继承一个UILabel实现的,用到两个CASha ...
- MySQL中导入 导出CSV
来自:http://blog.csdn.net/sara_yhl/article/details/6850107 导出 select * from test_info into outfile '/t ...
- schedule() 和 scheduleAtFixedRate() 区别
1. schedule() ,2个参数方法:在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行. ...
- AngularJS初始化闪烁
可以使用:ng-if和ng-cloak解决,原因见:http://www.cnblogs.com/whitewolf/p/3495822.html
- 让Mac也能拥有apt-get类似的功能——Brew
之前一直怀念ubuntu下的apt-get,因为实在是方便,需要安装什么,一个命令搞定,相关的依赖包统统由apt-get维护.下载,编译,安装,那叫一个痛快.什么软件用着不爽,一个命令卸载! 怀念ap ...