ITPub博客

首页 > Linux操作系统 > Linux操作系统 > rmdev、chdev、reducevg、exportvg和importvg命令执行了什么操作

rmdev、chdev、reducevg、exportvg和importvg命令执行了什么操作

Linux操作系统 作者:shilei1 时间:2019-05-21 12:33:04 0 删除 编辑


rmdev -l hdisk1   物理卷hdisk1的状态从available变为defined,物理卷hdisk1的定义还保存在ODM中的定制设备对象类中 

rmdev  -dl hdisk1 会从ODM的定制设备对象类中删除物理卷hdisk1的定义,-d标志即释放了名称hdisk1。   

PCI热插拔的注意事项: 

不要将-d标志和 rmdev命令一起使用进行热插拔操作,因为这样会导致除去您的位置。 

rmdev -dl hdiskX,就是清除了odm数据库中hdisk的信息,只和hdisk相关;但是VG信息里还是对应原来的hdisk8\9,所以需要更新vg在odm库里面的信息,所以需要做export、import。 

需要exportvg importvg,因为ODM里记录的PVNAME还是原来的。 

需要exportvg和importvg,你rmdev以后,ODM里面datavg信息还是hdisk8和hdisk9的属性,你用这个命令测试下: odmget -q "name=datavg" CuAt 

如果varyonvg会报错,这时需要使用exportvg清除ODM中vg信息,再importvg命令把改变盘号的hdisk硬盘上的VGDA信息写到ODM里面,才能varyonvg。   

reducevg vgname hdiskX :     

从卷组中除去物理卷。当所有的物理卷从卷组中除去后,卷组会被删除。会更新ODM和VGDA。reducevg 时,卷组在能被减少之前必须联机,即vg必须是varyon的。reducevg 命令提供-d,-f选项。使用-d选项是很危险的,因为它会自动删除所有lv(在这个pv上的),如果一个lv跨多个pv,删除它们中的任何一个,就会破坏这个lv的完整性。 注:有时候一个disk删除,但是以前没有执行reducevg命令,VGDA仍有该disk的附注信息,如果想删除可以使用 reducevg,但需用物理卷标识(PVID),而不是磁盘名称:reducevg Vgname PVID 

exportvg和importvg(不能对rootvg操作): 

导出过程从系统中除去巻组的定义,导入过程提供将巻组引进它的新系统。所以可以利用exportvg和importvg修改用户卷组的名称。export VG从ODM库中删除VGDA的信息,删除文件系统接口(/etc/FS) ,但保留mount point。Import VG可能修改lv_name(如果有相同的lv_name),并且创建fs point(如果不冲突)。

 

*: 如果某人对硬盘做过"chdev -l hdiskX -a pv=clear"的话,那么即使再使用"chdev -l hdisk* -a pv=yes"也无法获得原来的PVID了,这样就会导致原来的VG没法使用了。只要不clear,通过# chdev -l hdiskX -a pv=yes读出来的还是PV头部扇区保存的pvid。 可以通过以下方法修改pvid 

chdev -l hdisk1 -a pv=clear  清除pv 磁盘头的pvid chdev -l hdisk1 -a pv=yes   重新定义pvid 

注意修改的只是磁盘头的pvid,并没有修改vgda中的pvid。 # synclvodm datavg 

   该命令会核对ODM库中记录的PVID和PV(hdiskX)头部扇区保存的pvid,假如某个hdiskX的PVID存在于比如巻组datavg的VGDA里,将把该hdiskX加入到巻组datavg中,(因为系统的ODM库中,知道PVID=hdisk2是DATAVG的PV)。所以某个原来属于datavg巻组的hdisk丢了VGDA的话,首先需要使用手工修改PVID的方法将hdisk的PVID修改为巻组datavg的VGDA中记录的PVID值。 # importvg -y  datavg hdisk1  

假如巻组datavg包含两个pv:hdisk1和hdisk2,而HDISK2的VGDA坏了的话,importvg 的时候,要指定hdisk1,而且系统会再次做synclvodm,将会把系统ODM中VGDA的信息同步到hdisk2上,这样可以恢复hdisk2的VGDA。

 

importvg的过程就是将VGDA里的信息读入到ODM的过程,其中也包括PVID。但是VGDA里没有VG name,所以importvg时要指定VG name。因此可以利用他来改VG name。当importvg的时候,odm将读取pv上的vgda,如果vgdapvid与自身磁盘上的pvid不符合的话,将出现错误! 注意:当pv加入卷组以后,pvid在硬盘上存在于至少两个地方,一个是在硬盘头,一个是在vgda中。这两个地方的pvid一般是相同的,但是由于pvid的修改,可能造成不一致,这样就有可能丢失数据。  

判断hdiskXVGDA信息丢失的方法:lqueryvg -Atp hdiskX,无法得到结果! 注: 

      Pvid的生成原则是主板序列号+形成pv时候的时间戳。pvid在以下三个位置存在:

 1、写入odm库, 

2、在硬盘头信息里(0扇区的头几个字节), 

3VGDA 也将写入pvid(当pv加入一个卷组的时候,pvid将被写入vgda)。   

    PVID是以在硬盘头部的为准的,在VGDA的前面呢,一个硬盘可以没有VGDA而有PVID。在VGDA里当然也有PVID,在ODM里当然也有,这都是以前者为基础的。多机情况下,是先赋PVID的机器生成了PVID,其他机器都是从硬盘头部读取,那当然是一样了——也应该是一样,否则就乱套了。这就和身份证号码一样。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/196700/viewspace-1223776/,如需转载,请注明出处,否则将追究法律责任。

上一篇: AIX VGDA
请登录后发表评论 登录
全部评论

注册时间:2018-10-10

  • 博文量
    546
  • 访问量
    25657