注:LVM现在有LVM1,LVM2两种版本,本文使用的是LVM2

什么是 LVM ? (Logical Volume Manager(逻辑卷管理))

LVM为电脑提供了更高层次的磁盘存储。
他使系统管理员能够更方便的为应用和用户分配存储空间。
在LVM管理下的存储卷能够按需要随时改变大小和移除
(可能需对文档系统工具进行升级)。LVM也允许按用户组对存储卷进行管理,
允许管理员用更直观的名称(如"sales'、'development')代替物理磁盘名
(如'sda'、'sdb')来标识存储卷。

简单的说就是LVM管理介于物理介质(hda,md,loop)和文档系统(ReiserFS)之间
使用LVM能够灵活的管理分区,在需要时,方便的增加或减小分区的大小
不用重新"格式化",甚至不用重新启动系统,这对于服务器系统来说很实用。
对于个人用户也是分区管理的绝佳选择,例如用几十G的空间来装linux
分区是很头疼的,简单的分成 "/","SWAP" 太过草率,也不利于管理,而分出/usr
/var /opt .... 对于每个分区大小要评估的准确,不然以后使用中出现
空间不够的情况,可能就需要转移数据,重新分区,很麻烦。

而使用LVM管理,就容易多了,能够先按照当前需要分配空间,当不够用的时候再增加
而这一切只是简单的几条命令就能够完成,甚至不用重新启动就能够使用扩展后的空间了。

使用LVM2需要三件事:

1. 安装device-mapper库
2. 安装lvm2 tools
3. 在内核中支持device-mapper


注意:以下方法仅适用于2.6.x内核,使用udev或devps管理设备文档。
2.4.x内核请周详查看device-mapper的INSTALL文档。


首先下载device-mapper库连同lvm2 tools:
http://sources.redhat.com/lvm2/ 这里会得到lvm2相关资源信息
ftp://sources.redhat.com/pub/dm/ 这里下载device-mapper库
ftp://sources.redhat.com/pub/lvm2/ 这里下载lvm2 tools
我使用的版本是:LVM2.0-stable.tgz device-mapper-stable.tgz

安装device-mapper库,lvm2 tools :

device-mapper-stable.tgz使用如下命令安装:
tar zxvf device-mapper-stable.tgz &&
cd device-mapper.1.00.21/ &&
./configure && make && make install


安装好device-mapper后安装lvm2.0-stable.tgz :
tar zxvf LVM2.0-stable.tgz &&
cd LVM2.2.00.33 &&
./configure && make install

内核中支持device-mapper :

就是这里,害我编译内核十几次,我使用的是2.6.10-mm3支持ReiserFS 4.0的内核

代码:
Device Drivers --->
[*] Multiple devices driver support (RAID and LVM) ---->
<*> Device mapper support
< > Crypt target support
< > Snapshot target (EXPERIMENTAL)
< > Mirror target (EXPERIMENTAL)
< > Zero target (EXPERIMENTAL)


只是支持了Device mapper,没有选择其他的特性。

编译安装好device-mapper lvm-tools 后,使用pvcreate,vgcreate成功的创建了
物理卷(PV),卷组(VG),当使用lvcreate创建逻辑卷(LV)时,出现了"segment fault"

首先怀疑是因为gcc的CFLAGS,CXXFLAGS(优化参数)造成的,于是unset CFLAGS CXXFLAGS
重新编译device-mapper lvm2,仍然出现错误。
难道是内核错误?重新编译内核......

将Device mapper support 下面的全部选择,编译进核心,仍然错误。。。。
编译内核去掉CFLAGS,CXXFLAGS再编译,还是错误。。。。 莫非是整个环境问题?
换到未优化的lfs中,编译。。安装。。。。错误。。。Sad

不甘心,换到Mandrake 使用标准2.6.10内核,另一个.config编译,安装。。
竟然成功了!?把这个内核作为两个lfs的内核启动,竟然都正常了!
把成功的.config 拿到2.6.10-mm3中,编译。。。。安装。。。又出错了。。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!