Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> LVM磁盤管理技術案例講解

LVM磁盤管理技術案例講解

日期:2017/2/7 16:59:02      編輯:Linux教程
  LVM是什麼?
  恩,全稱就是"邏輯盤卷管理" 英文全稱是"Logical Volume Manager".

  干嗎用的?

  恩,當我們硬盤空間不夠時候,如C盤(舉個通俗例子,linux沒C,D概念之說),如果沒有LVM管理話,可能我們要備份數據,然後格式化,重新添加分區.豈不是很麻煩,不過如果有了LVM技術的話,就不存在這樣的問題了.所以,用在服務器上是很方便的一門技術了.關鍵是,還不花錢.     網上有很多LVM知識解說的文章,說的比我詳細多了,在此粘貼兩經典文章的網址:   1:  http://www.chinalinuxpub.com/read.php?wid=834   2:  http://haka.sharera.com/blog/MyNetMark/954/0.htm     不過,鑒於實踐是檢驗成果的唯一標准,我也就自己重新認真的操作了一遍,可比看人家文章更容易理解了.     先復習下LVM裡面的基本必須記住的專業術語.偶會寫上自己的理解的.FYI.     1: PV (Physical Volume) 中文名:物理卷 相關命令: pvcreate  pvdisplay pvscan

   定義:  物理卷就是指硬盤分區或從邏輯上與磁盤分區具有同樣功能的設備(如RAID),是LVM的基本存儲邏輯塊,但和基本的物理存儲介質(如分區、磁盤等)比較,卻包含有與LVM相關的管理參數

  個人理解:  PV不是分區, 我們使用pvcreate來將一個或多個物理分區創造成PV.這是做LVM的第一步.     2: VG (volume group) 中文名: 卷組 相關命令: vgcreate vgdisplay  vgscan

   定義: LVM卷組類似於非LVM系統中的物理硬盤,其由物理卷組成。可以在卷組上創建一個或多個“LVM分區”(邏輯卷),LVM卷組由一個或多個物理卷組成。

  個人理解: 只有通過PV將分區變成物理卷後, 我們才能將這變成的一個或多個物理卷組合成一個卷組.就相當於,將幾個班的教室合並成一個班樣(vgcreate).以後,就可以隨意分配學生了(LV).當然,前提就是將這些學生pvcreate成同一個年級(PV)了.     3:  LV (logical volume ) 中文名: 邏輯卷 相關命令: lvcreate lvdisplay lvscan

  定義: LVM的邏輯卷類似於非LVM系統中的硬盤分區,在邏輯卷之上可以建立文件系統(比如/home或者/usr等)

  個人理解:  我們可以通過lvcreate在VG中劃分出某個區域.然後通過mount到某個文件夾中,這樣,偶們就可以使用這個區域了.注意哦,是在這個卷組中劃出一塊地出來使用,當然了,如果這塊的太少了,我們可以很輕松的把別人的地挪到自己這來.地裡面的莊稼當然不會少了.如果覺得地太多了,割出部分出去,莊稼會自動騰到沒割的地方去.這就是LVM的好處了.
    OK,下面來看下我的操作過程了,其它的概念大家可以去看下別人寫的文章.很詳細的.     假設我有一塊空閒硬盤,硬盤符是/dev/sdb,在裡面分了三個分區,分別是 /dev/sdb1  /dev/sdb2  /dev/sdb3 三個都分別是100M.看下 [root@localhost /]# fdisk /dev/sdb
