HP_UX下安裝磁碟

risingsunczl發表於2007-04-15
遲早會用到的東西,感謝網友的經驗共享,我就喜歡看經驗共享的東西,那些教科書似的東西讓人頭疼[@more@]在HPUX 下正確使用硬碟的順序及相應命令如下:
1. 先建物理卷
# pvcreate -f /dev/rdsk/cCdDtT
這裡必須使用硬碟的字元裝置檔案
2. 再建邏輯卷組
# mkdir /dev/vg0X
X:0~f,邏輯卷組名
# mknod /dev/vg0X/group c 64 0x0X0000
# vgcreate vg0X /dev/dsk/cCdDtT
# vgcreate –s 8 vg0X /dev/dsk/cCdDtT(對於大於256G的硬碟)
# vgcreate –s 8 vg0X /dev/dsk/cCdDtT /dev/dsk/c
3. 然後劃分邏輯卷
# lvcreate -L size –n /dev/vg0X/lvolY vg0X
size:該邏輯卷大小
4. 在LV 上建檔案系統
# newfs -F file_system_type /dev/vg0X/rlvolY
file_system_type:檔案系統型別,包括hfs 和vxfs,注意此時用該邏輯卷的字
符裝置檔案。
5. 將此檔案系統Mount 到一個目錄下
# mkdir /directory
# mount /dev/vg0X/lvolY /directory


我按照上面的步驟,XXX的進行下去,第一步OK,第二步MKDIR,MKNOD都OK了,到VGCREATE出錯了,錯誤提示翻成中文後如下:

在 VGDA (volume group discriptor area) 上使用 vgcreate 命令設定較大 max_pe 值的結果是什麼XX? 因為較小的或者預設的max_pe 值通常會限制將來向 Volume Group 新增較大的磁碟,因此最好將max_pe 設定為一個較大的數字?VGDA 成數量級的增長。將 max_pe 設定為一個較大值的結果是怎樣的?

當時也不知道這個說的是什麼東西,是自己對磁碟的研究太少的結果,要怪只能怪自己了。
warning,說實在話,最怕的就是這東西,一看見successful萬事大吉,但是這次沒有出現,我知道完了,但是又不知道問題的關鍵在哪裡。
在網上發現了這樣一條命令vgcreate -s 8 vg01 /dev/dsk/c3t0d0 /dev/dsk/c3t1d0 ,興奮了一會兒,難道是我沒有加引數的原因,但是為什麼是8而不是其它的呢,我要先看一下這個引數是什麼意思。Go on ………………………. 原來這個引數是用來設定PE大小的,乘上MaxPEperPV就是一個PV最大的值,預設的4M,乘上最大的PE數65535(65535*4=262140M也就是256G),因我建立時沒有改,而我的硬碟大小是一個500G的硬碟,就是這裡的問題了,可是發現這個問題的過程很痛苦的呀,我想首先應該把一些概念性的東西掌握好才能做好事情,我也再複習一下:
**********************************************************************************
在LVM裡,一個PV(Physical Volume,物理卷)對應且只對應一個物理硬碟,一個或者多個PV組成一個VG(Volume Group,卷組),而從一個VG裡又可以虛擬劃分出若干個LV(Logical Volume,邏輯卷),真正的檔案系統是建立在LV上面的,可以在LV上建檔案系統,也可以不建檔案系統而直接使用,這時叫裸裝置(raw device)。因為是直接對裝置進行資料讀寫,所以Raw device的效能要比檔案系統好,許多資料庫系統就是直接儲存在裸裝置上,但是可管理性比較差,題外話。
LVM系統怎麼知道往某一個LV裡面存資料時,到底是存放到哪個(些)實際硬碟呢?在LVM系統裡,一個PV由若干個PE(Physical Extent)組成,一個LV由若干個LE(Logical Extent)組成,而這些PE和LE之間又有直接的對應關係,這種對應關係被儲存在一個叫做“PE/LE對應表”(Translation Table)的表中。Translation Table存放在LVM磁碟上,當VG被啟用時才裝載到記憶體中。PE是在建立卷組時建立的,大小由vgcreate的-s引數指定,預設是4M;在同一個VG裡面的所有PV的PE大小是一樣的,不管實際硬碟的大小和型號是否相同。當LV建立時,LVM系統建立LE並自動維護PE/LE對應表,使得每一個LV裡面的LE都可以找到與之對應的PE,從而知道資料該往哪個硬碟寫。一般情況下建立LV的時候,系統都是按物理硬碟加入VG的順序來分配其可用的PV。比如說c0t5d0是第一個加入VG的硬碟,那麼預設情況下c0t5d0裡的可用PV將最先被用來分配,除非在使用lvextend命令時特殊指定。
在使用vgcreate的-s引數時,PE的大小必須是2的整數倍,一般使用預設值4,這表示卷組上建立的所有邏輯卷都以4MB的增量單位來進行擴充或縮減。由於核心原因,PE大小決定了邏輯卷的最大大小, 4MB的PE決定了單個邏輯卷最大容量為256GB,若希望使用大於256GB的邏輯卷則建立卷組時指定更大的PE。PE大小範圍為8KB到512MB。為什麼是4而不是8、16...?(你問我我問誰?:p)應該是吧!還有幾個LVM的限定,要說明
·一個LV只能屬於一個VG(不要去想lvol9先從vg00弄點空間,再從vg01弄點空間)
·一個PV要麼獨立要麼屬於且僅屬於一個VG(獨立時作為Raw Device,效能比較猛)
·vgcrete -l引數將限定一個VG裡面能建立的最大LV數量,極限是255
·vgcreate -p引數限定一個VG裡面能容納的最多PV數,極限是255
·核心引數maxvgs限定系統最大的VG數,預設是10,最大可以變態到256
************************************************************************
以上的一些內容大部分是來自網上,很感謝之前之人種的樹.

下面到了劃分邏輯卷的步驟了:
A、這一步做得很順利,但是還是有不明白的地方,當時由於時間的關係也沒有深究,現在想好好的瞭解一下了。命令是:# lvcreate -L size –n data /dev/vg0X/lvolY vg0X size指該邏輯卷大小,-n後面應該是卷名(data)。
B、下面是建檔案系統:
" newfs -F hfs /dev/vg01/rdata"
注:如果是vxfs檔案系統,則用" newfs -F vxfs /dev/vg01/rdata"
C、mount到目錄 /sample 上
建立目錄/sample,並將邏輯卷data mount 到/sample.
" mkdir sample"
" mount /dev/vg01/data /sample"
用bdf命令,將會看到/dev/vg01/data mount 到 /sample上。
刪除邏輯卷 /dev/vg01/data ,用命令:" lvremove /dev/vg01/data"

說大功告成並不為正確,
######################################################################
附相關命令:
max_pe 設定為它的最大值 65535。
max_pv 設定為它的最大值 255。

# pvdisplay -v /dev/dsk/c*t*d*
顯示磁碟各種資訊,如磁碟大小,包含的邏輯卷,裝置名稱等.
# vgdisplay -v /dev/vg00
顯示邏輯卷組資訊,如包含哪些物理盤及邏輯卷等.
# lvdisplay -v /dev/vg00/lvol1
顯示邏輯卷各種資訊,如包含哪些盤,是否有映象等.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/653579/viewspace-910856/,如需轉載,請註明出處,否則將追究法律責任。

相關文章