Chinaunix首页 | 论坛 | 博客
  • 博客访问: 642945
  • 博文数量: 70
  • 博客积分: 145
  • 博客等级: 入伍新兵
  • 技术积分: 1150
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-11 08:15
个人简介

没有简介就是最好的简介

文章分类

全部博文(70)

文章存档

2020年(1)

2018年(2)

2017年(3)

2016年(11)

2015年(12)

2014年(16)

2013年(19)

2012年(6)

我的朋友

分类: 其他UNIX

2013-04-12 11:41:02

转载请在文首保留原文出处:EMC中文支持论坛 -

介绍

 

本文主要介绍了HP-UX系统故障磁盘移除的步骤。

更多信息

如果用户对故障盘做了数据备份,或可以将数据搬移到另一块磁盘,则用户可选择从系统中移除磁盘而不用更换。

从磁盘中移除镜像复制:

如果用户已有一份数据的镜像复制,可以通过减少镜像数量使LVM停止使用故障磁盘的备份。使用lvreduce命令移除磁盘的镜像复制,并指定要移除镜像复制的磁盘。例如:

# lvreduce -m 0 -A n /dev/vgname/lvname pvname (单个镜像复制)

# lvreduce -m 1 -A n /dev/vgname/lvname pvname (两个镜像复制)

使用-A n选项是为了防止lvreduce命令执行自动vgcfgbackup操作,该操作可能导致访问故障磁盘时挂起。

如果用户只有一份镜像复制并想要保持冗余,可在运行lvreduce命令之前,在另一块磁盘上创建第二份镜像数据。

用户有可能会碰到这样一种情况:当用户从卷组中移除实际上并没有连接在系统中的物理卷,但该卷在LVM配置文件中有记录。这样的物理卷通常称为ghost盘或是phantom盘。如果磁盘在卷组激活之前已发生故障,则用户将会看见ghost盘,ghost盘可能是系统在故障发生后重启造成的。

ghost盘可通过vgdisplay命令来显示,LVM命令报告丢失物理卷如下所示:

# vgdisplay vg01

vgdisplay: Warning: couldn't query physical volume "/dev/dsk/c5t5d5":

The specified path does not correspond to physical volume attached to this volume group

vgdisplay: Couldn't query the list of physical volumes. 

--- Volume groups ---

VG Name                /dev/vg01 

VG Write Access         read/write 

VG Status               available

Max LV                 255

Cur LV                 3 

Open LV               3

Max PV                16

Cur PV                 2  (#No. of PVs belonging to vg01)

Act PV                 1  (#No. of PVs recorded in the kernel)

Max PE per PV         4350

VGDA                 2

PE Size (Mbytes)       8

Total PE               4341

Alloc PE               4340

Free PE               1

Total PVG             0

Total Spare PVs        0

Total Spare PVs in use  0

 

在系统启动时磁盘不可用,或卷组激活前磁盘发生故障的情况下,lvreduce命令将会返回无法查询物理卷的错误信息。用户还是可以移除镜像复制,但必须指定物理卷key而不是卷名。

磁盘的物理卷key指明了其在卷组中的顺序。第一个物理卷是key 0,第二个是key 1……该值可能与/etc/lvmtab文件中显示的序列值有所不同。用户可使用物理卷key对不在卷组中的物理卷进行寻址。通常发生在激活时磁盘不可用的情况下,比如硬件或配置的原因。可通过lvdisplay命令的-k选项获取key值:

# lvdisplay -v –k /dev/vg00/lvol1 

--- Logical extents ---

LE    PV1              PE1   Status 1 PV2              PE2   Status 2

00000       0          00000 stale          1          00000 current

00001       0          00001 stale          1          00001 current       

00002       0          00001 stale          1          00002 current       

00003       0          00001 stale          1          00003 current       

00004       0          00001 stale          1          00004 current       

将该输出与lvdisplay命令没有-k选项的输出做比较,包含故障磁盘(或‘???’)的列显示了key值。本例中key值是0。将key值应用于lvreduce命令中:

# lvreduce -m 0 -A n –k /dev/vgname/lvname key (单个镜像复制)

或:

# lvreduce -m 1 -A n –k /dev/vgname/lvname key (两个镜像复制)

 

将物理区域迁移到另一磁盘:

如果磁盘还可以读出,用户可通过将物理区域移至另一磁盘上将数据移出。

pvmove命令可将逻辑卷或逻辑卷的特定区域从一个物理卷移至另一个。通常用来释放磁盘,即,将物理卷上的所有数据移出以使其能够从卷组中移除。例如:

# pvmove pvname 

如果逻辑卷是stripedpvmove命令将会失败。

 

需要的情况下,用户可选择指定目标磁盘设备。例如,将物理卷c0t5d0上的所有物理区域移至物理卷c0t2d0,输入以下命令:

# pvmove /dev/dsk/c0t5d0 /dev/dsk/c0t2d0

 

只有在目标物理卷上有足够空间以存放源物理卷上所有已分配区域时,pvmove命令才会成功。用户使用pvmove命令之前,应当检查pvdisplay source_pv_path命令输出的“Total PE”字段,以及pvdisplay dest_pv_path命令输出的“Free PE”字段。

用户可选择只迁移属于指定逻辑卷的区域。如果磁盘上只有特定扇区可读,或只需迁移未镜像保护的逻辑卷,可使用该选项。例如,迁移物理卷c0t5d0lvol4的所有物理区域至c1t2d0,输入以下命令:

# pvmove -n /dev/vg01/lvol4 /dev/dsk/c0t5d0 /dev/dsk/c1t2d0

注意pvmove并不是原子的操作,也不是一个区域一个区域地迁移。如果系统crash或通过kill -9终止了pvmove命令,将会造成物理卷配置不一致的情况,显示移除区域有一个额外的伪镜像复制。用户可对受到影响的逻辑卷执行lvreduce命令-m选项将多余镜像移除,无需指定磁盘。

 

参考

 

When Good Disks Go Bad: Dealing with Disk Failures Under LVM

应用于

 

HP-UX系统

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