1、原始碼包的安裝
gzip -d apache_1.3.20.tar.gz (解壓)
tar xvf apache_1.3.20.tar (解包)
cd apache_1.3.20
./configure (配置) ----./configure --help(查看configure選項)
make (編譯)
make install (安裝)
make clean (卸載)
註:典型的原始碼包可以這樣安裝,但不都是這樣,如webmin
要執行其目錄下./setup.sh進入互動式配置安裝
卸載用uninstall程式
具體如果不清楚看要安裝的包下的README檔案
2、RPM包的安裝
RPM軟體包的一個例子:
foo-1.0-1.i386.rpm
其中包括軟體包的名稱(foo),版本號碼(1.0),發行號(1),和硬體平台(i386)。
(1)安裝
# rpm -ivh foo-1.0-1.i386.rpm
foo
#######################
A. 軟體包已被安裝
# rpm -ivh foo-1.0-1.i386.rpm
foo package foo-1.0-1 is already installed
error: foo-1.0-1.i386.rpm cannot be installed
如果你仍舊要安裝該軟體包,你可以在命令列上使用--replacepkgs 選項,這將忽略該錯誤資訊。
B. 檔案衝突
如果要安裝的軟體包中有一個檔案已在安裝其它軟體包時安裝,會出現以下錯誤資訊:
# rpm -ivh foo-1.0-1.i386.rpm
foo /usr/bin/foo conflicts with file from bar-1.0-1
error: foo-1.0-1.i386.rpm cannot be installed
要想讓RPM 忽略該錯誤資訊, 請使用--replacefiles 命令列選項
C.未解決依賴關係
RPM軟體包可能依賴於其它軟體包, 在安裝了特定的軟體包之後才能安裝該軟體包。
# rpm -ivh bar-1.0-1.i386.rpm
failed dependencies:
foo is needed by bar-1.0-1
你必須安裝完所依賴的軟體包,才能解決這個問題。如果想強制安裝 (但是,這樣安裝後的軟體包未必能正常運行),請使用-nodeps 命令列選項。
(2) 卸載
# rpm -e foo
注意:這裡使用軟體包的名字foo,而不是軟體包檔案的名字“foo-1.0-1.i386.rpm”.
如果其它軟體包依賴於你要卸載的軟體包,卸載時則會產生錯誤資訊。如:
# rpm -e foo
removing these packages would break dependencies:
foo is needed by bar-1.0-1
要想RPM忽略該錯誤資訊繼續卸載的話 (但是,依賴於該軟體包的程式可能無法運行), 請使用-nodeps 命令列選項。
(3)升級
# rpm -Uvh foo-2.0-1.i386.rpm
foo
###############################
當使用舊版本的軟體包來升級新版本的軟體時,會產生以下錯誤資訊:
# rpm -Uvh foo-1.0-1.i386.rpm
foo package foo-2.0-1 (which is newer) is already installed
error: foo-1.0-1.i386.rpm cannot be installed
要使RPM 堅持這樣“升級”,可使用--oldpackage 命令列參數。
(4)查詢
# rpm -q foo
foo-2.0-1
軟體包指定選項:
-a 查詢所有已安裝的軟體包.
-f <file> 將查詢包含有檔案<file>的軟體包
-p <packagefile>
查詢軟體包檔案名稱為<packagefile>的軟體包
資訊選擇選項:
-i 顯示軟體包資訊,如描述, 發行號, 尺寸, 構建日期, 安裝日期, 平台, 以及其它各類資訊。
-l 顯示軟體包中的檔案清單。
-s 顯示軟體包中所有檔案的狀態。
-d 顯示被標註為文檔的檔案清單(man 手冊, info 手冊, README's, etc).
-c 顯示被標註為設定檔的檔案清單。這些是要在安裝完畢以後加以定製的檔案(sendmail.cf, passwd, inittab, etc)。
對於那些要顯示檔案清單的檔案,可以增加-v 命令列選項以獲得如同 ls -l 格式的輸出。
(5)驗證
驗證軟體包是通過比較軟體包中安裝的檔案和軟體包中的原始檔案資訊來進行的。除了其它一些東西,驗證主要是比較檔案的尺寸, MD5 校正碼, 檔案許可權, 類型, 屬主和使用者組等。
rpm -V命令用來驗證一個軟體包,如
rpm -V foo
驗證封裝含特定檔案的軟體包:
rpm -Vf /bin/vi
驗證所有已安裝的軟體包:
rpm -Va
根據一個RPM來驗證某個軟體包:
rpm -Vp foo-1.0-1.i386.rpm
如果你擔心RPM資料庫已被破壞,就可以使用這種方式。如果一切校正均正常將不會產生任何輸出。如果有不一致的地方,就會顯示出來。
輸出格式是8位長字串,c 用以指設定檔,接著是檔案名稱. 8位字元的每一個用以表示檔案與RPM資料庫中一種屬性的比較結果。“.” (點)表示測試通過。
以下字元表示某種測試的失敗:
5 MD5 校正碼
S 檔案尺寸
L 符號串連
T 檔案修改日期
D 裝置
U 使用者
G 使用者組
M 模式e (包括許可權和檔案類型)
如果有資訊輸出,應當認真加以考慮,是刪除,重新安裝,還是修正出現的問題。
(6)RPM應用的幾個例子
A. 如你誤刪了一些檔案, 但是不能肯定到底刪除了哪些檔案。如果你想驗證一下整個系統看看都丟失了哪些檔案的話,可以鍵入:
rpm –Va
B.若是一些檔案丟失了或已被損壞, 就可以重新安裝或先卸載再安裝該軟體包。如果碰到了一個自己不認識的檔案,要想查處它屬於哪個軟體包,可以輸入以下命令:
rpm -qf /usr/X11R6/bin/xjewel
而輸出的結果會是:
xjewel-1.6-1
C. 如果發生綜合以上兩個例子的情況,如文/usr/bin/paste出了問題。你想驗證一下擁有該檔案的軟體包,可又不知道軟體包的名字,這時可以簡單的鍵入:
rpm -Vf /usr/bin/paste
這樣相應的軟體包就會被驗證。
D. 如果你想瞭解一個正在使用的程式的詳細資料,可以鍵入如下命令來獲得擁有該程式的軟體包中的文檔資訊:
rpm -qdf /usr/bin/ispell
輸出結果為:
/usr/man/man4/ispell.4
/usr/man/man4/english.4
…………………………………………………………
E. 如果你發現了一個新的koules RPM,但是不知道它是什麼東西,可以鍵入如下命令:
rpm -qip koules-1.2-2.i386.rpm
F. 現在你想瞭解koules RPM 所安裝的檔案。可以鍵入:
rpm -qlp koules-1.2-2.i386.rpm
圖形管理工具:kpackage
3、shell或java指令碼安裝
基於圖形介面的安裝,一般基於SHELL或Java語言編寫,主要應用於一些辦公軟體和製圖軟體及安裝程式,如staroffice、oracle的安裝,很容易,和windows一樣
(完)