歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> AIX的LVM管理之文件系統在線擴容總結

AIX的LVM管理之文件系統在線擴容總結

日期:2017/2/28 14:37:31   编辑:Linux教程

文件系統在線擴容是系統管理中最常用的一個操作之一,把相應的幾個命令掌握有助於加深對AIX管理的理解。

先是創建邏輯卷LV和文件系統。

這裡有兩種方法,一種是先用mklv先創建一個邏輯卷LV,再用mkfs創建文件系統,另外一種是直接用crfs把創建LV和文件系統一起來了。

通過實際對這兩種方法的操作發現:

1、mklv可以自定義邏輯卷LV的名字,而使用crfs我還沒發現在哪裡可以指定自動創建的LV的名字,默認好像是從fslv00開始,後面的數字依次增加。而且使用crfs的時候也好像不能指定它自動創建的LV的copies鏡像數。

2、通過mkfs創建mklv得出的邏輯卷,它並不會往/etc/filesystems(這個文件的功能相當於linux裡面的/etc/fstab這個文件)這個文件裡面寫入新的文件系統的信息,這個文件裡面沒有新創建的文件系統的信息目前發現會造成兩個問題:一是使用lsfs命令查看分區的時候將不會顯示剛才創建的這個文件系統(因為lsfs就是直接讀取的/etc/filesystems文件),二是後面使用chfs給分區擴容的時候它會拒絕,也是因為/etc/filesystems裡面沒有那個文件系統的信息。不過這倒不是什麼問題,因為可以手動把剛才通過mkfs創建的文件系統的信息按文件格式加到/etc/filesystems裡面去。

3、使用smit crfs的從Previously Defined Logical Volume創建JFS的時候發現,它不認我手動用mklv創建的邏輯卷,不知是何故。

因此可以得出結論,如果要想對創建的LV做更多的自定義,就要麻煩一些用mklv+mkfs再手動增加/etc/filesystems裡面的信息,如果要想簡單快捷,那就使用crfs更好。

再是在線給文件系統擴容。

lsvg testvg命令只有在vg是active的時候才能使用(可以用varyonvg testvg來激活),也可以使用lspv來看hdisk對應的vg是否已經active。

驗證文件系統擴容是否成功我是使用的df -g命令來查看文件系統的空間來實現的,同時也用lslv fslv00來查看LV的邏輯分區LP數來查看到底分配了多少個LP。

擴容有兩種,一種是給LV擴容(使用extendlv命令),就是增加邏輯分區LP的數量,另一種是給文件系統擴容(使用chfs命令),就是增加df -g看到的那個文件系統的空間。之前對這兩種方式不太理解,後面操作之後有以下發現:

1、extendlv只是簡單的增加邏輯分區LP的數量,如果相應的LV在擴容前已經創建了文件系統並且掛載,那麼在extendlv之後掛載的文件系統的容量是不會變的(即使重新掛載也不會變),這個不會自動把文件系統也擴容了。

2、要擴展文件系統的大小,必須使用chfs命令。可以使用chfs -a size=800M /home/fslv00命令來給文件系統擴容。同時還發現,chfs -a size+=200M這種的把分區增加200M空間的命令方式我沒成功,它提示必須要使用Attribute=Value的形式,不知為何。chfs之後,再用df -g查看,文件系統的空間就變大了,不會再出現上面的用extendlv增加LP後卻用不到的問題。

3、這裡就有個問題了,文件系統或邏輯分區的實際容量=物理分區PP大小*邏輯分區數,所以使用chfs指定的size的大小,系統並不一定就會分配這麼多,它會分配不小於用戶指定的容量且最接近物理分區倍數容量的空間,因為物理分區PP的大小是固定不能變的,所以容量只能是物理分區的倍數,假如當前VG的PP大小是512MB,那麼我指定800M,系統就會分配1G空間給我,因為不小於800M且最接近512MB倍數的容量是1G。

4、使用chfs它會自動擴展LV,也就是自動增加邏輯分區LP的數量。所以一般情況下,對於文件系統的擴展,只需要使用chfs就行了,extendlv根本沒有必要。

5、那你肯定會問為什麼還要存在extendlv這個命令呢?因為還有裸設備這個使用方式,比如Oracle它就會直接使用裸設備而不創建文件系統,如果oracle對應的裸設備所在的邏輯分區LV不夠用了,extendlv命令就派上用場了,因為是裸設備沒有文件系統,chfs是修改文件系統的,自然是無法使用的。

6、那如果我硬是要把extendlv和chfs一起用會怎麼樣呢?結果就是chfs對LP數量的操作的優先級會比extendlv的高,直接的表現就是chfs會修改extendlv修改過的LP數量。舉個栗子,擴容之前的LV只有1個LP,我先用extendlv把LP增加到2個,如果我現在用chfs擴容文件系統到剛好兩個LP大小的容量,會發生什麼呢?結果就是它就只用了兩個LP,並不會出現extendlv擴出來的一個LP不用而chfs又新加了一個LP的導致一共有3個LP但只能用2個LP的情況,所以這裡就可以看出chfs對LP的操作會比extendlv的優先級高。再舉個栗子,擴容前的LV還是只有1個LP,我用extendlv把LV增加7個LP,就是現在有8個LP了,此時我再用chfs把文件系統擴容到4個LP大小的空間,會發生什麼呢?結果就是LV只有4個LP了,也就是說chfs把LV的LP數量修改到了用戶指定的4個LP大小的空間,之前extendlv設定的LP數量被覆蓋掉了。

好了,AIX的文件系統和LV的擴容也算是基本搞清楚了,記錄下來以備用。

Copyright © Linux教程網 All Rights Reserved