Chinaunix首页 | 论坛 | 博客
  • 博客访问: 31517
  • 博文数量: 24
  • 博客积分: 1080
  • 博客等级: 少尉
  • 技术积分: 280
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-26 18:11
文章分类

全部博文(24)

文章存档

2011年(1)

2009年(23)

我的朋友
最近访客
lvm

分类: LINUX

2009-05-30 13:10:22

Lvm的使用与管理

 

概述

Lvm是解决重新调整硬盘分区的有效工具,同时使用lvm调整分区时不需要重新启动系统。

 

使用方法

1 想要使用lvm首先需要知道的三个名词: 物理卷PV 卷组VG 逻辑卷LV

 

2 建立的过程

 PV--VG--LV。创建后可随时更改逻辑卷的大小

 

建立过程

1使用RHEL4系统作为vmguest,添加两块硬盘。

 

 

 

1        fdisk -l

fdisk /dev/sda

N

P

1

T

L

8e---lvm

W

partprobe

fdisk划分sda1,sdb1,并且将这两个分区的标志(键入t)改为(0x)8e

        然后用通知OS磁盘分区的变化

 

2        pvcreate /dev/sda1 /dev/sdb1(-s xxM可设定PE大小)

        创建pv sda1,sdb1

Pvscan

Pvdisplay

 

3        vgcreate vg1 /dev/sda1 /dev/sdb1

        sda1,sdb1加入逻辑卷组vg1

Vgscan

Vgdisplay

 

4        lvcreate -L 100M -n lv1 vg1

        从我们的vg1中,创建一个100M的逻辑卷lv1

Lvscan

Lvdisplay

 

5        mkfs.ext3 /dev/vg1/lv1

        格式化我们的lv1,文件系统用ext3

 

6        mkdir /mnt/lvm;mount /dev/vg1/lv1 /mnt/lvm

        lv1挂载到/mnt/lvm

 

好了,这样一个创建lv的例子完成

 

4) 如何动态放大/缩小一个逻辑卷/逻辑卷组

 

1        lvextend -L+200M /dev/vg1/lv1

        lv1增加200M

2        ext2online        /dev/vg1/lv1

        lv1容量更改立即生效

lvscan

减小lv,网上很多文章介绍的是ReiserFS,这里我们是ext3文件系统,如果我们需要减少50M

 

1        umount /mnt/lvm

        这里,需要先卸载分区

2        mke2fs -n /dev/vg1/lv1

        计算lv1block

        这里一定要加-n参数,这是计算lv1block数,而不是格式化分区,注意。

        并且注意,从MB->KB这些的计算,都是乘1024,不是1000,这是个细节问题

3        计算减少50M后的block数。从mke2fs -n /dev/vg1/lv1,我们可以得出2个需要的信息:

        Block sizeblocks,这两个数的乘积就是分区大小A(单位字节)

        我们把需要减小的容量50M换算成字节B,然后A-B的结果除以Block size,就是剩余的block

4        resize2fs -f /dev/vg1/lv1 剩余的block

        调整文件系统大小

5        lvreduce -L-50M /dev/vg1/lv1

        调整lvm分区大小,减小50M

6        重新mountdf察看一下容量的减小

 

动态加大VG

这里我们新增一个PV并加入VG

 

1        fdisk增加一个(0x)8e标志的分区/dev/hda7

2        vgextend vg1 /dev/hda7

 

好了,vg增大了

 

缩小逻辑卷组VG

 

1        搬移PV中的资料(只限于同一VG)

        #pvmove [-n ] []

       

        #pvmove /dev/sda1 /dev/sdb1

        VGpv sda1的内容搬移到sdb1

        pvmove /dev/sda1(也可以这样,lvm决定hda2的内容被复制到哪里)

2        vgreduce vg1 /dev/sda1

        vg sda1移除

 

5) 如何删除逻辑卷/逻辑卷组

 

删除VG流程:

 

1        umount /挂接点

2        lvremove /dev/vg1/lv1

        移除逻辑卷,这里是lv1

3        vgchange -a n vg1(关闭vg1)

4        vgremove vg1

        移除vg1

 

6) lvm相关命令

 

这个表格,你可以在RHCE_Study_Guide.pdf上找到

 

        Physical Volume                Volume Group        Logical Volume

scan        pvscan                         vgscan                lvscan

create        pvcreate                 vgcreate        lvcreate

display        pvdispaly                vgdisplay        lvdisplay

remove        pvremove                vgremove        lvremove

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