当前位置: 首页 > ASM, ORACLE > 正文

模拟asm磁盘头损坏,手动修改

        从10.2.0.5开始,在asm磁盘中,第二个区的倒数第二个块是磁盘头的镜像,如果磁盘头损坏的时候,可以使用repair来修复,然而在之前的版本中,是没有镜像块的,如果磁盘头损坏,我们只能通过手动修改的方式来修复。

       测试环境:db:10.2.0.5  os:rhel 5.8  使用多路径软件来估计磁盘组的名字

        实验分两种环境:1,磁盘组中多个磁盘,2,磁盘组中只有一个磁盘

1,磁盘组中有多个磁盘

人为的清除磁盘头部分

[oracle@asm10g ~]$ dd if=/dev/zero of=/dev/mapper/asm6 bs=1024 count=1 1+0 records in 1+0 records out 1024 bytes (1.0 kB) copied, 1.6e-05 seconds, 64 MB/s mount的时候发现disk 2丢失了,这里的编号是0开头 SQL> alter diskgroup test mount; alter diskgroup test mount * ERROR at line 1: ORA-15032: not all alterations performed ORA-15040: diskgroup is incomplete ORA-15042: ASM disk "2" is missing SQL> l 1* select a.disk_number,a.path,a.name,a.state,b.name from v$asm_disk a ,v$asm_diskgroup b where a.group_number=b.group_number SQL> / DISK_NUMBER PATH NAME STATE NAME ----------- -------------------- ------------------------------ -------- ------------------------------ 0 /dev/mapper/asm4 NORMAL TEST 1 /dev/mapper/asm5 NORMAL TEST 2 /dev/mapper/asm6 NORMAL TEST 0 /dev/mapper/asm3 ARCH_0000 NORMAL ARCH 1 /dev/mapper/asm2 DATA_0001 NORMAL DATA 0 /dev/mapper/asm1 DATA_0000 NORMAL DATA

下面查看磁盘目录的存放位置,磁盘目录中存放了所有的磁盘的信息,其实磁盘目录存放位置是固定的,最后一个磁盘文件的第3个区。

