Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1196226
  • 博文数量: 245
  • 博客积分: 10185
  • 博客等级: 上将
  • 技术积分: 2744
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-30 17:07
文章分类

全部博文(245)

文章存档

2015年(1)

2014年(1)

2013年(1)

2012年(1)

2011年(37)

2010年(20)

2009年(14)

2008年(38)

2007年(88)

2006年(44)

分类: LINUX

2007-08-08 12:27:21

LVM(Logical Volumn Manager):

总体思路:分区成LVM格式(8e)---PV创建--VG创建---LV创建---格式化分区---MOUNT分区----e2fsadm调整LV大小
几个关键词:
PV (Physical Volumn);VG(Volumn Group); LV(Logical Volumn);PE(Physical Extend
物理块 default 4M); LE(Logical Extend逻辑块
) PE:LE=1:1(Normal)
LVM
的结构简图如下:

   hda1  hdc1  sdc     (PV:s  
物理卷,一般为分区或整个硬盘)                        
      \   
   /                                                                    
       \  
  /                                                                     
       diskvg          (VG 
卷组由物理卷组成
)                                                       
       /  |  \                                                                  
      /   |   \                                                                 
  usrlv rootlv varlv   (LV:s 
逻辑卷在卷组上创建
)
    |      |     |                                                              
 ext2  reiserfs  xfs   (
建立在逻辑卷上的文件系统
)

PV:  
实体分割区(Partition
/dev/had...
VG:  
虚拟硬盘
   /dev/vg_name
LV
 虚拟分割区
  /dev/vg_name/lv_name
LVM
创建过程:

如有三个硬盘hda2(3G)/hdb2(3G)/hdc2(3G)/hdd2(3G)+hda1(100M boot分区)

1
、创建分区:

    fdisk /dev/hda(..hdb..hdc..hdd) -----p---n--t--8e---p--w--- reboot
     
(分出hda2/hdb2/hdc2/hdd23G的分区,分区格式为8e(lvm分区)
2
、创建物理卷(PV)
     pvcreate [-v] /dev/hda2 /dev/hdb2 /dev/hdc2 /dev/hdd2
     ***
创建物理卷(PV)之前可以通过pvscan 查看是否有物理卷及其信息,如pvscan查看到现有PV(如/dev/hdb1/dev/hdc1)属于VG (如VG0),则可以通过
     pvdisplay /dev/hdb1
查看现有LVM的情况。 
     ****-v
显示创建的全部过程,可以省略
   

3
、创建卷组
(VG):
     vgcreate [-v]  [-s 8M]vg01 /dev/hda2 /dev/hdb2 /dev/hdc2 /dev/hdd2
     ***
创建卷组(VG)之前可以通过vgdisplay查看现有卷组信息;

     *** -s 
创建的VGPE大小(如8M),默认省略不写为4M,必须是4的整数倍;
     ***VG
创建好后,自动就Active起来,若没有自动Active则可以通过  vgchange -a y vg01激活 VG;也可以通过vgchange -a n vg01 关闭Actice VGDeactive;
     ***
只有对Deactive VG才能进行更改、删除;VG的重命名不需要Deactive,如
 vgrename old_vg_name new_vg_name;
     ***vgremove 
删除现有VG :vgremove vg_name;必须是
Deactive VG.
     ***
若在创建了LVM后发现硬盘空间不够,则可以创建一个LVM分区,通过pvcreate激活此分区,再通过vgextend加入到现有VG中以扩充空间。

      pvcreate /dev/hde2  ; vgextend -v vg01 /dev/hde2   
hde2加入到现有vg01中以扩充空间。
      ***
若要删除VG中的PV,必须先确认此PV没有被VG所使用:/dev/hdd2,先查看pvdisplay /dev/hdd2 中的PV Status,若为Not Availiable则可以删除;
      vgreduce -v vg01 /dev/hdd2

4
、创建逻辑卷(LVM):

    
命令lvcreate的常用方法:
 
   lvcreate [options]  -n 
逻辑卷名  卷组名

   
其中的常用可选项有:
   "-i Stripes 
:采用交错(striped)方式创建LV,其中Stripes指卷组中PV的数量。
   "-I Stripe_size 
:采用交错方式时采用的块大小(单位为KB)Stripe_size必须为2的指数:2N N=2,3...9
   "-l LEs 
:指定LV的逻辑块数。
   "-L size 
:指定LV的大小,其后可以用KMG表示KBMBGB
   "-s 
:创建一已存在LVsnapshot卷。
   "-n name 
:为LV指定名称。

   
创建普通LV  
    lvcreate -L 5G -n lv01 vg01  
创建一个名为lv015G 虚拟分区在虚拟硬盘vg01
   /dev/vg01/lv01
    lvcreate -i 4 -I 8 -L 4G -n lv02  vg01  [-i 
VG中组成PV的分区个数,-I 块大小,-L LV的大小
]
   
创建快照LV

    lvcreate -s -i 4 -I 16 -L 2G -n lv03_snapshot vg01

5
、创建文件系统:
      mke2fs -j /dev/vg01/lv01   (mkfs.ext3 /dev/vg01/lv02;  mkfs.ext3 /dev/vg01/lv_snapshot)

6
、挂载:
    mkdir /mnt/lv01 ;
    mount -t ext3 /dev/vg01/lv01  /mnt/lv01;

7
、增、减LV大小:
    umount  /lv01;
    e2fsadm -L+100M(-100M) /dev/vg01/lv01
****
总结:

1) fdisk /dev/hd?--8e (/dev/hda2;/dev/hdb2;/dev/hdc2/;dev/hdd2)
2) pvcreate /dev/hda2 /dev/hdb2 /dev/hdc2
3)vgcreate vg01 /dev/hd2 /dev/hdb2 /dev/hdc2
4)lvcreate [-s] [-i pv_pation_count] [-I n*2k] -L 
分区大小 [-n lv_name]  vg01
5)mke2fs [-j] /vg01/lv_name
6) mkdir /mnt/mnt_point;  mount -t ext3 /dev/vg01/lv_name  /mnt/mnt_point;

 
增加硬盘已扩充分区容量:

1) pvcreate /dev/hdd2;
2) vgextend vg01 /dev/hdd2;
3)lvextend -L+100M /dev/vg01/lv_name; (
在线扩充分区大小)  lvreduce -L -100M /dev/vg01/lv_name (在线扩充分区大小)
VG中有容量未分配可以通过以下方法增加(或减少)分区容量:
1) umount /mnt/mnt_point;
2) e2fsadm -L+100M /dev/vg01/lv_name
**
以上扩充必须是LV中最后一个LV(/dev/vg01/lv01;/dev/vg01/lv02; /dev/vg01/lv03)
只能正常、正确扩充最后一个LV lv03;若扩充lv01lv02可能会有问题发生。

 

阅读(1023) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~