軟體的安裝時作業系統管理的基礎,與Windows不同,Linux的軟體管理有很多種方式,Redhat的最常用的是RPM方式,安裝整合在光碟片中的RPM包。這種方式比Windows平台的軟體管理更加便捷(個人感覺,總體感覺Windows程式安裝於卸載有點複雜),使用起來也更加的心用手。
1、Redhat中的rpm包的位置—— 光碟片目錄中的 Package 目錄全部都是。
2、RPM常用命令解讀:
a、安裝程式: rpm -ivh <軟體包的絕對路徑> #i為install;v,verbose;h,hash
[root@asdf /]# rpm -ivh /media/RHEL_6.1\ i386\ Disc\ 1/Packages/vsftpd-2.2.2-6.el6_0.1.i686.rpm
b、卸載程式: rpm -e <軟體名>
[root@asdf /]# rpm -e vsftpd # e => erase 、uninstall[root@asdf /]# rpm -q vsftpd #檢測一下是否已卸載package vsftpd is not installed
rpm -aq|grep yum|xargs rpm -e --nodeps #卸載所有yum相關包
c、查詢指定軟體是否已安裝: rpm -q <軟體名> / rpm -qa <軟體名> / rpm -qa | grep <軟體名>
[root@asdf /]# rpm -q yum # q,queryyum-3.2.29-17.el6.noarch[root@peano /]# rpm -qa yum #這個命令沒有上一個命令快yum-3.2.29-17.el6.noarch[root@peano /]# rpm -qa | grep yum #該命令使用管道進行正則匹配yum-metadata-parser-1.1.2-16.el6.i686PackageKit-yum-0.5.8-19.el6.i686yum-utils-1.1.30-6.el6.noarchyum-rhn-plugin-0.9.1-26.el6.noarchPackageKit-yum-plugin-0.5.8-19.el6.i686yum-3.2.29-17.el6.noarch
d、查詢已安裝軟體中的某一個檔案的軟體包的詳細名稱: rpm -qf <某一檔案>
[root@peano /]# rpm -qf /etc/yum.conf #qf, query fileyum-3.2.29-17.el6.noarch
e、查詢已安裝程式都安裝在哪裡: rpm -ql <程式名>
[root@asdf /]# rpm -ql yum #猜測: ql,query location/etc/bash_completion.d/etc/bash_completion.d/yum.bash/etc/logrotate.d/yum/etc/yum/etc/yum.conf/etc/yum.repos.d/etc/yum/pluginconf.d/etc/yum/protected.d/etc/yum/vars/etc/yum/version-groups.conf/usr/bin/yum/usr/lib/python2.6/site-packages/rpmUtils/usr/lib/python2.6/site-packages/rpmUtils/__init__.py/usr/lib/python2.6/site-packages/rpmUtils/__init__.pyc/usr/lib/python2.6/site-packages/rpmUtils/__init__.pyo/usr/lib/python2.6/site-packages/rpmUtils/arch.py/usr/lib/python2.6/site-packages/rpmUtils/arch.pyc/usr/lib/python2.6/site-packages/rpmUtils/arch.pyo/usr/lib/python2.6/site-packages/rpmUtils/miscutils.py/usr/lib/python2.6/site-packages/rpmUtils/miscutils.pyc/usr/lib/python2.6/site-packages/rpmUtils/miscutils.pyo/usr/lib/python2.6/site-packages/rpmUtils/oldUtils.py/usr/lib/python2.6/site-packages/rpmUtils/oldUtils.pyc/usr/lib/python2.6/site-packages/rpmUtils/oldUtils.pyo/usr/lib/python2.6/site-packages/rpmUtils/transaction.py/usr/lib/python2.6/site-packages/rpmUtils/transaction.pyc/usr/lib/python2.6/site-packages/rpmUtils/transaction.pyo---More---
f、查詢已安裝軟體包資訊: rpm -qi <軟體名>
[root@asdf /]# rpm -qi yum #qi, query infomationName : yum Relocations: (not relocatable)Version : 3.2.29 Vendor: Red Hat, Inc.Release : 17.el6 Build Date: Thu 28 Apr 2011 10:43:39 AM PDTInstall Date: Mon 02 Jul 2012 02:58:17 AM PDT Build Host: x86-005.build.bos.redhat.comGroup : System Environment/Base Source RPM: yum-3.2.29-17.el6.src.rpmSize : 4640583 License: GPLv2+Signature : RSA/8, Fri 29 Apr 2011 06:41:01 AM PDT, Key ID 199e2f91fd431d51Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>URL : http://yum.baseurl.org/Summary : RPM package installer/updater/managerDescription :Yum is a utility that can check for and automatically download andinstall updated RPM packages. Dependencies are obtained and downloadedautomatically, prompting the user for permission as necessary.[root@asdf /]#
g、查詢已安裝軟體的文檔位置資訊:rpm -qd <軟體名>
[root@asdf /]# rpm -qd yum #qd, query document/usr/share/doc/yum-3.2.29/AUTHORS/usr/share/doc/yum-3.2.29/COPYING/usr/share/doc/yum-3.2.29/ChangeLog/usr/share/doc/yum-3.2.29/INSTALL/usr/share/doc/yum-3.2.29/README/usr/share/doc/yum-3.2.29/TODO/usr/share/man/man5/yum.conf.5.gz/usr/share/man/man8/yum-shell.8.gz/usr/share/man/man8/yum.8.gz[root@asdf /]#
h、查詢已安裝軟體的依賴關係: rpm -qR <軟體名>
[root@asdf /]# rpm -qR yum # qR ,query relation/usr/bin/python config(yum) = 3.2.29-17.el6pygpgme python >= 2.4python(abi) = 2.6python-iniparse python-sqlite python-urlgrabber >= 3.9.0-8rpm >= 0:4.4.2rpm-python rpmlib(CompressedFileNames) <= 3.0.4-1rpmlib(FileDigests) <= 4.6.0-1rpmlib(PartialHardlinkSets) <= 4.0.4-1rpmlib(PayloadFilesHavePrefix) <= 4.0-1rpmlib(VersionedDependencies) <= 3.0.3-1yum-metadata-parser >= 1.1.0rpmlib(PayloadIsXz) <= 5.2-1
I、如果想查詢未安裝軟體包的相關資訊,可以在以上a-h的命令參數中加入一個小寫 p 即可查詢相關的參數,比如h中的,查詢依賴關係:
[root@asdf Packages]# rpm -qpc vsftpd-2.2.2-6.el6_0.1.i686.rpm warning: vsftpd-2.2.2-6.el6_0.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY/etc/logrotate.d/vsftpd/etc/pam.d/vsftpd/etc/vsftpd/ftpusers/etc/vsftpd/user_list/etc/vsftpd/vsftpd.conf[root@asdf Packages]#
J、對軟體的更新操作有兩種方式——rpm -Uvh 和-Fvh,兩者區別在於前者在對沒有安裝的軟體將自動安裝,而後者將不安裝處理;如果降級,可以採用以下命令
rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降級為舊版
轉載請註明出處:http://www.cnblogs.com/picaso