詳細(xì)介紹Linux文本安裝軟件
文本環(huán)境下軟件安裝對(duì)于初學(xué)Linux的人來說可能會(huì)有些恐懼,其實(shí)習(xí)慣了Linux字符模式,你很快也就會(huì)適應(yīng)這種安裝方式,不同的發(fā)行版本也會(huì)有不同的安裝方法。
一、安裝簡便的RPM包
RPM是RedHat Package Manager的縮寫,它只能使用在安裝了RPM軟件的系統(tǒng)中,RedHat Linux和Turbo Linux中已經(jīng)使用了它。這種結(jié)構(gòu)的包使用起來還是很方便的,只要記住幾條簡單的命令和參數(shù)就可以方便地使用:
#〉rpm [options] filename.rpm
其中常用的options包括:
-i: 安裝軟件
-e: 卸載軟件
-q:查看軟件安裝的信息和狀態(tài)
-U: 升級(jí)現(xiàn)有軟件
例如安裝軟件時(shí),可以使用如下命令:“rpm -i filename.rpm”,軟件安裝在什么地方、是怎么安裝的都不需要用戶操心,RPM可以幫助用戶管理。由于RPM使用方便,很多軟件都有RPM版本。如果想使用RPM形式的軟件就要首先下載一個(gè)RPM管理軟件。該軟件有RPM包和.tar.gz包兩種形式,如果你的系統(tǒng)中已經(jīng)有了RPM管理軟件,你可以下載RPM形式的包來升級(jí)現(xiàn)有軟件,否則就必須了解.tar.gz包的安裝方法。
二、安裝需要編譯的.tar.gz包
由于RPM包使用的局限性(必須安裝RPM),目前更多的軟件使用的是源代碼形式的.tar.gz包。這種軟件的安裝通常要經(jīng)過解壓縮、軟件配置、軟件編譯及安裝的過程。
解壓縮通常有兩種命令方法:一種是“gunzip filename-VERSION-OS.tar.gz | tar xvf -”,它實(shí)質(zhì)是兩條命令“gunzip filename-VERSION-OS.tar.gz”和“tar xvf filename-VERSION-OS.tar”;另一種是“tar xzvf filename-VERSION-OS.tar.gz”。一般來說在軟件解壓縮后會(huì)生成一個(gè)目錄filename-VERSION-OS。
軟件的配置、編譯、安裝是最讓初學(xué)者望而生畏的事了,但筆者認(rèn)為掌握一些規(guī)律還是不難的。一般來說,在解壓縮生成的目錄中都會(huì)有名為Readme、 Rnstall或Readme.install之類的文件。這些文件通常會(huì)對(duì)軟件的功能、特性、版權(quán)許可、安裝以及相關(guān)知識(shí)加以介紹,并且會(huì)提到關(guān)于安裝的方法和步驟。舉例來說:在apache_1.3.6的install文件中說明了如下內(nèi)容(此處只列出總的條目,具體內(nèi)容省略):
Installing the Apache 1.3 HTTP server with APACI
==============================
1.Overview for the impatient(概括說明配置的全過程)
$./configure--prefix=PREFIX
$make
$make install
$PREFIX/bin/apachectl start
2.Requirements(需要的條件)
3.Configuring the source tree(配置的參數(shù)說明)
4.Building the package(編譯軟件的方法)
5.Installing the package(安裝軟件的方法)
6.Testing the package(軟件測(cè)試)
理解并能熟練使用這些說明文件后,就可以利用一些規(guī)律來安裝大多數(shù)的軟件。對(duì)于那些沒有說明文件的軟件(當(dāng)然這種情況比較少見),這些規(guī)律通常也是適用的。一般來說,與安裝軟件有直接關(guān)系的文件只有兩個(gè):configure 、Makefile。
其中,configure文件具有可執(zhí)行的屬性,是用來配置軟件的,它的參數(shù)比較多,用法也比較靈活。當(dāng)然,不同的軟件參數(shù)也不相同,這時(shí)候就需要借助它的help參數(shù),運(yùn)行下面的命令就會(huì)讓你感到豁然開朗:
- #〉 ./configure -help
- Usage: configure [options]
- Options: [defaults in brackets after descriptions]
- General options:
- --quiet, --silent do not print messages
- --verbose,-v print even more messages
- --sha [=DIR] switch to a shadow tree (under DIR) for building
- Stand-alone options:
- --help,-h print this message
- --show-layout print installation path layout (check and debug)
- [[The No.1 Picture.]]
- 圖1 Gnome運(yùn)行界面
- Installation layout options:
- --with-layout=[F:]ID use installation path layout ID (from file F)
- --target=TARGET install name-associated files using basename TARGET
- ……
接下來,就可以運(yùn)行“./configure [options]”來配置該軟件。注意,命令行中的“./”非常重要,它告訴系統(tǒng)要運(yùn)行的命令就在當(dāng)前目錄下(否則系統(tǒng)就會(huì)到$path變量指定的路徑下去執(zhí)行命令)。執(zhí)行命令后可以生成Makefile文件或者修改已有的文件配置。
Makefile文件通常是用來編譯和安裝軟件的。運(yùn)行make命令時(shí)系統(tǒng)會(huì)自動(dòng)根據(jù)Makefile文件中的設(shè)置對(duì)軟件進(jìn)行編譯和安裝。make命令有時(shí)還可以帶一些參數(shù),如:all、build、config、install等。具體要帶哪個(gè)參數(shù)可以參看Makefile文件。在Linux中絕大部分文件是文本文件,Makefile就是一個(gè)shell程序(Linux中shell程序與DOS中的批處理文件有很多相似之處,當(dāng)然功能要強(qiáng)得多),很容易讀懂,尤其是編譯時(shí)可帶的參數(shù)都會(huì)明確寫出,例如:
- ##========================
- ## Targets
- ##========================
- # default target
- all: build
- ##------------------------
- ## Build Target
- ##------------------------
- # build the package
- build:
- ……
- # the non-verbose variant for package maintainers
- build-quiet:
- @$(MAKE) -f $(TOP)/$(MKF) $(MFLAGS) $(MFWD) QUIET=1 build
- # build the additional support stuff
- build-support:
- ……
- ##------------------------
- ## Installation Targets
- ## -----------------------
- # the install target for installing the complete Apache
- # package. This is implemented by running subtargets for the
- # separate parts of the installation process.
- install:
- ……
- # the non-verbose variant for package maintainers
- install-quiet:
- @$(MAKE) -f $(TOP)/$(MKF) $(MFLAGS) $(MFWD) QUIET=1 install
- # create the installation tree
- install-mktree:
- ……
上面這段代碼是apache_1.3.6的Makefile文件的一部分,從這段程序可以看出all參數(shù)表示完全編譯(缺省參數(shù))。此外,編譯時(shí)還可以帶build、build-quiet、build-surpport等參數(shù);安裝時(shí)可以帶install、install-quiet、 install-surpport等參數(shù)。它們的功能分別在“#”表示的注釋中進(jìn)行了說明。需要額外說明的是,有些軟件(例如Linux的內(nèi)核升級(jí)程序)不用configure命令來配置軟件,而是用make config來完成這項(xiàng)工作,所以,具體使用哪種方法要具體問題具體分析。
◆幾點(diǎn)注意事項(xiàng)
一、安裝方法的適用范圍
上面提到的軟件安裝方法并不是在任何版本的Linux上都適用。筆者認(rèn)為,.tar.gz包的安裝方法適用于各種版本的Linux,而RPM包則有一定的局限性。
目前常見的各種Linux發(fā)行版本中,如:Redhat 6.0、Turbo Linux 3.0.2、Xteam 3.0等都支持RPM包。如果你想知道你使用的Linux是否支持RPM包,只要運(yùn)行一下“rpm --help”命令就知道了。不過,對(duì)于不支持RPM包的版本,可以安裝一個(gè)RPM管理軟件。
二、容易出現(xiàn)的問題
在安裝軟件時(shí),一定要保證你對(duì)用到的軟件包有訪問權(quán)限。當(dāng)然如果你是root就沒問題了。但如果你真的是root你就需要注意另一個(gè)問題,由于 root的權(quán)限過高,所以在安裝軟件時(shí),要防止對(duì)系統(tǒng)其它軟件造成誤操作(在使用rm 等“危險(xiǎn)”命令時(shí),尤其要注意)。
另一個(gè)容易出現(xiàn)的問題是,在卸載RPM包的軟件時(shí)要慎重,因?yàn)楹芏嘬浖g是相互關(guān)聯(lián)的,你卸載的軟件很可能是其它軟件要用到的,要防止由于卸載了一個(gè)軟件而影響另一個(gè)軟件的正常使用。所以筆者建議,初學(xué)者對(duì)于與系統(tǒng)運(yùn)行有關(guān)的軟件盡量不要?jiǎng)h除(對(duì)于游戲、應(yīng)用軟件一類的軟件不必有太多顧慮)。等你成為一名經(jīng)驗(yàn)豐富的系統(tǒng)管理員時(shí),你就能靈活地處理這些問題了。
【編輯推薦】
- 怎樣處理Linux死機(jī)
- 詳細(xì)介紹查看Linux硬件信息命令
- 深入講述Linux下使用XFS文件系統(tǒng)
- 簡單介紹Linux判斷符的使用
- 修改Linux默認(rèn)啟動(dòng)系統(tǒng)的方法之一


















