一个逻辑卷[LV]可以跨多个卷组[VG]文件系统建立在逻辑卷基础上,如果逻辑卷不建立文件系统,那么该逻辑卷就是裸设备。[在LV上没有用NEWFS建立文件系统,那这个LV就还是裸设备,只当它建立文件系统之后,便不能成为裸设备。]问题:一个逻辑卷可以建立多少个裸设备?-----------hp unix-------------------------物理卷(Physical Volume)称为PV:指物理上的硬盘,一个硬盘就是一个PV;逻辑卷(Logical Volume)称为LV:相当于对大硬盘进行逻辑分区,一个VG里可有若干个LV。逻辑卷组(Logical Volume Group)称为VG:一个VG包含整数个PV,可理解为一个大硬盘。文件系统(File System):在逻辑卷的基础上,可建立文件系统,然后MOUNT到一个目录下,这样就可以文件存取的方式来使用这块硬盘了。当然,您也可以不建文件系统,而直接把LV当作裸设备,以TRUNK方式来存取数据,许多数据库都是用这种方式存取数据。-----linux-----1物理卷-简称PV 物理卷在逻辑卷管理器中属于最底层的,任何的逻辑卷和卷组都必需依靠物理卷来建立,物理卷可以是一个完整的硬盘,也可以是硬盘中的莫一个分区 2卷组-简称VG 卷组是建立在物理卷之上,一个卷组中可以包含一个物理卷组或者多个物理卷 3逻辑卷-简称LV 逻辑卷是建立在卷组之上的,卷组中的空间可以建立多个逻辑卷,并且逻辑卷可以随意从卷组的空闲空间中增减,逻辑卷可以属于一个卷组,也可以属于不同的多个卷组 4 物理区域-简称PE 物理区域是物理卷中最小的可分配储存单元 5 逻辑区域-简称-LE 逻辑区域是逻辑卷中可用于分配的最小储存单元 6 卷组描述区域-简称VGDA 用于描述物理卷,卷组,逻辑卷分配的所由信息 物理介质 The physical media 你应该感受“物理”这个单词有极大的延伸,虽然我们刚开始假设它仅仅是一个硬盘,或者一个分区。例如,/dev/hda,/dev/hda6,/dev/sda。你可以转换一个块设备上任何连续块到一个。。。 物理卷 Physical Volume (PV) 一个PV只不过是有许多管理数据添加在它里面的物理介质--一旦你添加了它,LVM就认为它是。。。的一个持有者。 物理分区 Physical Extents (PE) 物理分区真的象一些大的数据块,通常有几MB。PE可以分配给一个。。。 卷组 Volume Group (VG) 一个VG是由许多物理分区组成的(可能来自多个物理卷或硬盘)。虽然这可能容易让你认为一个VG就是由几个硬盘组成的(例如/dev/hda和/dev/sda),但是更确切的说,它包含由这些硬盘提供的许多PE。 >从这个卷组,PE可以分配给一个。。。 逻辑卷 Logical Volume (LV) Yes,我们最终到达某处。一个逻辑卷是我们工作的最终结果,这里是我们存储信息的地方。这等同于传统分区的想法。 象用通常的分区一样,在逻辑卷上你能代表性的创建一个。。。 文件系统 Filesystem 文件系统是你想它成为的形态:标准的 ext2,ReiserFS,NWFS,XFS,JFX,NTFS,等等。。。对Linux内核来说,在通常的分区和逻辑卷之间没有差别。 我试着画了一个ASCII图来使这些形象化。 一个物理卷,包含了许多物理分区:+-----[ Physical Volume ]------+| PE | PE | PE | PE | PE | PE |+------------------------------+一个卷组,包含了2个物理卷(PV)有6个物理分区:+------[ Volume Group ]-----------------+| +--[PV]--------+ +--[PV]---------+ | | | PE | PE | PE | | PE | PE | PE | || +--------------+ +---------------+ |+---------------------------------------+ 我们现在做更进一步扩展:+------[ Volume Group ]-----------------+| +--[PV]--------+ +--[PV]---------+ || | PE | PE | PE | | PE | PE | PE | || +--+---+---+---+ +-+----+----+---+ || | | | +-----/ | | || | | | | | | || +-+---+---+-+ +----+----+--+ || | Logical | | Logical | || | Volume | | Volume | || | | | | || | /home | | /var | || +-----------+ +------------+ |+---------------------------------------+---true64------*磁盘介质Disk Media,显示为DM,对应于物理硬盘或其的一个分区。 *细分磁盘SubDisk,显示为SD,是在磁盘介质上对空间作进一步细分。 *卷束Plex,显示为PL,建立在SD上,多个卷束可以构成镜像卷或RAID5卷。 *逻辑卷Volume,显示为V,用于建立文件系统或被数据库使用。 *磁盘组 Disk Group,显示为DG,磁盘组包括所有关于逻辑卷的定义和空间。 *文件系统 File System:在逻辑卷的基础上,可建立文件系统,然后MOUNT到一个目录下,这样就可以文件存取的方式来使用这块硬盘了。当然,也可以不建文件系统,而直接把Volume当作裸设备,以TRUNK方式来存取数据,许多数据库都是用这种方式存取数据。----------------hp unix 逻辑卷管理------------明确了上述概念,我们再来进一步了解在HP-UX下正确使用硬盘的顺序及相应命令:1. 先建物理卷:操作如下:pvcreate -f /dev/rdsk/cCdDtT需要注意的是这里必须使用硬盘的字符设备文件2. 再建逻辑卷组:# mkdir /dev/vg0X X:0_f,逻辑卷组名# mknod /dev/vg0X/group c 64 0x0X0000# vgcreate vg0X /dev/dsk/cCdDtT3. 然后划分逻辑卷:# lvcreate -L size vg0X size:该逻辑卷大小4. 在LV上建文件系统:# newfs -F file_system_type /dev/vg0X/rlvolYfile_system_type:文件系统类型,包括hfs和vxfs,注意此时用该逻辑卷的字符设备文件。5. 将此文件系统Mount到一个目录下:# mkdir /directory# mount /dev/vg0X/lvolY /directory操作截至到这里,已经可以使用这个硬盘了。但有时可能在现有的环境下,需要添加、删除逻辑卷,或者是需要扩大文件系统。我们可以这样做:1. 添加逻辑卷1)添加文件系统卷。例如:在vg01上添加一个200M的文件系统卷,卷名为data,mount到目录/sample 上。A、创建逻辑卷,在系统提示符下键入命令:# lvcreate -L 200 -n data /dev/vg01B、在逻辑卷data上创建文件系统:# newfs -F hfs /dev/vg01/rdata注意:如果是vxfs文件系统,则用# newfs -F vxfs /dev/vg01/rdataC、创建目录/sample,并将逻辑卷data mount 到/sample.# mkdir sample”# mount /dev/vg01/data /sampleD、用bdf命令,将会看到/dev/vg01/data mount 到 /sample上。2) 添加非文件系统卷(raw data volume)。仍让我们以上述操作为例。A、创建逻辑卷,在系统提示符下键入命令:# lvcreate -L 200 -n data /dev/vg01B、创建目录/sample,并将逻辑卷data mount 到/sample.# mkdir sample# mount /dev/vg01/data /sampleC、用bdf命令,将会看到/dev/vg01/data mount 到 /sample上。2. 删除逻辑卷例如:删除 vg01 中名为 data 的逻辑卷,mount 到/sample。1) 卸载所要删除的逻辑卷:A、首先用 umount 命令将逻辑卷 data 从/sample上卸载下来:# umount /sampleB、若系统提示设备忙,不能卸载;则在根目录系统提示符下,键入以下命令,进入单用户:# shutdown -y 0在单用户下,先将所有逻辑卷mount上,键入命令:# mount -a 用bdf命令看该逻辑卷是否已经mount上,如果mount上,键入以下命令:# umount /sample2) 删除逻辑卷 /dev/vg01/data ,用命令:# lvremove /dev/vg01/data 3. 扩大文件系统1) 扩大文件系统,首要任务是要找到这个文件系统所对应的逻辑卷。只有首先扩大逻辑卷,给文件系统以足够大的空间,才能扩大文件系统。2) 为扩大逻辑卷,先进单用户,在根目录系统提示符下,键入命令:# shutdown -y 0 3) 进入单用户后,先将所有文件系统mount上,键入命令:# mount -a 4) 用bdf命令看该文件系统是否已经mount上,如果mount上,用命令 #umount文件系统名umount该文件系统。例如,想要扩大“/usr”到500M ,就键入命令:# umount /usr 5) 用命令: # lvextend -L 500 /dev/vg00/lvol4 这里,假定 /usr 对应 /dev/vg00/lvol46) 用命令:# extendfs /dev/vg00/lvol4 扩大文件系统。注意:如果是vxfs文件系统,则用# extendfs -F vxfs /dev/vg00/lvol4 7) 用命令:# mount /dev/vg00/lvol4 /usr 将文件系统 mount 到 /usr这样,文件系统“/usr”就被扩大了,8) 用命令:# init 3 进入原来多用户运行级。4. UNIX 的文件系统 UNIX的文件系统是树状结构,一般指在一个逻辑卷上的文件的集合。从根部开始,在表面上看,文件系统好象是一个整体,但实际上,文件系统可以分成不同的部分,单独占据一块逻辑卷,就是一个文件系统。 ------------AIX--------------------------------------------aix的lvmAIX中逻辑存储的限制卷组(VG) 255个/每个系统物理卷(PV)32个/每个卷组物理分区(PP)1016个/每个物理卷逻辑卷(LV)256个/每个卷组逻辑分区(LP)32512个/每个逻辑卷AIX系统逻辑卷:Paging Space:/dev/hd6,用于存储虚拟内存中信息的固定的磁盘空间Journal Log:/dev/hd8,用于记录系统中文件系统结构的改变Boot LV:/dev/hd5,用于系统启动映象的物理上连续的磁盘空间AIX系统文件系统:/(root):系统启动进程所需的重要的系统设备信息及应用程序的存储空间/usr:/dev/hd2,系统命令、信息库以及应用程序的存储空间/var:/dev/hd9var,系统的日志文件和打印数据文件的存储空间/home:/dev/hd1,系统中用户数据的存储空间/tmp:/dev/hd3,系统临时文件和用户工作的存储空间LVM操作命令:# lsvg [–o | –l | –p] [VG_Name]查看系统中VG的信息-o:查看系统中活动的VG列表-l:查看属于指定VG的LV的信息-p:查看属于指定VG的PV的信息如:# lsvg –o | lsvg –i –l 查看系统中属于活动VG的LV的信息注意:当用# lsvg –p VG_Name命令查看属于指定VG的PV信息时,系统将给出VG中每个PV上的空闲PP的分布情况(FREE DISTRIBUTION)。如:# lsvg –p rootvgrootvg:PV_NAMEPV_STATETOTAL PPsFREE PPsFREE DISTRIBUTIONhdisk0active1595224..00..00..00..28hdisk1active1597832..02..00..12..32FREE DISTRIBUTION的含义如下:外部边界..外部中间..中心..内部中间..内部边界outer edge..outer middle..center..inner middle..inner edge# lslv [–l | –m] [LV_Name]查看系统中LV的信息-l:查看属于指定LV的LP的分配方式(intra-physical volume)-m:查看指定LV中的LP与PP之间的映射关系(inter-physical volume)注意:当用# lslv –l lv00命令查看属于指定LV的信息时,系统将给出指定LV的LP数及其拷贝数,符合内部物理卷(intra-physical volume)分配方针的PP所占整个LV包含PP数的比例,以及PP在每个PV上的分布情况(DISTRIBUTION)。如: # lslv –l lv00lv00:/home/johnPVCOPIESIN BANDDISTRIBUTIONhdisk0010:000:00030%000:000:007:003:000COPIES的含义如下:第一个拷贝所占的PP数:第二个拷贝所占的PP数:第三个拷贝所占的PP数010:000:000IN BIND的含义如下:符合内部物理卷分配方针的PP数占整个LV的PP数的比例30%DISTRIBUTION的含义如下:外部边界..外部中间..中心..内部中间..内部边界outer edge..outer middle..center..inner middle..inner edge# lspv [–l | –p] [PV_Name]查看系统中PV的信息-l:查看指定PV上的所有LV的信息-p:查看指定PV上所有LP与PP之间的映射关系# mkvg –y VG_Name [–s PP_Size | –n] PV_Name创建新的VG-y VG_Name:指定新创建的VG名-s PP_Size:指定VG中的PP的大小(缺省为4MB(PV的大小小于4.5GB))-n:指定系统启动时不激活新创建的VG如:创建一包含三个PV的PP大为4MB的VG# mkvg –s 4 –y newvg hdisk1 hdisk2 hdisk3# chvg –a n[y]VG_Name更改VG的启动特性-a n[y]:更改系统启动时不自动激活VG(-a n)或自动激活VG(-a y)# extendvg –f VG_Name PV_Name扩展VG的大小-f:强制将原属于其他VG的PV加入此VG# reducevg [–d] VG_Name PV_Name缩小VG的大小-d:强制将此VG中的PV移出此VG注意:AIX中没有删除VG的命令,欲删除一个VG,只要将此VG中的PV全部移除即可。# reorgvg VG_Name LV_Name [LV_Name]重新安排VG中LV的分配策略注意:为了改善系统中磁盘的性能,可以将使用频繁的LV放在VG的中心。# varyonvg [–s] VG_Name激活一个VG-s:将VG置为系统管理模式(不允许用户访问此VG)# varyoffvg [–s] VG_Name关闭一个VG-s:将VG置为系统管理模式(不允许用户访问此VG)注意:当从系统中移出一个VG时,应先使用此命令关闭VG。使用此命令时,VG上的所有LV(系统LV除外)都应处于关闭状态。# importvg –y VG_Name –f PV_Name接入一个VG-y VG_Name:指定欲接入的VG名-f PV_Name:指定任一属于欲接入VG的PV名# exportvg VG_Name输出一个VG注意:将一个VG从系统A移至系统B的正确步骤为:系统A:# umount all# varyoffvg VG_Name# exportvg VG_Name系统B:# impoertvg –y VG_Name –f PV_Name# varyonvg VG_Name# rmlv [–f] LV_Name删除一个LV-f:不要求用户确认直接删除LV注意:不要删除一个还包含有JFS的LV或Paging Space逻辑卷。正确的步骤为:先用SMIT将LV中的JFS删除,再删除LV。# chlv –n New_LV_Name更换LV的名字# migratepv [–l LV_Name] Source_PV Target_PV将一个PV上的数据移至另一个PV-l LV_Name:指定欲迁移的LV名注意:迁移PV上的数据时,要求目标PV(Target_PV)的大小大于源PV(Souce_PV),且目标PV与源PV必须在同一个VG中。注意:当增加一个LV的拷贝数(增加LV的镜像)时,必须用# syncvg命令使LV及其拷贝同步(同步镜像)。FS的管理:JFS的结构:超级块(Superblock)、I节点(inodes)、数据块(间接块)。超级块中包含FS的大小、标识、空闲空间列表、磁盘片段(Fragment)大小以及nbpi(决定FS中inodes的数目)。I节点中包含文件的大小、文件所有者、文件的权限、文件的创建和访问的时间以及指向数据块的指针。数据块中包含实际的数据,缺省大小为4KB。(间接块中包含指向数据块的指针)。注意:超级块(Superblock)的备份放在块31(Block 31)用于超级块的恢复。磁盘片段(Fragment)用于将数据块分割成更小段,以充分利用数据块的空间。但是采用磁盘片段会影响系统的性能。AIX可以采用的磁盘片段大小为:512、1024、2048、4096 Bytes。