Command (m for help): p Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1          13      104391   8e  Linux LVM   
#看到Id是8e哦.
/dev/sdb2              14          26      104422+  8e  Linux LVM
/dev/sdb3              27          39      104422+  8e  Linux LVM
    好得,下一步,建立物理卷PV [root@localhost /]# pvcreate /dev/sdb1 /dev/sdb2 /dev/sdb3
  Physical volume "/dev/sdb1" successfully created
  Physical volume "/dev/sdb2" successfully created
  Physical volume "/dev/sdb3" successfully created

    創建VG卷組 [root@localhost /]# vgscan   #一般我們初始建立卷組時都要先scan下.
  Reading all physical volumes.  This may take a while...
  Couldn't find device with uuid '6T3gUb-fFdj-MMUL-wUTN-qdXG-8iEP-KsWbgb'.
  Couldn't find all physical volumes for volume group VolGroup00.
  Couldn't find device with uuid '6T3gUb-fFdj-MMUL-wUTN-qdXG-8iEP-KsWbgb'.
  Couldn't find all physical volumes for volume group VolGroup00.
  Volume group "VolGroup00" not found
[root@localhost /]# vgcreate vg0 /dev/sdb1 /dev/sdb2  #建立卷組,名字叫:vg0
  Volume group "vg0" successfully created
[root@localhost /]#
[root@localhost /]# vgdisplay vg0  
# 查看下卷組vg0得情況
  --- Volume group ---
  VG Name               vg0
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               200.00 MB
  PE Size               4.00 MB  
#默認PE 都是4M, 通過 vgcreate -s 8M 可修改.
  Total PE              50
  Alloc PE / Size       0 / 0
  Free  PE / Size       50 / 200.00 MB
  VG UUID               WKRPJT-MI6G-vGk9-vne2-Gfg2-sAry-llsF7B

請輸入內容     OK,下面是建立邏輯卷了,在這不我添加了名字為data 的邏輯卷了. 注意:-L 和-l的區別,前面是根據大小來的,後面的是根據塊數來的,也就是幾個PE. [root@localhost /]# lvcreate -n data -L 10M vg0  #建立名為data,大小10M
  /dev/cdrom: open failed: Read-only file system
  Rounding up size to full physical extent 12.00 MB
  Logical volume "data" created
[root@localhost /]# lvdisplay 
#查看下邏輯卷情況
  --- Logical volume ---
  LV Name                /dev/vg0/data
  VG Name                vg0
  LV UUID                qrC9H4-iHWi-Si4m-hN7G-x6Cm-yupr-aXRBVi
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                12.00 MB 
#為什麼是12M呢?我不是輸入10M大小的嗎?
  Current LE             3           就當是個問題考考大家了,
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:2
  Couldn't find device with uuid '6T3gUb-fFdj-MMUL-wUTN-qdXG-8iEP-KsWbgb'.
  Couldn't find all physical volumes for volume group VolGroup00.
  Couldn't find device with uuid '6T3gUb-fFdj-MMUL-wUTN-qdXG-8iEP-KsWbgb'.
  Couldn't find all physical volumes for volume group VolGroup00.
  Volume group "VolGroup00" not found
[root@localhost /]# mkfs.ext3 /dev/vg0/data
#格式化成ext3格式.
mke2fs 1.35 (28-Feb-2004)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
3072 inodes, 12288 blocks
614 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=12582912
2 block groups
8192 blocks per group, 8192 fragments per group
1536 inodes per group
Superblock backups stored on blocks:
        8193
Writing inode tables: done
Creating journal (1024 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 35 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@localhost /]# mount /dev/vg0/data /mnt/ 
#mount到/mnt文件夾
[root@localhost /]# cp /etc/services /mnt/ 
#拷貝個文件進去試下
[root@localhost /]# ls /mnt/ 
#看下,裡面已經有個services文件了.成功.
lost+found  services
[root@localhost /]# umount /mnt/ 
[root@localhost /]# lvextend -L +10M /dev/vg0/data  #擴展邏輯卷大小
  /dev/cdrom: open failed: Read-only file system
  Rounding up size to full physical extent 12.00 MB
  Extending logical volume data to 24.00 MB
  Logical volume data successfully resized

    OK,試驗就做到這了,是不是很容易啊,其它比如物理卷擴展大小,刪除等操作其實已經大同小異了.
Copyright © Windows教程網 All Rights Reserved