Partition Magic可以說是windows下的分區利器,在一塊硬盤上想怎麼分就怎麼分,分好之後一個重啟就一切搞定。在Linux下又怎麼樣呢? fdisk不能很好的進行分區大小的resize,一旦用fdisk分好區,再想改變分區大小就很麻煩。那麼是不是在Linux下就沒有辦法呢?非也!
我們 Linuxer 也有硬盤分區管理超級武器--LVM。
LVM(Logical Volume Manager),linux 下的多硬盤管理軟件,它可以把多個硬盤(PV)當作一個硬盤組(VG),在這個硬盤組上用戶可以任意的對分區(LV)進行操作。 比如,你有三塊硬盤 PV1, PV2, PV3,LVM會把它們當作一個硬盤 (VG),在這個VG上你可以任意創建分區(LV),並可以對這些分區進行任意修改(類似Partition Magic),所有修改即時生效無須重啟。除此之外,LVM還可以無限量的對VG進行擴充,也就是說,當你原有的所用硬盤都滿了,想添加了一塊新硬盤的時候,你可以通過LVM把新的硬盤添加到你原有的VG中,並把添加進來的硬盤空間分給你想要擴大的分區。簡單的說就是,在不改變當前分區結構情況下,任意擴大分區大小。
來看一個簡單的例子。經過長時間的BT下載,你的硬盤已滿,其中有一個media分區主要存放媒體文件,現在你要添加一個塊新的硬盤,這塊硬盤的主要用途是繼續存放媒體文件。
Windows下的做法
裝入硬盤,格式化,分出一個media分區來繼續存放媒體文件,這樣你就有兩個media分區,如果再滿,再分一個... 日積月累你會有N個分區存放相同類型的文件,文件查找起來相當不便。 這對於個人用戶來說還能接受,但是對於服務器是致命的。
Linux下不使用LVM
和Windows下查不多,不同在於,多了很多掛載點而已
Linux下使用LVM
裝入硬盤,把硬盤加入已有的硬盤組(VG)中,在硬盤組中擴充media分區。你始終還是只有一個media分區。
說了那麼多大道理,牛刀小試一下。在試刀之前要說明的是,現在大多數的linux發行版都使用了LVM進行默認分區安裝,fedora 7當然也不例外。
大部新人裝 fedora 7都是一路 Next, 很少會去手動分區。安裝玩後的默認分區大概如下:
--/boot
--VolGroup00
|--LogVol00 ( / )
|--LogVol01 ( Swap )
fweewedsdfqweqw
在我的分區表裡
/dev/sda7 是 /boot
/dev/sda8 是 VolGroup00 (VG)
如果你是默認安裝,在root權限下用
# vgdisplay VolGroup00 查看硬盤組(VG)信息
# lvdisplay VolGroup00 查看分區(LV)信息
由於是默認安裝, 我的swap是2G,這樣太浪費了。所以打算把它減少一點,因為swap在VolGroup00中,所以調整大小非常方便,
具體操作如下:
關閉swap先
# swapoff -v /dev/VolGroup00/LogVol01
減少1G(如果想加,只要把- 改成+就好了,前提是有多余空間)
# lvm lvreduce /dev/VolGroup00/LogVol01 -L -1G
格式化swap(只有更改swap的時候需要重新格式化,其他的分區不需要格式化,直接減完就可以了)
# mkswap /dev/VolGroup00/LogVol01
重新打開swap
# swapon -va
swap更改完畢,就這麼簡單。
現在你已經有了多余的1G硬盤空間了,可以把它擴展到根目錄( / )下,同樣很簡單,如下:
增加1G到LogVol00
# lvextend -L+1G /dev/LogVol00
上一步只是增加了LogVol00,增加的部分還沒有文件系統
# resize2fs /dev/LogVol00
根目錄( / )增加完畢
很簡單吧,這只是LVM的一小部分應用