一、RPM(RedHat Package Manager)是RedHat公司开发的一个Linux软件包安装和管理程序。
RPM软件包文件都是以 .rpm为后缀,一般格式:
软件包名-版本号-修正版.硬件平台.rpm
RPM命令的使用方法
一般选项
-h :用“#”显示完成的进度
--keep-temps :保留临时文件
--quiet :只有当出现错误时才给出提示信息
--version :显示RPM版本
选择选项
-a :查询所有安装的软件包
-f :查询该文件是由哪个软件包安装的
查询选项
-i :显示软件包信息
-l :列出软件包内所包含的文件
--provides :显示这个软件包所提供的功能
-R :查询该软件包所依赖的其他软件包
-s :列出软件包中所有文件的状态
验证选项
--nodeps :不验证依赖的软件包
--nofiles :不验证软件包文件的属性
安装选项
--force :强制安装,不论软件包是否安装过
--nodeps :如果安装的软件包有依赖包,忽略依赖包,强制安装
--test :模拟安装
删除选项
--allmatches :删除指定名称的软件包的所有版本
--nodeps :忽略依赖包,强制删除
--test :模拟删除
实例
1、安装RPM软件包
命令格式
rpm -ivh 软件包文件名
[root@TestA Packages]# rpm -ivh tree-1.5.3-2.el6.i686.rpm Preparing... ########################################### [100%] 1:tree ########################################### [100%]
2、查看RPM软件包
①查看软件包的详细信息
命令格式
rpm -qi 软件包名称
[root@TestA Packages]# rpm -qi tree Name : tree Relocations: (not relocatable) Version : 1.5.3 Vendor: CentOS Release : 2.el6 Build Date: 2010年08月23日 星期一 07时00分37秒 Install Date: 2015年03月29日 星期日 06时59分09秒 Build Host: c6b6.bsys.dev.centos.org Group : Applications/File Source RPM: tree-1.5.3-2.el6.src.rpm Size : 64903 License: GPLv2+ Signature : RSA/8, 2011年07月03日 星期日 12时51分30秒, Key ID 0946fca2c105b9de Packager : CentOS BuildSystem <http://bugs.centos.org> URL : http://mama.indstate.edu/users/ice/tree/ Summary : File system tree viewer Description : The tree utility recursively displays the contents of directories in a tree-like format. Tree is basically a UNIX port of the DOS tree utility.
②查看软件包的文件清单
命令格式
rpm -ql 软件包名称
[root@TestA Packages]# 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
③查看软件包所依赖的其他所有软件包
命令格式
rpm -qR 软件包名称
[root@TestA Packages]# rpm -qR tree libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.2) libc.so.6(GLIBC_2.3) libc.so.6(GLIBC_2.3.4) libc.so.6(GLIBC_2.4) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rtld(GNU_HASH) rpmlib(PayloadIsXz) <= 5.2-1
④查看系统中已安装的所有软件包的清单
命令格式
rpm -qa
[root@TestA Packages]# rpm -qa |head -5 libglade2-2.6.4-3.1.el6.i686 filesystem-2.4.30-3.el6.i686 libgxim-0.3.3-3.1.el6.i686 cjkuni-fonts-common-0.2.20080216.1-36.el6.noarch gnome-keyring-2.28.2-8.el6_3.i686
⑤查看文件中某个程序由哪个包所安装
命令格式
rpm -q 程序名
[root@TestA Packages]# rpm -q /usr/bin/xz xz-4.999.9-0.5.beta.20091007git.el6.i686
3、升级软件包
命令格式
rpm -Uvh 软件包文件名
4、删除软件包
命令格式
rpm -e 软件包文件名
[root@TestA Packages]# rpm -e xz-4.999.9-0.5.beta.20091007git.el6.i686
二、yum工具的使用
常用选项
yum 除了常用的安装,查询选项,还有特殊用法
1、yum中查询的软件包都是官方提供的软件包,还有一些是附加软件包(EPEL),对于centos的epel,默认支持yum安装执行yum install -y epel-release 就可以,在yum list 就可以看见软件源,就增加了epel的扩展源了
2、有时候我们需要只是需要下载某个包,但是不想去安装,
方法如下:
① 需要安装插件yum-plugin-downloadonly
② 命令格式 :yum install -y --downloadonly --downloaddir=/usr/local/src
--downloadonly 代表启用仅下载功能
--downloaddir 代表软件包保存的目录 (注:如果不指定目录,软件包保存到了/var/cache/yum/i386/6/base/packages/)
对于已经安装过的软件包,需要将install替换成reinstall,即可
三、源代码安装
1、使用tar命令解压源代码安装包
2、执行configure配置编译选项
3、执行make命令编译源代码
4、执行make install 命令安装编译后的程序
本内容由导师:阿铭提供技术支持:跟阿铭学linux 点这里