rhce課程-初級部分2、(安裝redhat enterprise linux 5.1)
安裝red hat linux的硬體要求如下。
cpu:pentium以上處理器。
記憶體:至少128mb,推薦使用256mb以上的記憶體。
硬碟:至少需要1gb以上的硬碟空間,完全安裝需大約5gb的硬碟空間。
顯示卡:vga相容顯示卡。
光驅:cd-rom/dvd-rom。
其他裝置:如聲霸卡、網卡和modem等。
軟驅:可選
red hat網站提供了經過相容性測試和認證的“硬體相容性清單”,在得到系統硬體裝置的具體型号後,最好通路[url]http://bugzilla.redhat.com/hwcert/[/url]來檢視使用者的配置是否在清單之中

linux支援在一台計算機中安裝多個作業系統,它通過使用grub多重新開機動管理器來支援多作業系統并存,grub可以引導freebsd、openbsd、dos和windows等作業系統。計算機啟動時,使用者可以使用grub提供的菜單選擇需要啟動的系統,是以不必擔心出現安裝了linux後,導緻其他作業系統不能使用的問題。 (我們使用虛拟機安裝)
red hat enterprise linux支援以下幾種安裝方式。
CD光牒安裝:直接用安裝CD光牒的方式進行安裝,這種方式是最簡單也是最常用的方法,推薦初學者使用。
硬碟安裝:将iso安裝CD光牒映像檔案複制到硬碟上進行安裝。
網絡安裝:可以将系統安裝檔案放在web、ftp或nfs伺服器上,通過網絡安裝。
硬碟分區,這是一個作業系統規劃的重中之重,系統以後的擴充性,和安全性都與這步很有關系。
每個硬碟上主要分為主分區(primary partition)、擴充分區(extension partition)和邏輯分區(logical partition)3種 。
檔案系統是作業系統最為重要的一部分,它定義了磁盤上儲存檔案的方法和資料結構。檔案系統是作業系統組織、存取和儲存資訊的重要手段,每種作業系統都有自己的檔案系統,如windows所用的檔案系統主要有fat16、fat32和ntfs,linux所用的檔案系統主要有ext2、ext3和reiserfs等。
硬碟接口
ide接口
linux對連接配接到ide接口的硬碟使用/dev/hdx的方式命名,x的值對應于硬碟安裝位置。x的值可以是a、b、c、d。
硬碟 名稱
ide1口的主盤 /dev/hda
ide1口的從盤 /dev/hdb
ide2口的主盤 /dev/hdc
ide2口的從盤 /dev/hdd
scsi接口
連接配接到scsi接口的裝置使用id号進行差別,scsi裝置id号為0~15,scsi接口卡本身的id号是7。linux對連接配接到scsi接口卡的硬碟使用/dev/sdx的方式命名,x的值可以是a、b、c、d等,即id号為0的scsi硬碟名為/dev/sda,id号為1的scsi硬碟名為/dev/sdb,以此類推。
linux對scsi硬碟最多支援15個分區,在linux分區就和windows有很多差別了,windows是在分區裡建立檔案或者目錄。而linux是把分區挂載到目錄上。windows的dos裡有個tree指令大家都知道吧,現在可以4下,是檢視目錄結構的,windows是以每個分區為根,生成的目錄樹. windows的目錄樹,是以每個盤符為根往下延伸的,而linux隻有一個根,他就是 / .
linux下的所有檔案都是放在 / 下的。就象我的電腦一樣。在linux下面,所有裝置都是以檔案形式存在的, 在linux 沒有裝置,都是檔案。 分區的分件是存放在 /dev 下面的.
誰知道h代表什麼意思? h是ide的意思哈,所有ide裝置都是以h開始的 。那scsi硬碟呢?s代表scsi 。usb是屬于scsi 裝置的,那最後那個字元是什麼意思? a b c d ,恩,是表示的硬碟号,表示第幾個硬碟,第一個硬碟就是a , 第二個硬碟就是b, 依次推算。
那麼我電腦的第二個硬碟的第2個分區怎麼表示呢? 我的是scsi硬碟。誰告訴我?完全的裝置名稱/dev/sdb2。
計算機第1個硬碟的第5個分區怎麼表示?/dev/sda6。
分區為主分區(primary partition)、擴充分區(extension partition)和邏輯分區(logical partition)3種 ,一個硬碟的mbr(主引導記錄),隻有512k ,隻能記錄4個分區,為什麼使我們能得到更多的分區,是以出現了擴充分區,我剛才的題是我的第5個分區。 已經超出了4個的極限。不管你前面3個分區是主分區還是什麼東西。你要想超過4個分區,就需要有一個擴充分區,我們使用擴充分區的空間來建立邏輯分區,擴充分區就是這個功能,我們把邏輯分區的分區表存放在擴充分區裡,系統可以通過擴充分區找到需要的分區。擴充分區和mbr功能一樣,是以他也是不能寫資料的。剛才的第4個分區就被擴充分區占用了,是以第五個分區變成了sda6
一個硬碟最多可以有4個(主+擴充)分區,其中,擴充分區隻能有一個。
p+p+p+p
p+p+p+e
因1~4号己被保留,是以第1個邏輯分區的代号由5号開始,以此順序增加到磁盤号,若未劃分/dev/sda3,/dev/sda4分區,則這兩個代号是空的被保留下來的代号。 邏輯分區和主分區沒有關系,隻與mbr的空間有關系
由于擴充分區不能寫東西。是以能用的分區就要從第5個分區開始算,我電腦的第5個分區就是
sda1主分區 ------》第一個可用分區
sda2主分區 ------》第二個可用分區
sda3主分區 ------》第三個可用分區
sda4擴充分區
sda5邏輯分區 ------》第四個可用分區
sda6邏輯分區 ------》第五個可用分區
我們可以把前面4個分區全部分成主分區,但是分區後,硬碟還有多餘的空間,我還想分區,你們說可以不?
我如果都劃4個主分區,那你第五個分區就不能分了為, mbr不能管理, 超出了, 是以你想使你的分區比較靈活,一般會把最後一分區分正擴充分區,這樣就可以随意整加分區了
硬碟的前512byte,mbr是前446byte,447-510是dpt(disk partition table)分區表.最後2位是奇偶校驗,校驗這個mbr和dpt是否完整.
請大家注意,備份的時候我們還是要備份前面512byte
mbr知識點:
引導扇區在每個分區裡都存在,但是我們常說的*主引導扇區*是硬碟的第一實體扇區。它由兩個部分組成:即主引導記錄mbr和硬碟分區表dpt。
在總共512位元組的主引導分區裡其中mbr占446個位元組(偏移0-- 偏移1bdh),dpt占64個位元組(偏移1beh--偏移1fdh),最後兩個位元組“55,aa”(偏移1feh偏移1ffh)是分區的結束标志。大緻的結構如下圖:
<code> 0000 |------------------------------------------------| | | | | | main boot record | | | | | | 主引導記錄(446位元組) | | | | | | | 01bd | | 01be |------------------------------------------------| | | 01cd | 分區資訊 1(16位元組) | 01ce |------------------------------------------------| | | 01dd | 分區資訊 2(16位元組) | 01de |------------------------------------------------| | | 01ed | 分區資訊 3(16位元組) | 01ee |------------------------------------------------| | | 01fd | 分區資訊 4(16位元組) | |------------------------------------------------| | 01fe | 01ff | | 55 | aa | |------------------------------------------------|</code>
主引導記錄中包含了硬碟的一系列參數和一段引導程式。引導程式主要是用來在系統硬體自檢完後引導具有激活标志的分區上的作業系統。它執行到最後的是一條jmp指令跳到作業系統的引導程式去。這裡往往是引導型病毒的注入點,也是各種多系統引導程式的注入點。但是由于引導程式本身完成的功能比較簡單,是以我們可以完全地判斷該引導程式的合法性(看jmp指令的合法性),因而也易于修複。象指令fdisk/mbr可以修複mbr和kv300這類軟體可以清除任意類型的引導型病毒,就是這個原因。
往下來是硬碟的分區表,由4個16位元組的分區資訊表組成。每個資訊表的結構如下:
偏移 長度 所表達的意義
0 位元組 分區狀态: 如0-->非活動分區
80--> 活動分區
1 位元組 該分區起始頭(head)
2 字 該分區起始扇區和起始柱面
4 位元組 該分區類型:如82--> linux native分區
83--> linux swap 分區
5 位元組 該分區終止頭(head)
6 字 該分區終止扇區和終止柱面
8 雙字 該分區起始絕對分區
c 雙字 該分區扇區數
最後的兩個标志“55 aa”是分區表的結束标志,如果這兩個标志被修改(有些病毒就會修改這兩個标志),則系統引導時将報告找不到有效的分區表。
硬碟mbr的全線分析:mbr(main boot record)主引導記錄區位于硬碟0磁道0柱面1扇區。
begin:
0000:7c00 fa cli 關中斷
0000:7c01 33c0 xor ax,ax 設定堆棧段位址為0000
0000:7c03 8ed0 mov ss,ax
0000:7c05 bc007c mov sp,7c00 設定堆棧指針為7c00(一般mbr都是先被寫入這個位址的)
0000:7c08 8bf4 mov si,sp si=7c00
0000:7c0a 50 push ax
0000:7c0b 07 pop es es=0000
0000:7c0c 50 push ax
0000:7c0d 1f pop ds ds=0000
0000:7c0e fb sti 開中斷
0000:7c0f fc cld 清除方向
0000:7c10 bf0006 mov dl,o600 di=0600
0000:7c13 b90001 mov cx,0100 移動256個word(512bytes)
0000:7c16 f2 repnz 把mbr從7c00移動到0600
0000:7c17 a5 movsw
0000:7c18 ea1d060000 jmp 0000:061d跳至0000:061d,及程式的下一條指令
new_location: at 0000:0600
0000:061d bebe07 mov si,07be 指向第一個分區表的首位址
0000:0620 b304 mov bl,04 分區個數為4
search_loop1: 查找活動分區的代碼段
0000:0622 803c80 cmp byteptr[si],80 是否為活動分區?
0000:0625 740e jz found_active 是,轉,繼續檢視其它分區
0000:0627 803c00 cmp byte ptr[si],00 是否為非活動分區
0000:062a 751c jnz not_active 不是,跳轉,分區表出現異常
0000:062c 83c610 add si,+10 增量表指針加16
0000:062f fecb dec bl 減少計數
0000:0631 75ef jnz search_loop1 繼續檢查四個分區中的其他分區
0000:0633 cd18 int 18 沒有找到活動分區,跳至rom basic
found_active: 找到了活動分區
0000:0635 8b14 mov dx,[si] 儲存磁頭号、驅動器号到dh、dl
0000:0637 8b4c02 mov cx,[si+02] 儲存磁道号、扇區号到ch、cl
0000:063a 8bee mov bp,si 儲存目前分區首位址到bp
search_loop2: 繼續檢視分區保證隻有一個活動分區,且其他分區正常
0000:063c 83c610 add si,+10 增量表指針加16
0000:063f fecb dec bl 減少計數
0000:0641 741a jz read_boot 如果所有分區檢查結束,開始引導
0000:0643 803c00 cmp byte ptr[si],00 是否為非活動分區
0000:0646 74f4 jz search_loop2 是,循環
not_active: 有不止一個活動分區或有分區異常
0000:0648 be8b06 mov si,068b si指向字元串“invailid partition table”
display_msg: 顯示消息循環
0000:064b ac lodsb 取得消息的字元
0000:064c 3c00 cmp al,00 判斷消息的結尾
0000:064e 740b jz hang 顯示錯誤資訊後挂起
0000:0650 56 push si 儲存si
0000:0651 bb0700 mov bx,0007 bl=字元顔色,bh=頁号
0000:0654 b40e mov ah,0e 顯示一個字元
0000:0656 cd10 int 10
0000:0658 5e pop si 恢複si
0000:0659 ebf0 jmp display_msg 循環顯示剩下的字元
hang: 挂起系統
0000:065b jmp hang 死循環挂起
read_boot: 讀活動分區的資料
0000:065d bf0500 mov di,005 設定嘗試的次數
int13rtry: int13的重試循環
0000:0660 bb0007c mov bx,7c00 設定讀盤緩沖區
0000:0663 b80102 mov ax,0201 讀入一個扇區
0000:0666 57 push di 儲存di
0000:0667 cd13 int 13 把扇區讀入0000:7c00
0000:0669 sf pop di 恢複di
0000:066a 730c jnb int13ok 讀扇區操作成功 cf=0
0000:066c 33c0 xor ax,ax 讀盤操作失敗,硬碟複位
0000:066e cd13 int 13
0000:0670 4f dec di 嘗試次數減一
0000:0671 75ed jnz int13rtry 剩餘次數不為零,繼續嘗試
0000:0673 bea306 mov si,06a3 si指向字元串“error loading operation system”
0000:0676 ebd3 jmp display_msg 顯示出錯資訊,并挂起
int13ok: int13 出錯
0000:0678 bec2o6 mov si,06c2 si指向字元串“missing operation system”
0000:067b bffe7d mov di,7dfe 指向分區結束标志
0000:067e 813d55aa cmp word ptr[di],aa55 标志是否正确
0000:0682 75c7 jnz display_msg 不正确,顯示出錯資訊,挂起
0000:0684 8bf5 mov si,bp 恢複可引導分區首位址與si
0000:0686 ea007c0000 jmp 0000:7c00 一切正常,轉分區引導記錄執行
硬碟分區的命名
linux硬碟分區的命名
linux使用裝置名稱+分區号碼标明硬碟的各個分區,對于主分區(或擴充分區)分區号碼的編号為1~4,邏輯分區的分區号碼編号從5開始
要想知道怎麼規劃合理,你就要知道linux /下的哪寫檔案有什麼用處。
第一個bin,主要是存放普通使用者的可執行指令。建議和/放在一起,不單獨分出來
第二個dev , 是系統裝置檔案存放位置,比如我們剛才的分區,建議和/放在一起,不單獨分出來
第三個home,是普通使用者的家目錄,很多檔案伺服器都會用到使用者的家目錄存放資料,是以建議單獨分區, 而且還有一個好處, 如果你系統壞了,實在不能用了,需要從新安裝系統。你單獨分出了home分區,裡面的東西可以在安裝好系統後,從新挂載進系統。就不會出現重要資料丢失的問題
lost+found 分區的檔案碎片,沒個分區都有 一般不用管這目錄
misc 自動挂載服務需要的的目錄,建議和 /放一起
net 目錄我平時都沒注意,是個空目錄。一般不會使用
proc 目錄裡的東西就是現在記憶體中的東西。不會占用硬碟空間,不須要單獨分區
sbin 目錄,是超級管理者的可執行檔案存放目錄
tmp 臨時檔案目錄,不需要單獨分出來
var 是很多伺服器 檔案使用的目錄,建議單獨分區。
boot 存放grub(啟動裝載程式)和核心的檔案 強烈建議單獨分成第一個主分區, 這樣系統啟動不了,比較容易排除故障
etc 大部配置設定置檔案的存放目錄。 雖然重要但是不大,但是一定要和/放一起,因為啟動的時候需要讀取裡面的配置檔案, 這個是不能單獨分出去的。
lib 系統和可執行程式的庫檔案。 和/放一起
media 和mnt 也是挂載光驅和其他裝置用的,和/放一起
root 超級使用者的家目錄,裡面一般沒什麼東西,可以和/放一起
selinux 增強性安全linux,和usr 部分使用者安裝檔案存放目錄。也和/放一起
出與安全行和擴充性考慮我們會分出4個分區: /boot,,/,/home,/var
var和home目錄是看你伺服器性質而定。 一般把剩餘空間全部配置設定給他們
安裝linux時,需要在硬碟建立linux使用的分區,在大多情況下,至少需要為linux建立以下3個分區。
/boot分區:/boot分區用于引導系統,它包含了作業系統的核心和在啟動系統過程中所要用到的檔案,該分區的大小一般為100mb。
swap分區:swap分區的作用是充當虛拟記憶體,其大小通常是實體記憶體的兩倍左右(當實體記憶體大于512mb時,swap分區為512mb即可)。例如實體記憶體是128mb,那麼swap分區的大小應該是256mb。
/(根)分區:linux将大部分的系統檔案和使用者檔案都儲存在/(根)分區上,是以該分區一定要足夠大,一般要求大于5gb。
如果以上知識你都會了,那麼安裝linux對您來說就象切菜一樣簡單了。
登陸linux作業系統有幾種方式?從本地登陸叫做控制台, 網絡登陸的叫做終端, 就這兩種方式。圖形界面就是一個控制台,而且我們還可以通過 ctrl+alt+f(1-6)切換到虛拟控制台, ctrl+alt+f7 就是切換回圖形界面, 在登陸的時候需要輸入使用者名和密碼。 地球人都知道, 虛拟終端都是cli的, cli=字元界面
當使用者登陸後,所在的目錄是在自己的家目錄當中,
[root@stationxx etc]#
[目前使用者名@主機名 目前目錄]
提示符因使用者而異
home目錄是使用者登入系統後即所在的預設目錄
誰告訴我上面的主機名字是什麼?
stationxx, 注意 linux是嚴格區分大小寫的, 是以 在打指令和寫腳本,寫配置檔案的時候,一定要注意大小寫
#和$有什麼不同?
# 隻有root 進去的才是這個标志
就算其他使用者通過sudo或者怎麼得到超級權限的還是$,#是一種身份的象征的哈。在cisco的 ios系統中都是用的#标志
主菜上來了:
運作vm
出現這個向導,點下一步,選擇典型,預設也是典型
下一步,選擇linux,版本選擇red hat enterprise linux5
輸入虛拟機名字及存放位置
注意:放虛拟檔案的分區至少要10g以上剩餘空間
下一步,選擇預設的橋接網絡
下一步,虛拟機配置設定硬碟空間,我們都用30g吧,下面的分頁檔案大小2g的,要選中,完成了。
如果你實體機器内寸是1g或者以上的,分512給虛拟機。如果實體機是512的,分256就可以了
下面點cd-rom,點使用iso鏡象,把你們的rhel5放進去
三角符号,是啟動的意思
這樣我們就到了rhel5安裝界面,點回車是以圖形截面安裝,輸入linux text是用cli安裝
這裡我們選語言為英語,如果選中文的話,在cli狀态下會出現中文亂碼的情況
這裡選美式鍵盤us
這裡可以輸入rhel5.1的序列号,也可以跳過不填,對安裝應用沒關系。
skip跳過
提示要初始化硬碟,選yes繼續。
這裡分區我們選擇自定義
我們進行硬碟分區:
new 就是建立新的分區
edit 就是更改已有的分區
delete 就是删除已建立的分區
reset 就是把你剛才的設定全部取消。恢複到現在的樣子
raid 是磁盤陣列
lvm 是邏輯卷
raid知識點:
raid0、raid1、raid0+1、raid5原理介紹
raid是通過磁盤陣列與資料條塊化方法相結合, 以提高資料可用率的一種結構。ibm早于1970年就開始研究此項技術 。raid 可分為raid級别1到raid級别6, 通常稱為: raid 0, raid 1, raid 2, raid 3,raid 4,raid 5,raid6。每一個raid級别都有自己的強項和弱項. “奇偶校驗”定義為使用者資料的備援資訊, 當硬碟失效時, 可以重新産生資料。
raid 0: raid 0 并不是真正的raid結構, 沒有資料備援。 raid 0 連續地分割資料并并行地讀/寫于多個磁盤上。 是以具有很高的資料傳輸率。 但raid 0在提高性能的同時,并沒有提供資料可靠性,如果一個磁盤失效, 将影響整個資料.是以raid 0 不可應用于需要資料高可用性的關鍵應用。
raid 1: raid 1通過資料鏡像實作資料備援, 在兩對分離的磁盤上産生互為備份的資料。 raid 1可以提高讀的性能,當原始資料繁忙時, 可直接從鏡像拷貝中讀取資料.raid 1是磁盤陣列中費用最高的, 但提供了最高的資料可用率。當一個磁盤失效, 系統可以自動地交換到鏡像磁盤上, 而不需要重組失效的資料。
raid 2: 從概念上講, raid 2 同raid 3類似, 兩者都是将資料條塊化分布于不同的硬碟上, 條塊機關為位或位元組。然而raid 2 使用稱為“加重平均糾錯碼”的編碼技術來提供錯誤檢查及恢複。這種編碼技術需要多個磁盤存放檢查及恢複資訊, 使得raid 2技術實施更複雜。 是以,在商業環境中很少使用。
raid 3:不同于raid 2, raid 3使用單塊磁盤存放奇偶校驗資訊。 如果一塊磁盤失效, 奇偶盤及其他資料盤可以重新産生資料。 如果奇偶盤失效,則不影響資料使用。raid 3對于大量的連續資料可提供很好的傳輸率, 但對于随機資料, 奇偶盤會成為寫操作的瓶頸。
raid 4: 同raid 2, raid 3一樣, raid 4, raid 5也同樣将資料條塊化并分布于不同的磁盤上, 但條塊機關為塊或記錄。 raid 4使用一塊磁盤作為奇偶校驗盤, 每次寫操作都需要通路奇偶盤, 成為寫操作的瓶頸。 在商業應用中很少使用。
raid 5:raid 5沒有單獨指定的奇偶盤, 而是交叉地存取資料及奇偶校驗資訊于所有磁盤上。 在raid5 上, 讀/寫指針可同時對陣列裝置進行操作, 提供了更高的資料流量。 raid 5更适合于小資料塊,随機讀寫的資料.raid 3與raid 5相比, 重要的差別在于raid 3每進行一次資料傳輸,需涉及到所有的陣列盤。而對于raid 5來說, 大部分資料傳輸隻對一塊磁盤操作, 可進行并行操作。在raid 5中有“寫損失”, 即每一次寫操作,将産生四個實際的讀/寫操作, 其中兩次讀舊的資料及奇偶資訊, 兩次寫新的資料及奇偶資訊。
raid 6:raid 6 與raid 5相比,增加了第二個獨立的奇偶校驗資訊塊。 兩個獨立的奇偶系統使用不同的算法, 資料的可靠性非常高. 即使兩塊磁盤同時失效,也不會影響資料的使用。 但需要配置設定給奇偶校驗資訊更大的磁盤空間,相對于raid 5有更大的“寫損失”。raid 6 的寫性能非常差, 較差的性能和複雜的實施使得raid 6很少使用。
raid 0又稱為stripe或striping,它代表了所有raid級别中最高的存儲性能。raid 0提高存儲性能的原理是把連續的資料分散到多個磁盤上存取,這樣,系統有資料請求就可以被多個磁盤并行的執行,每個磁盤執行屬于它自己的那部分資料請求。這種資料上的并行操作可以充分利用總線的帶寬,顯著提高磁盤整體存取性能
raid 1又稱為mirror或mirroring,它的宗旨是最大限度的保證使用者資料的可用性和可修複性。 raid 1的操作方式是把使用者寫入硬碟的資料百分之百地自動複制到另外一個硬碟上。由于對存儲的資料進行百分之百的備份,在所有raid級别中,raid 1提供最高的資料安全保障。同樣,由于資料的百分之百備份,備份資料占了總存儲空間的一半,因而,mirror的磁盤空間使用率低,存儲成本高。
mirror雖不能提高存儲性能,但由于其具有的高資料安全性,使其尤其适用于存放重要資料,如伺服器和資料庫存儲等領域。
raid 5 是一種存儲性能、資料安全和存儲成本兼顧的存儲解決方案。raid 5不對存儲的資料進行備份,而是把資料和相對應的奇偶校驗資訊存儲到組成raid5的各個磁盤上,并且奇偶校驗資訊和相對應的資料分别存儲于不同的磁盤上。當raid5的一個磁盤資料發生損壞後,利用剩下的資料和相應的奇偶校驗資訊去恢複被損壞的資料。
raid 5可以了解為是raid 0和raid 1的折衷方案。raid 5可以為系統提供資料安全保障,但保障程度要比mirror低而磁盤空間使用率要比mirror高。raid 5具有和raid 0相近似的資料讀取速度,隻是多了一個奇偶校驗資訊,寫入資料的速度比對單個磁盤進行寫入操作稍慢。同時由于多個資料對應一個奇偶校驗資訊,raid 5的磁盤空間使用率要比raid 1高,存儲成本相對較低。
raid0+1:正如其名字一樣raid 0+1是raid 0和raid 1的組合形式,也稱為raid 10。
raid 0+1是存儲性能和資料安全兼顧的方案。它在提供與raid 1一樣的資料安全保障的同時,也提供了與raid 0近似的存儲性能。
由于raid 0+1也通過資料的100%備份提供資料安全保障,是以raid 0+1的磁盤空間使用率與raid 1相同,存儲成本高。
raid 0+1的特點使其特别适用于既有大量資料需要存取,同時又對資料安全性要求嚴格的領域,如銀行、金融、商業超市、倉儲庫房、各種檔案管理等。
lvm知識點:
每個linux使用者在安裝linux時都會遇到這樣的困境:在為系統分區時,如何精确評估和配置設定各個硬碟分區的容量,因為系統管理者不但要考慮到目前某個分區需要的容量,還要預見該分區以後可能需要的容量的最大值。因為如果估計不準确,當遇到某個分區不夠用時管理者可能甚至要備份整個系統、清除硬碟、重新對硬碟分區,然後恢複資料到新分區。
雖然現在有很多動态調整磁盤的工具可以使用,例如partation magic等等,但是它并不能完全解決問題,因為某個分區可能會再次被耗盡;另外一個方面這需要重新開機系統才能實作,對于很多關鍵的伺服器,停機是不可接受的,而且對于添加新硬碟,希望一個能跨越多個硬碟驅動器的檔案系統時,分區調整程式就不能解決問題。
是以完美的解決方法應該是在零停機前提下可以自如對檔案系統的大小進行調整,可以友善實作檔案系統跨越不同磁盤和分區。幸運的是linux提供的邏輯盤卷管理(lvm,logical volume manager)機制就是一個完美的解決方案。
lvm是邏輯盤卷管理(logical volume manager)的簡稱,它是linux環境下對磁盤分區進行管理的一種機制,lvm是建立在硬碟和分區之上的一個邏輯層,來提高磁盤分區管理的靈活性。通過lvm系統管理者可以輕松管理磁盤分區,如:将若幹個磁盤分區連接配接為一個整塊的卷組(volume group),形成一個存儲池。管理者可以在卷組上随意建立邏輯卷組(logical volumes),并進一步在邏輯卷組上建立檔案系統。管理者通過lvm可以友善的調整存儲卷組的大小,并且可以對磁盤存儲按照組的方式進行命名、管理和配置設定,例如按照使用用途進行定義:“development”和“sales”,而不是使用實體磁盤名“sda”和“sdb”。而且當系統添加了新的磁盤,通過lvm管理者就不必将磁盤的檔案移動到新的磁盤上以充分利用新的存儲空間,而是直接擴充檔案系統跨越磁盤即可。
lvm基本術語
lvm是在磁盤分區和檔案系統之間添加的一個邏輯層,來為檔案系統屏蔽下層磁盤分區布局,提供一個抽象的盤卷,在盤卷上建立檔案系統。下面是幾個lvm術語:
<b>實體存儲媒體(the physical media)</b>
這裡指系統的儲存設備:硬碟,如:/dev/hda1、/dev/sda等等,是存儲系統最低層的存儲單元。
<b>實體卷(physical volume)</b>
實體卷就是指硬碟分區或從邏輯上與磁盤分區具有同樣功能的裝置(如raid),是lvm的基本存儲邏輯塊,但和基本的實體存儲媒體(如分區、磁盤等)比較,卻包含有與lvm相關的管理參數。
<b>卷組(volume group)</b>
lvm卷組類似于非lvm系統中的實體硬碟,其由實體卷組成。可以在卷組上建立一個或多個“lvm分區”(邏輯卷),lvm卷組由一個或多個實體卷組成。
<b>邏輯卷(logical volume)</b>
lvm的邏輯卷類似于非lvm系統中的硬碟分區,在邏輯卷之上可以建立檔案系統(比如/home或者/usr等)。
<b>pe(physical extent)</b>
每一個實體卷被劃分為稱為pe(physical extents)的基本單元,具有唯一編号的pe是可以被lvm尋址的最小單元。pe的大小是可配置的,預設為4mb