文档名称:AIX命令参考手册
文档密级
可以使用不同机型或架构的mksysb备份带来安装。
第5章 存储管理、LVM和文件系统
5.1 相关概念
PV、VG、PP、LV、LP的概念和相互关系。
5.2 逻辑卷管理
5.2.1 LVM配置数据
对vg, lv, 和pv的描述数据并不是只放在一个地方,而是存放在很多地方。 1、ODM数据库
ODM数据库存放着包括所有配置PV、VG和LV的信息,它和VGDA中的信息是镜像的。比如,在import一个vg时,VGDA的信息就会拷贝到ODM库中。
ODM数据库同时也存放着与Logical Volume Control Block(逻辑卷控制块)镜像的信息。
2、VGDA(volume group descriptor area)
在一个vg包含的pv的开始部分,存放着所有的属于该vg的lv、pv的描述信息。
每个硬盘至少包含有一个VGDA,每个VGDA都有个时间戳,它鉴定了该VGDA是否时最新的,有时VGDA没有被同步。所以,有时你需要更新这些没有同步的VGDA信息,这也是varyon程序所要做的。 VGDA是在一块硬盘被分配为PV是分配的,而在一个PV加入一个VG时,该VGDA加入了VG的相关信息,当一个PV从VG删除时,相应的VG信息也从VGDA中删除啦。 3、VGSA(volume group status area) VGSA保存这pv和pp的状态信息。 4、LVCB(logical volme control block)
LVCB位于每个lv的开始部分。它包含每个lv的信息,使用了几百个字
5/1/2013
未经许可不得扩散
第21页, 共70页
文档名称:AIX命令参考手册
文档密级
节空间大小。
如:#getlvcb –TA hd2 (其它命令)
5.2.2 Disk quorum
每个PV上VGDA的个数,主要看该VG包含基本PV。
当一个quorum失去后,该vg自动varyoff掉,使用lvm无法在进入该vg,保证了数据不会丢失。
在镜像情况下,可以把quorum关掉,这时可以提高该vg的可用性,但可能会导致数据丢失的风险,所有要及时更换故障硬盘。
5.2.3 硬盘镜像
Aix提供一个lv级别上的镜像工具,但使用mklv来创建一个lv时,可以选择两到三个拷贝。但为了增强该lv的可用性,需要把这些拷贝放在不同的硬盘上。
mirrorvg命令,也可以使用mklvcopy来镜像某个lv,但前提是目标盘必须已经加入到该vg中去。
1、替换一个坏的硬盘,换上一个新硬盘到一个镜像的vg上: #umirrorvg uservg hdisk4 #reducevg uservg hdisk4 #redev –dl hdisk4 换上一块新硬盘,然后 #extendvg uservg hdisk4 #mirrorvg uservg
2、生成一个严格对应的镜像 #mirrorvg –m datavg hdisk2 hdisk3
3、rootvg的镜像(quorum时候自动关闭)
使用mirrorvg做完镜像后,还需要使用bosboot, bootlist等命令。其中bosboot生成一个新的引导映象,而bootlist是把新的硬盘加入引导行列。 注意:不要没有做成功bosboot就重启机器,很可能导致系统启动不了。 4、非rootvg的镜像
但一个非rootvg的vg镜像后,该quorum会自动关闭,但只有varyoff,varyon该vg后才能生效。
5/1/2013
未经许可不得扩散
第22页, 共70页
文档名称:AIX命令参考手册
文档密级
对于dump设备(/dev/hd6,一般也是paging space),系统是不会mirror的。但如果dump设备和paging设备是在不同的lv上,则paging设备会自动mirrored,而dump设备不会mirrored。
5.3 管理pv
6.3.1配置一个pv
6.3.2使一个可用的硬盘变成一个pv。
#chdev –l hdisk2 –a pv=yes,该命令为该disk分配了一个PVID。 6.3.3改变pv的属性 1、设置pv的可分配权限 #chpv –a y(n) hdisk2 2、设置pv的可用性
#chpv –v r pvname 该命令停止了该pv上的所有VGDA和VGSA的拷贝。
#chpv –v a pvname 6.3.4删除pv #rmdev –dl hdisk1
如果不加入-d参数,则不会在ODM库中删除该pv的定义。 6.3.5列出pv的相关信息 1、列出系统中的pv #lvpv 或 #lvdev –Cc disk 2、列出pv的属性 #lspv hdisk1
注意有VG Descriptors的信息,还有VG State的信息(如果有些该VG的pv是inactive则显示active/partial) 3、列出一个pv的分配(allocation)信息 #lspv –l hdisk1
4、列出pv的分区信息(partition allocation by PV region) #lvpv –p hdisk1
5/1/2013
未经许可不得扩散
第23页, 共70页
文档名称:AIX命令参考手册
文档密级
5、列出物理分区表
可以使用以下命令来查看数据存放的连续度,以提供该PV的I/O性能。 #lspv –M hdisk1
6、移植一个pv上的内容
使用migratepv命令,但前提是目标pv必须和源pv在同一个vg上。 注意如果移植rootvg,要单独移植hd5(#migratepv –l hd5 SourceDiskNumber DestinationDiskNumber),并且移植完hd5后,要使用bosboot和bootlist命令。同时还有使用mkboot –c –d /dev/SourceDiskNumber命令来清理引导记录。 #bosboot –ad /dev/DestinationDiskNumber #bootlist –m normal DestinationDiskNumber #mkboot –c –d /dev/ SourceDiskNumber
5.4 管理vg
6.4.1添加一个vg
可以使用smit vg和mkvg命令,mkvg命令还提供以下选项: -d: 该vg所能包含的最大pv数
-m:指定该vg所能包含pv的最大大小,它将决定可以使用多少个pp,默认是1016个。
注意:创建一个vg是,根文件系统空间至少要有2MB的空间大小,将会创建/etc/vg目录。 6.4.2改变vg属性 1、改变vg的激活属性
#chvg –an(-ay) newvg 指定该vg在系统启动时是否自动varyon。 2、解锁一个vg
但一个LVM命令异常中断时,vg可能会被锁住,这时可以使用下列命令, #chvg –u newvg 3、添加一个pv #extendvg newvg hdisk3
当然,如果你想添加一个原来已经属于一个varied状态vg的pv时,将
5/1/2013
未经许可不得扩散
第24页, 共70页
文档名称:AIX命令参考手册
文档密级
会出错。如果该vg没有被varyon,这时,系统会问你是否确定要这么做。 4、删除一个pv
注意,对应的该vg必须处于varyon状态,所属的pv才能被删除(这时才能写VGDA信息) #reducevg myvg hdisk3 reducevg有-d和-f选项:
-d: 在删除该pv前,将会自动删除该pv上的所有lv,这将很危险,因为有的lv可能跨越了不同的pv。 -f: 强制删除lv,不经过确认。 5、删除一个PV的标记(reference)
如果在移走一块硬盘前没有事先做好reducevg myvg hdisk3,这时该vg的VGDA信息将还会保留那块已经移走硬盘的信息。这时通过以下命令可以删除该pv的信息。
#reducevg VolumeGroup 000000536c63937 6.4.3导入和导出一个vg
为了从ODM库中删除一个vg的系统定义,必须使用exportvg命令。而importvg则是从VGDA中读取vg信息并加入到ODM库中。
如果要导入的vg和原来系统中的vg有重名,则可以指定一个新的vg名,或者有系统来指定一个vg名。同样,如果该vg的lv有重名,则系统也会重新分配新的lv名。
注意,从一个系统移植vg到另一个系统中去,一定要事先做好exportvg。 注意:
1、如果没有冲突,importvg也将会对该vg上fs在系统的/etc/filesystems文件中创建mount point。
2、如果一个vg包含有活动的paging space,则不能直接exportvg,必须先把该paging space置于不活动状态。
3、在importvg后,建议对vg的fs进行fsck,在mount这些fs前。 4、使用smit exportvg命令将会删除/etc/filesystems的相应的文件系统说明,但会在系统中保留mount points。 6.4.4varyon和varyoff一个vg
理解varyon vg的过程,读取并判断VGDA的可用性,刷新并同步VGDA
5/1/2013
未经许可不得扩散
第25页, 共70页