断电后如何检查 CentOS 6 Server VM Host?

断电后如何检查 CentOS 6 Server VM Host?

今天下午,我们办公室有人决定拔掉服务器的电源插头,因为外面下着暴风雨。他们并没有关闭服务器,只是在服务器运行时拔掉了电源插头。

该服务器有 4 个 SATA 驱动器,采用软件 RAID 10 配置,并在 RAID 上运行 LVM。服务器运行的是 CentOS 6.2 Minimal,是使用 KVM 的虚拟机主机。拔下电源时,计算机上运行着许多客户机。每个客户机都有一个或多个 LVM 分区,可直接用作硬盘。客户机分区为 EXT3、EXT4 和 NTFS。主机操作系统位于 EXT4 分区上。

后来,当电源恢复时,那个人重新插上电源,电脑就启动了。由于他们插上电源时没有先连接显示器,所以无法看到屏幕上显示的内容。我现在尝试连接显示器,但除非在启动时连接显示器,否则它不会工作。我把它保持原样,直到我能得到一些建议,因为我不想(进一步)搞砸任何事情。

我可以通过 SSH 进入主机。我还没有重新启动它,以防日志中某些地方可能有用的东西。

我需要做的是检查所有磁盘和分区的数据完整性(如果可能的话)。我认为 RAID 10 使用某种基于内存的缓存,我担心驱动器不一致,或者如果提示中有尚未写入驱动器的内容,则文件会损坏。

[root@othello ~]# cat /proc/mdstat
Personalities : [raid10] [raid1] 
md2 : active raid1 sdc1[2] sda1[0] sdd1[3] sdb1[1]
      102388 blocks super 1.0 [4/4] [UUUU]

md0 : active raid10 sda3[0] sdc3[2] sdd3[3] sdb3[1]
      1952289792 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU]
      bitmap: 0/15 pages [0KB], 65536KB chunk

md1 : active raid10 sdc2[2] sda2[0] sdd2[3] sdb2[1]
      1022976 blocks super 1.1 512K chunks 2 near-copies [4/4] [UUUU]

unused devices: <none>

它也让我感到困扰,因为它将我的数组称为“近乎副本”。这正常吗?

我应该运行哪种磁盘检查来确保驱动器和数据一切正常?我还应该检查其他什么吗?

更新

mdadm --detail 的输出

[root@othello ~]# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.1
  Creation Time : Sat Feb 25 09:26:20 2012
     Raid Level : raid10
     Array Size : 1952289792 (1861.85 GiB 1999.14 GB)
  Used Dev Size : 976144896 (930.92 GiB 999.57 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Sun Mar 11 12:59:30 2012
          State : active 
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : othello.myserver.com:0  (local to host othello.myserver.com)
           UUID : 58ba40ab:12516733:e3779362:68200fdd
         Events : 2208

    Number   Major   Minor   RaidDevice State
       0       8        3        0      active sync   /dev/sda3
       1       8       19        1      active sync   /dev/sdb3
       2       8       35        2      active sync   /dev/sdc3
       3       8       51        3      active sync   /dev/sdd3

答案1

RAID 很好,所有 UUUU 表示阵列中的所有磁盘都已启动。目前我甚至不用担心这个。

对于虚拟机,如果您想在其上运行 fsck,请停止虚拟机并运行

fsck.ext3 (ext4, etc) /path/to/lvm (通常像 /dev/vg-name/lv-name)

如果您正在使用 KVM,您应该能够使用virshKVM 对虚拟机执行任何操作。以下是 virsh 手册页的链接http://linux.die.net/man/1/virsh

如果您确实想在 RAID 阵列上运行磁盘检查,则必须重新启动到单用户模式或从实时 CD 启动,以便可以 fsck 各个 /dev/mdX 设备。由于主文件系统是 EXT4,所以我不会费心,它比断电情况下的 EXT3 好得多。

答案2

尝试 mdadm --detail /dev/md0 (md1 和 md2 相同)。

然后尝试这里给出的建议: http://linas.org/linux/raid.html

相关内容