第3章:Red Hat Linux 7.1使用基礎
3.1 登錄和退出系統
1. 啟動系統
通常LILO是安裝在MBR上的,計算機啟動後,MBR上的程序被執行,將出現一個不是很漂亮的圖形:左邊是一個小紅帽圖像,右邊列出了可以啟動的操作系統,你可以使用鍵盤箭頭切換。剛安裝好後默認值是Linux,也就是你不選擇,一會兒將自己啟動Linux。
如果你想默認的選擇是Windows的話,那你可以在啟動Linux後,用vi修改/etc目錄下的lilo.conf文件,加上default=windows,然後再執行/sbin/lilo重新生成LILO。
2. 用戶登錄
Linux是一個真正意義上的多用戶操作系統,用戶要使用該系統,首先必須登錄,使用完系統後,必須退出。用戶登錄系統時,為了使系統能夠識別該用戶,必須輸入用戶名和密碼,經系統驗證無誤後才可以登錄系統使用。
Linux下有兩種用戶:
1) root用戶:超級權限者,系統的擁有者,在Linux系統中有且只有一個root用戶,它可以在系統中任何操作。在系統安裝時所設定的密碼就是root用戶的密碼。
2) 普通用戶:Linux系統可以創建許多普通用戶,並為其指定相應的權限,使其有限地使用Linux系統。
關於用戶的管理,我們將在後面詳細說明。
用戶登錄分兩步進行:
1) 輸入用戶的登錄名,系統根據該登錄名來識別用戶;
2) 輸入用戶的口令,該口令是用戶自己選擇的一個字符串,對其他用戶完全保密,是登錄系統時識別用戶的唯一根據,因此每一個用戶都應該保護好自己的口令!
系統在建立之初,僅有root用戶,其它的用戶則是由root用戶創建的。由於root用戶的權限太大了,所以如果root用戶誤操作將可能造成很大的損失。所以建議系統管理員為自已新建一個用戶,只有需要做系統維護、管理任務時才以root用戶登錄。
下面就是一個登錄實例:(其中黑體字為輸入)
Red Hat Linux release 7.1 (Seawolf)
Kernerl 2.4.2-2 on an i686
Home login:root
Password:
在上面的例子中,我們發現在Password後面是空的,其實並不是不輸入密碼,而是在輸入時,Linux系統不會把它顯示出來,這樣用來保護密碼!
如果登錄成功的話,我們將獲得Shell(Shell是用來與用戶交互的程序,它就象DOS中的COMMAND.COM,不過在Linux下可以有多種Shell供選擇,如bash、csh、ksh等)提示符,如果以root用戶登錄的話,那麼獲得的提示符是“#”,否則將是“$”。
提示:如果當時在安裝時設置為一啟動就進入圖形界面的話,那系統啟動後,用戶登錄界面將是圖形化的,有點象Windows,而且當你輸入正確的用戶名與密碼,就會直接進入X Window。這個設置是可以修改的:
在/etc目錄下有一個inittab文件,其中有一行配置:
id:3:default
其中,數字3就是代表一啟動進入字符終端,如果改為5則代表一啟動進入X Window。
3. 修改口令
為了更好地保護用戶帳號的安全,Linux允許用戶在登錄之後隨時使用passwd命令修改自己的口令。修改口令需要經歷:
1) 輸入原來的口令,如果口令輸錯,將中止程序,無法修改口令;
2) 輸入新的口令;
3) 提示重復一遍新的口令,如果兩次輸入的口令相吻合,則口令修改成功。
需要注意的是,Red Hat Linux 7.1為了更好地保護口令,如果你輸入的新口令過於簡單,它將會拒絕修改。下面就是一個修改口令的實例:(其中黑體字為輸入)
$ passwd
Changing password for user1
(current) UNIX password: ß 在些輸入原來的密碼
New UNIX password: ß 輸入新的密碼
Retype new UNIX password: ß 再輸入一遍新的密碼
Passwd:all authentication tokens updated successfully ß 修改成功!
注意,在這裡輸入的口令同樣不會顯示出來。
而如果是root用戶修改口令,則不需要輸入老密碼!也就是說,它可以修改任何用戶的口令。
4. 退出登錄
不論你是root用戶還是普通用戶,只需簡單地執行exit命令就可以退出登錄。
5. 關閉機器
在Linux系統中,普通用戶是無權關閉系統的!只有root用戶才能夠關閉它。當然如果你是按關機按鈕則別當別論。我們可以通過以下幾種方法實現:
1) 按下CTRL+ALT+DEL組合鍵,這樣系統將重新啟動!
2) 執行reboot命令,這樣系統也將重新啟動!
3) 執行shutdown -h now命令,這樣系統將關閉計算機!
4) 執行halt命令,可以關閉計算機。
注意千萬不要隨意采用硬關機、重啟動鍵等方式關閉系統,那樣會導致Linux文件系統遭受破壞!
6. 虛擬控制台
Linux是真正的多用戶操作系統,可以同時接受多個用戶的遠程和本地登錄,也允許同一個用戶多次登錄。Linux為本地用戶(也就是做在計算機面前的用戶)提供了虛擬控制台訪問方式,允許用戶在同一時間從不同的控制台進行多次登錄。
虛擬控制台的選擇可以通過按ALT鍵加上F1-F6六個功能鍵來實現。例如,用戶登錄後,按一下ALT+F2組合鍵,用戶又可以看到“login:”提示符,這其實就是第二個虛擬控制台,而這時再按下ALT+F1組合鍵,用戶則又可以回到第一個虛擬控制台。
大家可以通過使用虛擬控制台來感受Linux系統多用戶的特性。例如用戶可以在某一虛擬控制台上進行的工作尚未結束時,就可以切換到另一個虛擬控制台上開始另一項工作。例如在開發軟件時,可以在一個控制台上編輯程序,在另一個控制台上進行編譯,在第三個控制台上查閱信息。
3.2 文件與目錄操作
與其它操作系統一樣,在Linux系統下用戶的數據和程序也是以文件的形式保存的。所以在使用Linux的過程中,是經常要對文件與目錄進行操作的。現在我們就以一個Window用戶的立場來學習一下Linux下的文件與目錄操作方法。
1. 文件名與文件類型
文件名是一個文件的標識。從這個角度來說,文件名的規則與Windows 9x下的是基本上相同的。它同樣是由字母、數字、下劃線、圓點組成,最大的長度是255個字符。
與Windows 9x一樣,Linux系統中也有普通文件和目錄文件,不過目錄文件在Window中被簡稱為目錄就是了。而在Linux系統中有一種特殊的文件,那就是設備文件。在Linux系統中,把每一個I/O設置都映射成為一個文件,可以象普通文件一樣處理,這就使得文件與設備的操作盡可能統一。從用戶的用戶來說,對I/O設備的使用和一般文件的使用幾乎一樣,這樣就可以不必了解I/O設備的細節。
2. 目錄結構
與Windows下一樣,在Linux中也是通過目錄來組織文件的。但不同的是,在Linux下只有一個根目錄,而不象Windows那樣一個分區一個根目錄。如果有多個分區的話,就需要將其它分區mount到根目錄上來用。
大家回憶一下當時為Linux分區時,有一個選項要填,那就是Mount Point,我們將其中一個寫成了“/”,也就是根目錄(這點與Windows相反,一個是“\\”,一個是“/”,真是天生冤家)。其它的則可能是/home、/usr。
安裝完系統後,你會發現/home、/usr就是根目錄下面的home、usr目錄!對了,整個分區就用於該目錄了。
安裝完Linux後,有許許多多的目錄,下面我們就說明一些重要的目錄:
/bin:存放著一百多個Linux下常用的命令、工具
/dev:存放著Linux下所有的設備文件!
/home:用戶主目錄,每建一個用戶,就會在這裡新建一個與用戶同名的目錄,給該用戶一個自己的空間
/lost+found:顧名思義,一些丟失的文件可能可以在這裡找到
/mnt:外部設備的掛接點,通常用cdrom與floppy兩個子目錄!它的存在簡化了光盤與軟盤的使用。你只需在塞入光盤後,運行:mount /mnt/cdrom,就可以將光盤上的內容Mount到/mnt/cdrom上,你就可以訪問了。不過你使用完成後,應該離開該目錄,並執行umount /mnt/cdrom。同樣的,軟盤就是mount /mnt/floppy和umount /mnt/floppy了。
/proc:這其實是一個假的目錄,通過這裡你可以訪問到內存裡的內容。
/sbin:這裡存放著系統級的命令與工具
/usr:通常用來安裝各種軟件的地方
/usr/X11R6 X Window目錄
/usr/bin與/usr/sbin 一些後安裝的命令與工具
/usr/include、/usr/lib及/usr/share 則是存放一些共享鏈接庫
/usr/local 常用來安裝新軟件
/usr/src Linux源程序
/boot:Linux就是從這裡啟動的
/etc:這裡存放在Linux大部分的配置文件
/lib:靜態鏈接庫
/root:root用戶的主目錄,這就是特權之一!
/var:通常用來存放一些變化中的東西!
/var/log:存放系統日志
/var/spool:存放一些郵件、新聞、打印隊列等
另外,要說明的是,在Linux下“當前目錄”、“路徑”等概念與Windows下是一樣的。
3. 顯示文件內容
使用過DOS命令的人都應該知道,我們可以使用type命令來查看一個文件的內容。在Linux下有五個相關的命令,功能各有千秋,不過它們都象type命令一樣,只能用來查看文本文件。
1) cat命令
cat命令是最象type命令的,使用的方法很簡單:“cat 文件名”。不過比type命令更強大的是,它可以同時查看多個文件:“cat 文件名一 文件名二”。
2) more命令
如果文本文件比較長,一屏無法顯示完,那麼使用cat命令就可能無法看清。這裡我們可以簡單地使用more來代替cat命令即可。其效果與type 文件名/p類似。使用more命令將一次顯示一屏文本,顯示滿後,停下來,並提示出已顯示全部內容的百分比,按空格鍵就可以看到下一屏。
3) less命令
less命令的功能幾乎和more命令一樣,也是按頁顯示文件,不同之處在於less命令在顯示文件時允許用戶既可以向前又可以向後翻閱文件。
Ø 向前翻:按b鍵;
Ø 向後翻:按p鍵;
Ø 指定位置:輸入百分比
Ø 退出:q
我經常使用more和less,幾乎不使用cat查看文件。
4) head命令
通過head命令可以僅查看某文件的前幾行,格式為:
head 行數 文件名
如果未指定行數,則使用默認值10。
5) tail命令
與head命令相對應的,我們可以使用tail命令來查看文件尾部的內容。通常用來實時監測某個文件是否被修改,通常用來觀察日志。如:
tail -f maillog
4. 編輯文件
在Red Hat Linux 7中有許多文字編輯工具,其中最常用的應該是vi,這是一個廣泛應用於所有UNIX系統的編輯器。它的使用有些特別:
首先,可以使用命令“vi 文件名”打開一個文件。
剛啟動的時候,vi處於命令狀態,不能夠輸入任何字符。在這個狀態下,可以使用方向鍵進行移動,而需要輸入內容時,你需要輸入“i”或“a”命令進入編輯狀態。編輯完成後,你需要按下“ESC”鍵回到命令狀態。
在命令狀態下,你可以輸入“:q!”不存盤退出,輸入“:wq”存盤退出。
5. 文件的復制、刪除與移動
大家都早已熟知在DOS下我們可以使用copy、del、move命令來實現文件的復制、刪除與移動。下面我們說說如何在Linux系統中做以上操作。
1) cp命令:文件/目錄復制命令
它的語法格式為:cp [選項] 源文件或目錄 目標文件或目錄
常用的選項有:
Ø a 該選項常在復制目錄時使用,它保留鏈接、文件屬性,並遞歸地復制目錄,就象DOS中的xcopy /s一樣
Ø f 如果目標文件或目錄已存在,就覆蓋它,並且不做提示
Ø i 與f選項正好相反,它在覆蓋時,會讓用戶回答“Y”來確認
Ø p 使用該選項,復制文件時將保留修改時間和訪問權限
Ø r 若給出的源是一個目錄,那麼cp將遞歸復制該目錄下所有的子目錄和文件,不過這要求目標也是一個目錄名
另外,大家要注意的是,如果源是文件名,目標是目錄名的話,那麼使用cp命令可以指定多個源文件名。如:
$ cp a.txt b.txt /home/user1
該命令將把a.txt和b.txt文件復制到/home/usr1目錄中。
2) rm命令:文件/目錄刪除命令
它的語法格式為:rm [選項] 文件 …
常用的選項有:
Ø f 在刪除過程中不給任何指示,直接刪除
Ø r 指示rm將參數中列出的全部目錄和子目錄都遞歸地刪除
Ø i 交互式的刪除,每個文件在刪除時都給出提示
使用rm命令時一定要小心,特別是以root用戶登錄時,我就看到過一個朋友在使用rm命令刪除/home/tmp目錄時將命令“rm -rf /home/tmp”誤輸成了 “rm -rf / home/tmp”,結果等他走回電腦面前,整個系統都被刪除了!
3) mv命令:文件/目錄移動命令
它的語法格式為:mv [選項] 源文件或目錄 目標文件或目錄
常用的選項有:
Ø f 如果操作要覆蓋某已有的目標文件時不給任何指示
Ø i 交互式的操作,如果操作要覆蓋某已有的目標文件時會詢問用戶是否覆蓋
mv命令的執行效果與參數類型的不同而不同!
第一參數(源) 第二個參數(目標) 結果
文件名 文件名 將源文件名改為目標文件名
文件名 目錄名 將文件移動到目標目錄
目錄名 目錄名 目標目錄已存在:源目錄移動到目標目錄
目標目錄不存在:改名
目錄名 文件名 出錯
6. 目錄相關操作
1) 創建新目錄:mkdir,它的使用與DOS下的md相同:mkdir 目錄名;
2) 刪除空目錄:rmdir,它的使用與DOS下的rd相同:rmdir 目錄名;
3) 改變目錄:cd,它的使用與DOS下的cd命令基本相同,唯一一個不同的是,不管目錄名是什麼,cd與目錄名之間必須有空格,也就是:“cd/”、“cd..”、“cd.”都是非法的,而應該輸入:“cd /”、“cd ..”、“cd .”,如果直接輸入命令“cd”,而不加任何參數,將回到這個用戶的主目錄。
4) 顯示當前目錄:pwd
5) 列目錄命令:ls,相當於DOS下的dir
它的語法為:ls [選項] [目錄或文件]
常用的選項有:
Ø a 顯示指定目錄下所有的子目錄與文件,包括隱藏文件;
Ø c 按文件的修改時間排序
Ø l 采用長格式來顯示文件的詳細信息,每個文件一行信息,其內容為:文件類型與權限 鏈接數 文件屬主 文件屬組 文件大小 最近修改時間 文件名
7. 文件與目錄的權限操作
在Linux系統中,每一個文件和目錄都有相應的訪問許可權限,我們可以用它來確定誰可以通過何種方式對文件和目錄進行訪問和操作。文件或目錄的訪問權限分為可讀、可寫和可執行三種,分別以r,w,x表示,其含義為:
r w x
文件 可讀 可寫 可執行
目錄 可列出目錄 可在目錄中做寫操作 可以訪問該目錄
在文件被創建時,文件所有者可以對該文件的權限進行設置。
對於一個文件來說,可以將用戶分成三種,並對其分別賦予不同的權限:
1) 文件所有者
2) 與文件所有者同組用戶
3) 其它用戶
每一個文件或目錄的訪問權限都有三組,每組用三位表示,如:
d rwx r-x r--
第一部分:這裡的d代表目錄,其它的有:- 代表普通文件 c 代表字符設備文件;
第二部分:文件所有者的權限字,這裡為r w x表示可讀、可寫、可執行 (目錄的可執行指的可以進入目錄);
第三部分:與文件所有者同組的用戶的權限字,這裡為r - x表示可讀、不可寫、可執行。由於同組用戶之間交流較多,讓他看看文件,別亂改就行了嘛。
第四部分:其它用戶的權限字,這裡為- - -,當然給我無關的人嘛,我的文件當然不但不給你寫,也不讓你讀。
1) 文件/目錄權限設置命令:chmod
這是Linux系統管理員最常用到的命令之一,它用於改變文件或目錄的訪問權限。該命令有兩種用法:
Ø 用包含字母和操作符表達式的文字設定法
其語法格式為:chmod [who] [opt] [mode] 文件/目錄名
其中who表示對象,是以下字母中的一個或組合:
u:表示文件所有者
g:表示同組用戶
o:表示其它用戶
a:表示所有用戶
opt則是代表操作,可以為:
+:添加某個權限
-:取消某個權限
=:賦予給定的權限,並取消原有的權限
而mode則代表權限:
r:可讀
w:可寫
x:可執行
例如:為同組用戶增加對文件a.txt的讀寫權限:
chmod g+rw a.txt
Ø 用數字設定法
而數字設定法則更為簡單:chmod [mode] 文件名
關鍵是mode的取值,一開始許多初學者會被搞糊塗,其實很簡單,我們將rwx看成二進制數,如果有則有1表示,沒有則有0表示,那麼rwx r-x r--則可以表示成為:
111 101 100
再將其每三位轉換成為一個十進制數,就是754。
例如,我們想讓a.txt這個文件的權限為:
自己 同組用戶 其他用戶
可讀 是 是 是
可寫 是 是
可執行
那麼,我們先根據上表得到權限串為:rw-rw-r--,那麼轉換成二進制數就是110 110 100,再每三位轉換成為一個十進制數,就得到664,因此我們執行命令:
chmod 664 a.txt
2) 改變文件的屬主命令:chown
語法格式很簡單:chown [選項] 用戶名 文件/目錄名
其中最常用的選項是“R”,加上這個參數,可以將整個目錄裡的所有子目錄和文件的屬主都改變成指定用戶。
3) 改變文件屬組命令:chgrp
該命令也很簡單:chgrp 組名 文件名
3.3 用戶管理
用戶管理,主要的工作就是建立一個合法的用戶帳戶、設置和管理用戶的密碼、修改用戶帳戶的屬性以及在必要時刪除已經廢棄的用戶帳號。
1. 增加一個新用戶
在Linux系統中,只有root用戶才能夠創建一個新用戶,如下的命令將新建一個登錄名user1的用戶。
# useradd user1
但是,這個用戶還不能夠登錄,因為還沒給它設置初始密碼,而沒有密碼的用戶是不能夠登錄系統的。在默認情況下,將會在/home目錄下新建一個與用戶名相同的用戶主目錄。如果需要另外指定用戶主目錄的話,那麼可以使用如下命令:
# useradd -d /home/xf user1
同時,該用戶登錄時將獲得一個Shell程序:/bin/bash,而假如你不想讓這個用戶登錄,也就可以指定該用戶的Shell程序為:/bin/false,這樣該用戶即使登錄,也不能夠執行Linux下的命令:
# useradd -s /bin/false user1
在Linux中,新增一個用戶的同時會創建一個新組,這個組與該用戶同名,而這個用戶就是該組的成員。如果你想讓新的用戶歸屬於一個已經存在的組,則可以使用如下命令:
# useradd -g user user1
這樣該用戶就屬於user組的一員了。而如果只是想讓其再屬於一個組,那麼應該使用:
# useradd -G user user1
完成了這一操作後,你還應該使用passwd命令為其設置一個初始密碼。
2. 刪除一個用戶
刪除用戶,只需使用一個簡單的命令“userdel 用戶名”即可。不過最好將它留在系統上的文件也刪除掉,你可以使用“userdel -r 用戶名”來實現這一目的。
3. 修改用戶屬性
在前面我們看到了在新建一個用戶的時候如何指定它的用戶主目錄,如何指定它的Shell,如何設置它所屬的組…等等。在Linux中提供了一個命令來實現:
usermod -g組名 -G 組名 -d 用戶主目錄 -s 用戶Shell
還有一種直接的方法,那就是修改/etc/passwd文件,在這個文件中每個用戶占用一行,它的內容為:
用戶名:密碼:用戶ID:組ID:用戶全名:用戶主目錄:用戶Shell
不過值得注意的是,密碼這一項通常是用一個*號代替的,你是看不到的。
4. 增加一個組
還記得Linux的文件可以為同組的人、非同組的人設置不同的訪問權限嗎?我們可以根據自己的需要創建用戶組:
groupadd 組名
5. 刪除一個組
同樣的,我們有時會需要刪除一個組,它的命令就是groupdel 組名。
6. 修改組成員
如果我們需要將一個用戶加入一個組,只需編輯/etc/group文件,將用戶名寫到組名的後面。例如將newuser用戶加入到softdevelop組,只需找到softdevelop這一行:
softdevelop:x:506:user1,user2
然後在後面加上newuser,形成:
softdevelop:x:506:user1,user2,newuser
另外,在Red Hat Linux中還提供一個圖形化的用戶管理工具:userconf,通過它可以更直接地進行用戶管理。
3.4 進程管理
Linux是一個多用戶多任務的操作系統。多用戶是指多個用戶可以在同一時間使用計算機系統;多任務是指Linux可以同時執行幾個任務,它可以在還未執行完一個任務時又執行另一項任務。
在Linux系統上所有運行的東西都可以稱之為一個進程。每個用戶任務、每個系統管理守護進程,都可以稱之為進程。Linux用分時管理方法使用所有的任務共同分享系統資源。下面我們就看一下如何控制這些進程。
1. 啟動進程
在Linux系統中有兩種啟動進程的方法:
1) 直接輸入命令,就將直接啟動一個進程
Ø 在普通情況下,進程將在前台執行,這時我們無法再執行新的命令
Ø 如果我們在命令之後加上一個“&”,那行進程將會放在後台執行,我們仍然可以執行新的命令
2) 通過at、cron、crontab命令可以像Windows中的計劃任務一樣定時啟動某個進程,具體的使用方法大家可以使用man 命令名來查詢。
2. 查看進程
在Linux系統中,我們可以使用ps命令來查看正在運行的進程例如:
列出屬於當前用戶的進程:
# ps
PID TTY TIME CMD
16767 pts/1 0:00 ps
18029 pts/1 0:00 bash
其中PID代表進程ID,TTY是該進程是由哪個控制台啟動的,CMD則是命令。
如果你想列出更詳細的信息,則可使用命令:“ps -auxw”。
3. 終止進程
一個進程在任務完成之後,將會自動完成。如果要中途中止該進程的話,有兩種方法:
1) 對於在前台運行的程序,直接通過組合鍵CTRL+C就可以中止進程;
2) 而對於在後台運行的程序,則需要通過前面介紹的ps命令找到它的進程號,然後使用“kill 進程號”來終止該進程。
3.5 磁盤管理
系統軟件和應用軟件,都要以文件的形式存儲在計算機的磁盤空間中,做為系統管理員應隨時監視磁盤空間的使用情況。我們可以使用下面兩個命令來實現:
1. df命令
df,就是Disk Free,顧名思義就是檢查磁盤上還剩下多少空間等信息。下面是一個使用實例:
# df
FileSystem 1k-blocks Used Available Use% Mounted on
/dev/hda5 4134900 1749728 2175124 45% /
/dev/hda6 6048320 5741092 0 100% /home
共顯示了6列信息:
1) FileSystem:硬盤分區
2) 1k-blocks:按K計算的分區大小
3) Used:已經使用的分區大小(按K計算)
4) Available:還要用的分區大小
5) Use%:已使用的空間所占百分比
6) Mounted on:掛接點
可以看到/home是另一個分區,現在空間已經用完了!這都時當時沒有規劃好!
如果對與以K為計算單位表示硬盤空間,那麼你可以使用df -m,這樣就會以M為計算單位。
2. du命令
du,就是disk usage,就是看一下磁盤使用了多少。下面就是一個使用實例:
# pwd
/var/log
# du
4 ./uucp
776 .
在這裡,我們使用du命令列出了/var/log目錄所占用的磁盤空間。它統計出了該目錄有一個子目錄:uucp,占用了4K,而/var/log目錄下的文件則共有776K。
該命令還有一些常用的選項,用來完成更多的功能:
Ø -a 將列出當前目錄下所有的文件、子目錄、子目錄下的文件、子目錄下的子目錄…的磁盤占用情況
Ø -b 以字節為單位表示占用的磁盤空間
Ø -c 在最後顯示出一個統計值
3.6 軟件安裝
在Red Hat Linux下,應用軟件的安裝包通常有兩種格式:
1) rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux創造的一種包封裝格式。
2) tar包,如software-1.2.3-1.tar.gz。它是使用UNIX系統的打包工具tar打包的。
而且,大多數Linux應用軟件包的命名也有一定的規律,它遵循:
名稱-版本-修正版-類型
例如:
sfotware-1.2.3-1.i386.rpm
軟件名稱:software
版本號:1.2.3
修正版本:1
可用平台:i386,適用於Intel 80x86平台。
類型:rpm,說明是一個rpm包。
根據Linux應用程序軟件安裝包中的內容不同可以分為::
1) 是可執行文件,也就是解開包後就可以直接運行的。在Windows中所有的軟件包都是這種類型。安裝完這個程序後,你就可以使用。不過下載時要注意這個軟件是否是你所使用的平台,否則將無法正常安裝。
2) 另一種則是源程序,也就解開包後,你還需要使用編譯器將其編譯成為可執行文件。這在Windows系統中是幾乎沒有的,因為Windows的思想是不開放源程序的。
通常,用tar打包的,都是源程序;而用rpm打包的則常是可執行程序。
1.搞定使用rpm打包的應用軟件
rpm可謂是Redhat公司的一大貢獻,它使Linux的軟件安裝工作變得更加簡單容易。
1) 安裝:
我只需簡單的一句話,就可以說完。執行:
rpm -ivh rpm軟件包名
更高級的,請見下表:
rpm參數 參數說明
-i 安裝軟件
-t 測試安裝,不是真的安裝
-p 顯示安裝進度
-f 不管任何錯誤
-U 升級安裝
-v 檢測套件是否正確安裝
這些參數可以同時采用。更多的內容可以參考RPM的命令幫助。
2) 卸載:
我同樣只需簡單的一句話,就可以說完。執行:
rpm -e 軟件名
不過要注意的是,後面使用的是軟件名,而不是軟件包名。例如,要安裝software-1.2.3-1.i386.rpm這個包時,應執行:
rpm -ivh software-1.2.3-1.i386.rpm
而當卸載時,則應執行:
rpm -e software。
2. 搞定使用tar打包的應用軟件
1) 安裝:
整個安裝過程可以分為以下幾步:
Ø 取得應用軟件:通過下載、購買光盤的方法獲得;
Ø 解壓縮文件:一般tar包,都會再做一次壓縮,如gzip、bz2等,所以你需要先解壓。如果是最常見的gz格式,則可以執行:“tar -xvzf 軟件包名”,就可以一步完成解壓與解包工作。如果不是,則先用解壓軟件,再執行“tar -xvf 解壓後的tar包”進行解包;
Ø 閱讀附帶的INSTALL文件、README文件;
Ø 執行“./configure”命令為編譯做好准備;
Ø 執行“make”命令進行軟件編譯;
Ø 執行“make install”完成安裝;
Ø 執行“make clean”刪除安裝時產生的臨時文件。
好了,到此大功告成。我們就可以運行應用程序了。但這時,有的讀者就會問,我怎麼執行呢?這也是一個Linux特色的問題。其實,一般來說,Linux的應用軟件的可執行文件會存放在/usr/local/bin目錄下!不過這並不是“放四海皆准”的真理,最可靠的還是看這個軟件的INSTALL和README文件,一般都會有說明。
2) 卸載:
通常軟件的開發者很少考慮到如何卸載自己的軟件,而tar又僅是完成打包的工作,所以並沒有提供良好的卸載方法。一般都提供 make uninstall 來卸載軟件的。