[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 KFBTYP_DISKDIR
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm5 KFBTYP_DISKDIR
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm6 KFBTYP_DISKDIR
KFBTYP_DISKDIR--blocks number--512--extent number---2----block number---0------
KFBTYP_DISKDIR--blocks number--513--extent number---2----block number---1------
KFBTYP_DISKDIR--blocks number--514--extent number---2----block number---2------
KFBTYP_DISKDIR--blocks number--515--extent number---2----block number---3------
KFBTYP_DISKDIR--blocks number--516--extent number---2----block number---4------

从块0中我们可以看到下面的内容

[oracle@asm10g ~]$ kfed read /dev/mapper/asm6 aunum=2 blknum=0|more
kfddde[0].entry.refer.incarn:         0 ; 0x030: A=0 NUMM=0x0
kfddde[0].dsknum:                     0 ; 0x034: 0x0000
kfddde[0].state:                      2 ; 0x036: KFDSTA_NORMAL
kfddde[0].ub1spare:                   0 ; 0x037: 0x00
kfddde[0].dskname:            TEST_0000 ; 0x038: length=9
kfddde[0].fgname:             TEST_0000 ; 0x058: length=9
kfddde[0].crestmp.hi:          32991061 ; 0x078: HOUR=0x15 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfddde[0].crestmp.lo:        2138126336 ; 0x07c: USEC=0x0 MSEC=0x4e SECS=0x37 MINS=0x1f
kfddde[0].failstmp.hi:                0 ; 0x080: HOUR=0x0 DAYS=0x0 MNTH=0x0 YEAR=0x0
kfddde[0].failstmp.lo:                0 ; 0x084: USEC=0x0 MSEC=0x0 SECS=0x0 MINS=0x0
kfddde[0].timer:                      0 ; 0x088: 0x00000000
kfddde[0].size:                    1024 ; 0x08c: 0x00000400
kfddde[0].spare[0]:                   0 ; 0x090: 0x00000000
kfddde[0].spare[1]:                   0 ; 0x094: 0x00000000

..............................
kfddde[1].dsknum:                     1 ; 0x1f4: 0x0001
kfddde[1].state:                      2 ; 0x1f6: KFDSTA_NORMAL
kfddde[1].ub1spare:                   0 ; 0x1f7: 0x00
kfddde[1].dskname:            TEST_0001 ; 0x1f8: length=9
kfddde[1].fgname:             TEST_0001 ; 0x218: length=9
kfddde[1].crestmp.hi:          32991061 ; 0x238: HOUR=0x15 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfddde[1].crestmp.lo:        2138126336 ; 0x23c: USEC=0x0 MSEC=0x4e SECS=0x37 MINS=0x1f
kfddde[1].failstmp.hi:                0 ; 0x240: HOUR=0x0 DAYS=0x0 MNTH=0x0 YEAR=0x0
kfddde[1].failstmp.lo:                0 ; 0x244: USEC=0x0 MSEC=0x0 SECS=0x0 MINS=0x0
kfddde[1].timer:                      0 ; 0x248: 0x00000000
kfddde[1].size:                    1024 ; 0x24c: 0x00000400
kfddde[1].spare[0]:                   0 ; 0x250: 0x00000000

................................................
kfddde[2].entry.incarn:               1 ; 0x3a4: A=1 NUMM=0x0
kfddde[2].entry.hash:                 2 ; 0x3a8: 0x00000002
kfddde[2].entry.refer.number:4294967295 ; 0x3ac: 0xffffffff
kfddde[2].entry.refer.incarn:         0 ; 0x3b0: A=0 NUMM=0x0
kfddde[2].dsknum:                     2 ; 0x3b4: 0x0002
kfddde[2].state:                      2 ; 0x3b6: KFDSTA_NORMAL
kfddde[2].ub1spare:                   0 ; 0x3b7: 0x00
kfddde[2].dskname:            TEST_0002 ; 0x3b8: length=9
kfddde[2].fgname:             TEST_0002 ; 0x3d8: length=9
kfddde[2].crestmp.hi:          32991061 ; 0x3f8: HOUR=0x15 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfddde[2].crestmp.lo:        2138126336 ; 0x3fc: USEC=0x0 MSEC=0x4e SECS=0x37 MINS=0x1f
kfddde[2].failstmp.hi:                0 ; 0x400: HOUR=0x0 DAYS=0x0 MNTH=0x0 YEAR=0x0
kfddde[2].failstmp.lo:                0 ; 0x404: USEC=0x0 MSEC=0x0 SECS=0x0 MINS=0x0
kfddde[2].timer:                      0 ; 0x408: 0x00000000
kfddde[2].size:                    1024 ; 0x40c: 0x00000400
kfddde[2].spare[0]:                   0 ; 0x410: 0x00000000
kfddde[2].spare[1]:                   0 ; 0x414: 0x00000000
kfddde[2].spare[2]:                   0 ; 0x418: 0x00000000
kfddde[2].spare[3]:                   0 ; 0x41c: 0x00000000
kfddde[2].spare[4]:                   0 ; 0x420: 0x00000000

这里我们发现磁盘组一共有3个磁盘,每一个磁盘的名字,编号,大小,与加入的时候上面都有,我们直接从其它的正常的磁盘从读取一个磁盘头文件,修改下面几行内容

kfdhdb.dsknum: 2 ; 0x024: 0x0001 kfdhdb.grptyp: 1 ; 0x026: KFDGTP_EXTERNAL kfdhdb.hdrsts: 3 ; 0x027: KFDHDR_MEMBER kfdhdb.dskname: TEST_0002 ; 0x028: length=9 kfdhdb.grpname: TEST ; 0x048: length=4 kfdhdb.fgname: TEST_0002 ; 0x068: length=9 kfdhdb.capname: ; 0x088: length=0

修改完成,kfed merge /dev/mapper/asm6 asm6.txt就可以修复,

[oracle@asm10g ~]$ kfed merge /dev/mapper/asm6 text=asm6.txt
[oracle@asm10g ~]$ 

SQL> alter diskgroup test mount;

Diskgroup altered.

2,磁盘组中只有一个磁盘的情况

SQL> drop diskgroup test;

Diskgroup dropped.

SQL> create diskgroup test external redundancy disk '/dev/mapper/asm4';

Diskgroup created.

[oracle@asm10g ~]$ dd if=/dev/zero of=/dev/mapper/asm4 bs=1024 count=1
1+0 records in
1+0 records out
1024 bytes (1.0 kB) copied, 0.000163 seconds, 6.3 MB/s
SQL> alter diskgroup test mount;
alter diskgroup test mount
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15063: ASM discovered an insufficient number of disks for diskgroup "TEST"

[oracle@asm10g ~]$ kfod a=/dev/mapper/asm* d=all s=true
--------------------------------------------------------------------------------
 Disk          Size Header    Path      
================================================================================
   1:       1024 Mb MEMBER    /dev/mapper/asm1
   2:       2048 Mb MEMBER    /dev/mapper/asm2
   3:       3072 Mb MEMBER    /dev/mapper/asm3
   4:       1024 Mb CANDIDATE /dev/mapper/asm4
   5:       1024 Mb CANDIDATE /dev/mapper/asm5
   6:       1024 Mb CANDIDATE /dev/mapper/asm6
--------------------------------------------------------------------------------
ORACLE_SID ORACLE_HOME                                                          
================================================================================
      +ASM /u01/app/oracle/product/10.2.0/db 

查看磁盘目录的位置

这里发现磁盘目录存放位置在第4个区

[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 KFBTYP_DISKDIR|more
KFBTYP_DISKDIR--blocks number--768--extent number---3----block number---0------
KFBTYP_DISKDIR--blocks number--769--extent number---3----block number---1------
KFBTYP_DISKDIR--blocks number--770--extent number---3----block number---2------
KFBTYP_DISKDIR--blocks number--771--extent number---3----block number---3------
KFBTYP_DISKDIR--blocks number--772--extent number---3----block number---4------
KFBTYP_DISKDIR--blocks number--773--extent number---3----block number---5------

查看第一个块的中内容

[oracle@asm10g ~]$ kfed read /dev/mapper/asm4 aunum=3 blknum=0|more
kfbh.endian:                          1 ; 0x000: 0x01
kfbh.hard:                          130 ; 0x001: 0x82
kfbh.type:                            6 ; 0x002: KFBTYP_DISKDIR
kfbh.datfmt:                          1 ; 0x003: 0x01
kfbh.block.blk:                       0 ; 0x004: T=0 NUMB=0x0
kfbh.block.obj:                       2 ; 0x008: TYPE=0x0 NUMB=0x2
kfbh.check:                  2692121256 ; 0x00c: 0xa07682a8
kfbh.fcn.base:                        0 ; 0x010: 0x00000000
kfbh.fcn.wrap:                        0 ; 0x014: 0x00000000
kfbh.spare1:                          0 ; 0x018: 0x00000000
kfbh.spare2:                          0 ; 0x01c: 0x00000000
kffdnd.bnode.incarn:                  1 ; 0x000: A=1 NUMM=0x0
kffdnd.bnode.frlist.number:  4294967295 ; 0x004: 0xffffffff
kffdnd.bnode.frlist.incarn:           0 ; 0x008: A=0 NUMM=0x0
kffdnd.overfl.number:        4294967295 ; 0x00c: 0xffffffff
kffdnd.overfl.incarn:                 0 ; 0x010: A=0 NUMM=0x0
kffdnd.parent.number:                 0 ; 0x014: 0x00000000
kffdnd.parent.incarn:                 1 ; 0x018: A=1 NUMM=0x0
kffdnd.fstblk.number:                 0 ; 0x01c: 0x00000000
kffdnd.fstblk.incarn:                 1 ; 0x020: A=1 NUMM=0x0
kfddde[0].entry.incarn:               1 ; 0x024: A=1 NUMM=0x0
kfddde[0].entry.hash:                 0 ; 0x028: 0x00000000
kfddde[0].entry.refer.number:4294967295 ; 0x02c: 0xffffffff
kfddde[0].entry.refer.incarn:         0 ; 0x030: A=0 NUMM=0x0
kfddde[0].dsknum:                     0 ; 0x034: 0x0000
kfddde[0].state:                      2 ; 0x036: KFDSTA_NORMAL
kfddde[0].ub1spare:                   0 ; 0x037: 0x00
kfddde[0].dskname:            TEST_0000 ; 0x038: length=9
kfddde[0].fgname:             TEST_0000 ; 0x058: length=9
kfddde[0].crestmp.hi:          32991062 ; 0x078: HOUR=0x16 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfddde[0].crestmp.lo:        1601869824 ; 0x07c: USEC=0x0 MSEC=0x2a6 SECS=0x37 MINS=0x17
kfddde[0].failstmp.hi:                0 ; 0x080: HOUR=0x0 DAYS=0x0 MNTH=0x0 YEAR=0x0
kfddde[0].failstmp.lo:                0 ; 0x084: USEC=0x0 MSEC=0x0 SECS=0x0 MINS=0x0
kfddde[0].timer:                      0 ; 0x088: 0x00000000
kfddde[0].size:                    1024 ; 0x08c: 0x00000400

通过上面的值,我们可以确认asm4.txt绿色部分的值,asm4.txt见最后

[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 KFBTYP_FREESPC |more
KFBTYP_FREESPC--blocks number--1--extent number---0----block number---1------
可以确认红色部分
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 KFBTYP_ALLOCTBL  |more
KFBTYP_ALLOCTBL--blocks number--2--extent number---0----block number---2------
KFBTYP_ALLOCTBL--blocks number--3--extent number---0----block number---3------
KFBTYP_ALLOCTBL--blocks number--4--extent number---0----block number---4------
通过这个值 ,可以确认深蓝色部分
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 xptr.au   |more
xptr.au--blocks number--513--extent number---2----block number---1------
xptr.au--blocks number--514--extent number---2----block number---2------
xptr.au--blocks number--515--extent number---2----block number---3------
xptr.au--blocks number--516--extent number---2----block number---4------
通过这个值 ,可以确认蓝色部分


[oracle@asm10g ~]$ kfed read /dev/mapper/asm4 aunum=1 blknum=0|grep copyCnt
kfdpHdrB.copyCnt:                     1 ; 0x010: 0x01

通过这个值 ,可以确认紫色部分
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 KFBTYP_FREESPC |more
KFBTYP_FREESPC--blocks number--1--extent number---0----block number---1------
可以确认红色部分
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 KFBTYP_ALLOCTBL  |more
KFBTYP_ALLOCTBL--blocks number--2--extent number---0----block number---2------
KFBTYP_ALLOCTBL--blocks number--3--extent number---0----block number---3------
KFBTYP_ALLOCTBL--blocks number--4--extent number---0----block number---4------
通过这个值 ,可以确认深蓝色部分
[oracle@asm10g ~]$ ./test.sh 1 0 1000 /dev/mapper/asm4 xptr.au   |more
xptr.au--blocks number--513--extent number---2----block number---1------
xptr.au--blocks number--514--extent number---2----block number---2------
xptr.au--blocks number--515--extent number---2----block number---3------
xptr.au--blocks number--516--extent number---2----block number---4------
通过这个值 ,可以确认蓝色部分


[oracle@asm10g ~]$ kfed read /dev/mapper/asm4 aunum=1 blknum=0|grep copyCnt
kfdpHdrB.copyCnt:                     1 ; 0x010: 0x01

通过这个值 ,可以确认紫色部分

修改好asm4.txt后

[oracle@asm10g ~]$ kfed merge /dev/mapper/asm4 te=asm4.txt
[oracle@asm10g ~]$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.5.0 - Production on Thu Sep 26 23:04:30 2013

Copyright (c) 1982, 2010, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> alter diskgroup test mount
  2  ;                         
                               

Diskgroup altered.     

已经正常mount上磁盘组了

下面是asm4.txt的内容

kfbh.endian:                          1 ; 0x000: 0x01
kfbh.hard:                          130 ; 0x001: 0x82
kfbh.type:                            1 ; 0x002: KFBTYP_DISKHEAD
kfbh.datfmt:                          1 ; 0x003: 0x01
kfbh.block.blk:                       0 ; 0x004: T=0 NUMB=0x0
kfbh.block.obj:              2147483648 ; 0x008: TYPE=0x8 NUMB=0x1
kfbh.check:                  1084736906 ; 0x00c: 0x40a7c58a
kfbh.fcn.base:                        0 ; 0x010: 0x00000000
kfbh.fcn.wrap:                        0 ; 0x014: 0x00000000
kfbh.spare1:                          0 ; 0x018: 0x00000000
kfbh.spare2:                          0 ; 0x01c: 0x00000000
kfdhdb.driver.provstr:         ORCLDISK ; 0x000: length=8
kfdhdb.driver.reserved[0]:            0 ; 0x008: 0x00000000
kfdhdb.driver.reserved[1]:            0 ; 0x00c: 0x00000000
kfdhdb.driver.reserved[2]:            0 ; 0x010: 0x00000000
kfdhdb.driver.reserved[3]:            0 ; 0x014: 0x00000000
kfdhdb.driver.reserved[4]:            0 ; 0x018: 0x00000000
kfdhdb.driver.reserved[5]:            0 ; 0x01c: 0x00000000
kfdhdb.compat:                168820736 ; 0x020: 0x0a100000
kfdhdb.dsknum:                        0 ; 0x024: 0x0001
kfdhdb.grptyp:                        1 ; 0x026: KFDGTP_EXTERNAL
kfdhdb.hdrsts:                        3 ; 0x027: KFDHDR_MEMBER
kfdhdb.dskname:               TEST_0000 ; 0x028: length=9
kfdhdb.grpname:                    TEST ; 0x048: length=4
kfdhdb.fgname:                TEST_0000 ; 0x068: length=9
kfdhdb.capname:                         ; 0x088: length=0
kfdhdb.crestmp.hi:             32991062  ; 0x078: HOUR=0x16 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfdhdb.crestmp.lo:           1601869824 ; 0x07c: USEC=0x0 MSEC=0x2a6 SECS=0x37 MINS=0x17
kfdhdb.mntstmp.hi:             32991062  ; 0x0b0: HOUR=0x15 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfdhdb.mntstmp.lo:           1601869820 ; 0x0b4: USEC=0x0 MSEC=0xde SECS=0x0 MINS=0x20
kfdhdb.secsize:                     512 ; 0x0b8: 0x0200
kfdhdb.blksize:                    4096 ; 0x0ba: 0x1000
kfdhdb.ausize:                  1048576 ; 0x0bc: 0x00100000
kfdhdb.mfact:                    113792 ; 0x0c0: 0x0001bc80
kfdhdb.dsksize:                    1024 ; 0x0c4: 0x00000400
kfdhdb.pmcnt:                         2 ; 0x0c8: 0x00000002
kfdhdb.fstlocn:                       1 ; 0x0cc: 0x00000000
kfdhdb.altlocn:                       2 ; 0x0d0: 0x00000002
kfdhdb.f1b1locn:                      2 ; 0x0d4: 0x00000000
kfdhdb.redomirrors[0]:                0 ; 0x0d8: 0x0000
kfdhdb.redomirrors[1]:                0 ; 0x0da: 0x0000
kfdhdb.redomirrors[2]:                0 ; 0x0dc: 0x0000
kfdhdb.redomirrors[3]:                0 ; 0x0de: 0x0000
kfdhdb.dbcompat:              168820736 ; 0x0e0: 0x0a100000
kfdhdb.grpstmp.hi:             32991062  ; 0x0e4: HOUR=0x16 DAYS=0x1a MNTH=0x9 YEAR=0x7dd
kfdhdb.grpstmp.lo:           1601869819  ; 0x0e8: USEC=0x0 MSEC=0x21 SECS=0x37 MINS=0x1f
kfdhdb.ub4spare[0]:                   0 ; 0x0ec: 0x00000000
kfdhdb.ub4spare[1]:                   0 ; 0x0f0: 0x00000000
kfdhdb.ub4spare[2]:                   0 ; 0x0f4: 0x00000000
kfdhdb.ub4spare[3]:                   0 ; 0x0f8: 0x00000000
kfdhdb.ub4spare[4]:                   0 ; 0x0fc: 0x00000000
kfdhdb.ub4spare[5]:                   0 ; 0x100: 0x00000000
kfdhdb.ub4spare[6]:                   0 ; 0x104: 0x00000000
kfdhdb.ub4spare[7]:                   0 ; 0x108: 0x00000000
kfdhdb.ub4spare[8]:                   0 ; 0x10c: 0x00000000
kfdhdb.ub4spare[9]:                   0 ; 0x110: 0x00000000
kfdhdb.ub4spare[10]:                  0 ; 0x114: 0x00000000
kfdhdb.ub4spare[11]:                  0 ; 0x118: 0x00000000
kfdhdb.ub4spare[12]:                  0 ; 0x11c: 0x00000000
kfdhdb.ub4spare[13]:                  0 ; 0x120: 0x00000000
kfdhdb.ub4spare[14]:                  0 ; 0x124: 0x00000000
kfdhdb.ub4spare[15]:                  0 ; 0x128: 0x00000000
kfdhdb.ub4spare[16]:                  0 ; 0x12c: 0x00000000
kfdhdb.ub4spare[17]:                  0 ; 0x130: 0x00000000
kfdhdb.ub4spare[18]:                  0 ; 0x134: 0x00000000
kfdhdb.ub4spare[19]:                  0 ; 0x138: 0x00000000
kfdhdb.ub4spare[20]:                  0 ; 0x13c: 0x00000000
kfdhdb.ub4spare[21]:                  0 ; 0x140: 0x00000000
kfdhdb.ub4spare[22]:                  0 ; 0x144: 0x00000000
kfdhdb.ub4spare[23]:                  0 ; 0x148: 0x00000000
kfdhdb.ub4spare[24]:                  0 ; 0x14c: 0x00000000
kfdhdb.ub4spare[25]:                  0 ; 0x150: 0x00000000
kfdhdb.ub4spare[26]:                  0 ; 0x154: 0x00000000
kfdhdb.ub4spare[27]:                  0 ; 0x158: 0x00000000
kfdhdb.ub4spare[28]:                  0 ; 0x15c: 0x00000000
kfdhdb.ub4spare[29]:                  0 ; 0x160: 0x00000000
kfdhdb.ub4spare[30]:                  0 ; 0x164: 0x00000000
kfdhdb.ub4spare[31]:                  0 ; 0x168: 0x00000000
kfdhdb.ub4spare[32]:                  0 ; 0x16c: 0x00000000
kfdhdb.ub4spare[33]:                  0 ; 0x170: 0x00000000
kfdhdb.ub4spare[34]:                  0 ; 0x174: 0x00000000
kfdhdb.ub4spare[35]:                  0 ; 0x178: 0x00000000
kfdhdb.ub4spare[36]:                  0 ; 0x17c: 0x00000000
kfdhdb.ub4spare[37]:                  0 ; 0x180: 0x00000000
kfdhdb.ub4spare[38]:                  0 ; 0x184: 0x00000000
kfdhdb.ub4spare[39]:                  0 ; 0x188: 0x00000000
kfdhdb.ub4spare[40]:                  0 ; 0x18c: 0x00000000
kfdhdb.ub4spare[41]:                  0 ; 0x190: 0x00000000
kfdhdb.ub4spare[42]:                  0 ; 0x194: 0x00000000
kfdhdb.ub4spare[43]:                  0 ; 0x198: 0x00000000
kfdhdb.ub4spare[44]:                  0 ; 0x19c: 0x00000000
kfdhdb.ub4spare[45]:                  0 ; 0x1a0: 0x00000000
kfdhdb.ub4spare[46]:                  0 ; 0x1a4: 0x00000000
kfdhdb.ub4spare[47]:                  0 ; 0x1a8: 0x00000000
kfdhdb.ub4spare[48]:                  0 ; 0x1ac: 0x00000000
kfdhdb.ub4spare[49]:                  0 ; 0x1b0: 0x00000000
kfdhdb.ub4spare[50]:                  0 ; 0x1b4: 0x00000000
kfdhdb.ub4spare[51]:                  0 ; 0x1b8: 0x00000000
kfdhdb.ub4spare[52]:                  0 ; 0x1bc: 0x00000000
kfdhdb.ub4spare[53]:                  0 ; 0x1c0: 0x00000000
kfdhdb.ub4spare[54]:                  0 ; 0x1c4: 0x00000000
kfdhdb.ub4spare[55]:                  0 ; 0x1c8: 0x00000000
kfdhdb.ub4spare[56]:                  0 ; 0x1cc: 0x00000000
kfdhdb.ub4spare[57]:                  0 ; 0x1d0: 0x00000000
kfdhdb.acdb.aba.seq:                  0 ; 0x1d4: 0x00000000
kfdhdb.acdb.aba.blk:                  0 ; 0x1d8: 0x00000000
kfdhdb.acdb.ents:                     0 ; 0x1dc: 0x0000
kfdhdb.acdb.ub2spare:                 0 ; 0x1de: 0x0000

本文固定链接: http://www.htz.pw/2013/09/26/%e6%a8%a1%e6%8b%9fasm%e7%a3%81%e7%9b%98%e5%a4%b4%e6%8d%9f%e5%9d%8f%ef%bc%8c%e6%89%8b%e5%8a%a8%e4%bf%ae%e6%94%b9.html | 认真就输

该日志由 huangtingzhong 于2013年09月26日发表在 ASM, ORACLE 分类下, 通告目前不可用,你可以至底部留下评论。
原创文章转载请注明: 模拟asm磁盘头损坏,手动修改 | 认真就输