歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux服務器 >> Linux系統服務器的存儲空間巧妙管理

Linux系統服務器的存儲空間巧妙管理

日期:2017/3/2 16:52:59   编辑:Linux服務器

對於Linux用戶而言,在安裝一台Linux機器的時候,遇到的問題之一就是給各分區估計和分派足夠的硬盤空間。無論對一個正在為服務器尋找空間的系統管理員,還是一個磁盤即將用盡的普通用戶來說,這都是一個非常常見的問題。一般我們會想到解決的方法是:

  1. 掛接一個新的硬盤,然後使用符號鏈接,鏈接到新的硬盤。

  2. 利用一些調整分區大小的工具(比如Pqmagic),進行無損傷數據分區。

  一、問題的提出

  但是,這些都只是暫時性的解決辦法,而且都需要讓機器停止運行或者持續很長時間的分區工作而不能正常提供服務。即使緩解了硬盤空間問題,不久,仍然會面臨同樣的問題。

  這對於一個大型站點來說,有著數量眾多的客戶、又連接在互聯網上,只要你的服務器關機一分鐘,都會給公司帶來很大損失。此外,使用這種方法,在修改了分區表之後,每一次都得重新啟動系統。因此,我們可以采用新技術LVM(邏輯卷管理程序)可以幫助我們解決這些問題。

  二、什麼是LVM

  LVM(Logical Volume Manager,邏輯卷管理器)是一種把硬盤驅動器空間分配成邏輯卷的方法,使硬盤不必使用分區也能被簡單地重新劃分大小。傳統上,一個分區大小是靜態的。假如一個用戶在這個分區上沒有空間時,他要麼重新分區(這可能要求整個操作系統重裝),要麼像符號連接一樣使用組裝機。

  使用LVM,硬盤驅動器或硬盤驅動器集合就會分配給一個或多個物理卷(physical volumes)。物理卷被合並成邏輯卷組(logical volume group),惟一例外的是/boot分區。由於物理卷無法跨越一個以上驅動器,如果想讓邏輯卷組跨越一個以上驅動器,就應該在驅動器上創建一個或多個物理卷。邏輯卷組被分成邏輯卷(logical volumes),被分配了掛載點(如/home和/),以及文件系統類型(如ext3)。當“分區”達到了它們的極限,邏輯卷組中的空閒空間就可以被添加給邏輯卷來增加分區的大小。當某個新的硬盤驅動器被添加到系統上,它也可以被添加到邏輯卷組中,邏輯卷是可以擴展的分區。 由於LVM允許在機器的物理存儲資源以外創建邏輯卷,並且邏輯卷可以在系統仍處於運行狀態時擴充和縮減,所以就為Linux系統管理員提供了他們夢寐以求的存儲器靈活性。

  LVM的作用:LVM 的實際運作情形則根據作法不同,而有所差異;但 LVM 通常包括實體儲存分群(physical storage grouping)、重設邏輯扇區大小(logical volume resizing)、以及數據轉移(data migrating)。

  三、LVM的歷史

  當然,LVM並不是最新技術,早在UNIX操作系統時代,像HP,IBM AIX上就可以看到VM的身影,作為IBM的旗艦產品,AIX很早就支持了動態邏輯分區(DVM),當然,它的DVM設計是比較厲害的,此後在AIX 5L中,重構了UNIX內核,增加了邏輯卷管理(LVM)和日志文件系統(JFS)等功能。使之AIX更加強大。在各種商業UNIX系統中,譬如AIX,HP-UNIX,Tru64 UNIX等系統中,邏輯卷管理已經被廣泛采用,成了事實上的一個標准。

  LVM 的功能於2.3 內核發展中版本納入支持。2001年1月,Linux 2.4.0內核發布,開始正式支持邏輯卷管理,使得Linux新內核更適應於服務器的應用。以前版本的Linux必須要在內核上打上相應的補丁才到實現LVM功能。現在,我們看到從Redhat Linux 9.0已經在內核級支持LVM.因此,我們可以使用LVM來幫助我們更加有效的管理磁盤。

  要注意的是 LVM 有兩個版本,分別為 LVM 1 與 LVM 2,相關工具與設定方式會有些差異性,本文都會使用 LVM 2 的環境介紹使用。LVM1 命令只能在 2.4 內核上工作。當運行 2.6 內核時,不能使用 LVM1 命令。關於更多關於 LVM2 的信息,請參閱 /usr/share/doc/lvm2*/WHATS_NEW.一個完整的 LVM2 命令被安裝在 /usr/sbin/.在 /usr/ 還無效的啟動環境中,每個命令前需要加上 /sbin/lvm.static(例如, /sbin/lvm.static vgchange -ay)。 在 /usr/ 有效的環境中,不再需要在每個命令前加 lvm (例如,/usr/sbin/lvm vgchange -ay 變為 /usr/sbin/vgchange -ay)。 新的 LVM2 命令(例如,/usr/sbin/vgchange -ay 和 /sbin/lvm.static vgchange -ay)會檢測您是否在運行 2.4 內核。如果是,它會調用舊的 LVM1 命令。

  四、LVM結構和分類

  LVM是邏輯盤卷管理(Logical Volume Manager)的簡稱,它是Linux環境下對磁盤分區進行管理的一種機制,它將多個物理分區匯聚為一個卷組(Volume Group),而且這些物理卷的大小可以不相同,甚至類型也可以不同(如SCSI、SATA磁盤)。組成的卷組就像一塊大硬盤,然後再從中分割出一塊一塊的邏輯卷(Logical Volume),並進一步在邏輯卷組上創建文件系統

Copyright © Linux教程網 All Rights Reserved