來源:http://blog.csdn.net/namesliu/article/details/6004388
以CentOS5.5 中已經集成安裝了 Apache、MySQL、PHP作為樣例,我們來探索一下其安裝路徑等信息,以利於我們的管理和使用。如果要重新安裝這些軟件的最新版本,也需要首先進入原先的路徑,備份數據和有關配置,以備將來之用。
因為 CentOS5.5 是紅帽子的產品,紅帽子應該使用自己發明的 rpm(Redhat Package Manager)包管理方式來管理軟件包,所以使用 rpm 的相關命令應該能了解到 Apache、MySQL、PHP 軟件包的安裝情況,包括安裝路徑。rpm 在安裝軟件時,在拷貝文件到相關路徑後,同時把這些信息寫到了一個特定格式的數據庫(也可以理解為日志)中,所以查詢起來是非常快的。
1、我的系統中安裝了那些rpm軟件包
rpm -qa 將列出所有安裝過的包。
如果要查找所有安裝過的包含某個字符串“sql”的軟件包,命令如下:
rpm -qa |grep sql
2、如何獲得某個軟件包的文件全名
rpm -q mysql 可以獲得系統中安裝的mysql軟件包全名,從中可以獲得當前軟件包的版本等信息。這個例子中可以得到信息 mysql-5.0.77-4.el5_5.3。
3、一個rpm包中的文件安裝到哪裡去了?
rpm -ql 包名
注意這裡的包名是不包括.rpm 後綴的軟件包的名稱,也就是說只能用mysql或者mysql-5.0.77-4.el5_5.3,而不是mysql-5.0.77-4.el5_5.3.rpm。
如果只是想知道可執行程序放到那裡去了,也可以用which命令,比如:
[root@localhost ~]# which mysql
/usr/bin/mysql
也可以用 whereis 命令:
[root@localhost ~]# whereis mysql
mysql: /usr/bin/mysql
/usr/lib/mysql
/usr/share/mysql
/usr/share/man/man1/mysql.1.gz
4、一個rpm包中包含那些文件
一個沒有安裝過的軟件包,使用命令 rpm -qlp 包名.rpm。
一個已經安裝過的軟件包,還可以使用命令 rpm -ql 包名。
5、如何獲取一個軟件包的版本,用途等相關信息
一個沒有安裝過的軟件包,使用命令 rpm -qip 包名.rpm。
一個已經安裝過的軟件包,還可以使用命令 rpm -qi 包名。
6、某個程序是哪個軟件包安裝的,或者哪個軟件包包含這個程序
rpm -qf `which 程序名` #返回軟件包的全名
rpm -qif `which 程序名` #返回軟件包的有關信息
rpm -qlf `which 程序名` #返回軟件包的文件列表
注意,這裡不是引號,而是`,就是鍵盤左上角的那個鍵。也可以使用rpm -qilf,同時輸出軟件包信息和文件列表。
7、某個文件是哪個軟件包安裝的,或者哪個軟件包包含這個文件
注意,前一個問題中的方法,只適用於可執行的程序,而下面的方法,不僅可以用於可執行程序,也可以用於普通的任何文件。前提是知道這個文件名。
首先獲得這個程序的完整路徑,可以用whereis或者which命令,然後使用 rpm -qf 命令,例如:
[root@localhost home]# whereis webmin
webmin: /etc/webmin /usr/libexec/webmin
[root@localhost home]# rpm -qf /usr/libexec/webmin
webmin-1.510-1
檢查 AMP 軟件的安裝信息:
1,Apache
[root@localhost home]# rpm -qi httpd
Name : httpd Relocations: (not relocatable)
Version : 2.2.3 Vendor: CentOS
Release : 43.el5.centos Build Date: 2010年04月05日 星期一 05時24分03秒
Install Date: 2010年08月10日 星期二 07時38分39秒 Build Host: builder16.centos.org
Group : System Environment/Daemons Source RPM: httpd-2.2.3-43.el5.centos.src.rpm
Size : 3274522 License: Apache Software License
Signature : DSA/SHA1, 2010年04月27日 星期二 03時59分43秒, Key ID a8a447dce8562897
URL : ht
[root@localhost home]# rpm -ql httpd>httpd-ql.txt
[參見生成的 httpd-ql.txt 文件]
2,MySQL
[root@localhost home]# rpm -qi mysql
Name : mysql Relocations: (not relocatable)
Version : 5.0.77 Vendor: CentOS
Release : 4.el5_5.3 Build Date: 2010年05月28日 星期五 09時11分01秒
Install Date: 2010年08月10日 星期二 01時15分50秒 Build Host: builder10.centos.org
Group : Applications/Databases Source RPM: mysql-5.0.77-4.el5_5.3.src.rpm
Size : 8243103 License: GPLv2 with exceptions
Signature : DSA/SHA1, 2010年05月28日 星期五 15時47分10秒, Key ID a8a447dce8562897
URL : http://www.mysql.com
Summary : MySQL 客戶端程序和共享庫。
Description :
MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
client/server implementation consisting of a server daemon (mysqld)
and many different client programs and libraries. The base package
contains the MySQK
[root@localhost home]# rpm -ql mysql>mysql-ql.txt
[參見生成的 mysql-ql.txt 文件]
3,PHP
[root@localhost home]# rpm -qi php
Name : php Relocations: (not relocatable)
Version : 5.1.6 Vendor: CentOS
Release : 27.el5 Build Date: 2010年03月31日 星期三 14時53分10秒
Install Date: 2010年08月10日 星期二 07時39分19秒 Build Host: builder17.centos.org
Group : Development/Languages Source RPM: php-5.1.6-27.el5.src.rpm
Size : 6175386 License: The PHP License v3.01
Signature : DSA/SHA1, 2010年04月27日 星期二 04時00分31秒, Key ID a8a447dce8562897
URL : http://www.php.net/
Summary : PHP 嵌入在 HTML 中的腳本語言。(PHP:超級文本預處理器)
Description :
PHP is an HTML-embedded scripting language. PHP attempts to make it
easy for developers to write dynamically generated webpages. PHP also
offers built-in database integration for several commercial and
non-commercial database management systems, so writing a
database-enabled webpage with PHP is fairly simple. The most common
use of PHP coding is probably as a replacement for CGI scripts.
The php package contains the module which adds support for the PHP
language to Apache HTTP Server.
[root@localhost home]# rpm -ql php>php-ql.txt
[參見生成的 php-ql.txt 文件]