您的位置:首页 > 其它

华为5300交换机基本配置

2013-08-14 16:19 267 查看
fsck 修复宿主机上面挂掉的虚拟机一、情况详解
有些时候宿主机突然挂掉,会造成有些虚拟机 启动失败,如下图所示



这应该是文件系统破坏的问题,一般情况下还可以在虚拟机中fsck修复文件系统,但是这种情况在虚拟机中根本就没有机会fsck,所以想到通过外界方法对虚拟磁盘进行fsck。创建虚拟机使用的虚拟磁盘的类型是qcow2,开机无法fsck的话,可以通过如下两种方式

1、通过启动其它虚拟机的时候指定损坏虚拟磁盘启动再修复
2、通过qemu-nbd工具本地宿主机上修复qcow2
这里介绍第二种方式,直接在宿主机上修复损坏qcow2磁盘,利用qemu-nbd把qcow2映射为网络设备Network block device二、修复虚拟机
1、加载nbd
modprobe nbd max_part=8 # max_part表示每个设备的分区,根据实际情况修改,默认为0
modinfo nbd # 查看nbd相关信息filename:



# ls /dev/nbd* # 默认有16个nbd设备文件/dev/nbd0  /dev/nbd1  /dev/nbd10  /dev/nbd11  /dev/nbd12  /dev/nbd13
/dev/nbd14  /dev/nbd15  /dev/nbd2  /dev/nbd3  /dev/nbd4  /dev/nbd5
/dev/nbd6 /dev/nbd7  /dev/nbd8  /dev/nbd9

2、映射损坏diskqcow2磁盘为nbd

qemu-nbd --connect=/dev/nbd0 /srv/cloud/one/datastores/0/245/disk.0
映射disk.qcow2为本地的nbd0设备,qcow2需要为绝对路径
ls /dev/nbd0* 映射虚拟磁盘有两个分区
/dev/nbd0 /dev/nbd0p1 /dev/nbd0p2




本来准备修复了,但是发现发现之前的虚拟机分区是LVM设备,如果是正常分区直接修复就可以了,而LVM需要先LVM设备激活。

fdisk -l /dev/nbd0Disk /dev/nbd0: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders, total 62914560 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00065194

Device Boot      Start         End      Blocks   Id  System
/dev/nbd0p1   *          63      208844      104391   83  Linux
/dev/nbd0p2          208845    62910539    31350847+  8e  Linux LVM


激活LVM,安装
apt-get install lvm2 -y




激活LVM

默认状态可能LVM没有激活,如下:



激活方式如下

# vgchange -ay /dev/VolGroup00
2 logical volume(s) in volume group "VolGroup00" now active
# ls /dev/VolGroup00/*
/dev/VolGroup00/LogVol00  /dev/VolGroup00/LogVol01



修复指定分区

fsck -y /dev/VolGroup00/LogVol00



取消映射

修复完成之后取消nbd映射,开启虚拟机即可,取消映射方法如下命令# qemu-nbd --disconnect /dev/nbd0
/dev/nbd0 disconnected




修复之后,顺利启动相关虚拟机,推荐开机之后再
shutdown -F now
强制修复一下,以防万一。
本文出自 “飞天鹰-----血杀组” 博客,请务必保留此出处http://749806593.blog.51cto.com/6662384/1731713
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: