标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 kfed MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-01110 ORA-01555 ORA-01578 ORA-08103 ORA-600 2131 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 Oracle 恢复 ORACLE恢复 ORACLE数据库恢复 oracle 比特币 OSD-04016 YOUR FILES ARE ENCRYPTED 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (102)
- 数据库 (1,683)
- DB2 (22)
- MySQL (73)
- Oracle (1,545)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (159)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (7)
- Oracle ASM (68)
- Oracle Bug (8)
- Oracle RAC (53)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (565)
- Oracle安装升级 (92)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (79)
- PostgreSQL (18)
- PostgreSQL恢复 (6)
- SQL Server (27)
- SQL Server恢复 (8)
- TimesTen (7)
- 达梦数据库 (2)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (37)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (20)
-
最近发表
- ORA-15411: Failure groups in disk group DATA have different number of disks.
- 断电引起的ORA-08102: 未找到索引关键字, 对象号 39故障处理
- ORA-00227: corrupt block detected in control file
- 手工删除19c rac
- 解决oracle数据文件路径有回车故障
- .wstop扩展名勒索数据库恢复
- Oracle Recovery Tools工具一键解决ORA-00376 ORA-01110故障(文件offline)
- OGG-02771 Input trail file format RELEASE 19.1 is different from previous trail file form at RELEASE 11.2.
- OGG-02246 Source redo compatibility level 19.0.0 requires trail FORMAT 12.2 or higher
- GoldenGate 19安装和打patch
- dd破坏asm磁盘头恢复
- 删除asmlib磁盘导致磁盘组故障恢复
- Kylin Linux 安装19c
- ORA-600 krse_arc_complete.4
- Oracle 19c 202410补丁(RUs+OJVM)
- ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复
- .mkp扩展名oracle数据文件加密恢复
- 清空redo,导致ORA-27048: skgfifi: file header information is invalid
- A_H_README_TO_RECOVER勒索恢复
- 通过alert日志分析客户自行对一个数据库恢复的来龙去脉和点评
标签归档:amdu
amdu参数详解
最近发现amdu命令比以前认知中的强大,记录下相关参数
[oracle@xifenfei ~]$ amdu help=y a/usize AU size for corrupt disks -ausize <bytes>: This option must be set when -baddisks is set. It must be a power of 2. This size is required to scan a disk looking for metadata, and it is normally read from the disk header. The value applies to all disks that do not have a valid header. The value from the disk header will be used if a valid header is found. ba/ddisks Include disks with bad headers -baddisks <diskgroup>: Normally disks with bad disk headers, or that look like they were never part of a disk group, will not be scanned. This option forces them to be scanned anyway and to be considered part of the given diskgroup. This is most useful when a disk header has been damaged. The disk will still need to have a valid allocation table to drive the scan unless -fullscan is used. In any case at least one block in the first two AUs must be valid so that the disk number can be determined. The options -ausize and -blksize are required since these values are normally fetched from the disk header. If the diskgroup uses external redundancy then -external should be specified. These values will be compared against any valid disks found in the diskgroup and they must be the same. bl/ksize ASM block size for corrupt disks -blksize <bytes>: This option must be set when -baddisks is set. It must be a power of 2. This size is required to scan a disk looking for metadata, and it is normally read from the disk header. The value applies to all disks that do not have a valid header. The value from the disk header will be used if a valid header is found. c/ompare Compare file mirrors -compare: This option only applies to file extraction from a normal or high redundancy disk group. Every extent that is mirrored on more than one discovered disk will have all sides of its mirror compared. If they are not identical a message will be reported on standard error and the report file. The message will indicate which copy was extracted. A count of the blocks that are not identical will be in the report file. dir/ectory Directory from previous dump -directory <string>: This option completely eliminates the discovery phase of operation. It specifies the name of a dump directory from a previous run of AMDU. The report file and map files are read instead of doing a discovery and scan. The parsing of these ASCII files is very dependent on them being exactly as written by AMDU. AMDU is unlikely to work properly if they have been modified by a text editor, or if some of the files are missing or truncated. Note that the directory may be a copy FTPed from another machine. The other machine may even be a different platform with a different endianess. dis/kstring Diskstring for discovery -diskstring <string>: By default the null string is used for discovery. The null string should discover all disks the user has access to. Many installations specify an asm_diskstring parameter for their ASM instance. If so that parameter value should be given here. Multiple discovery strings can be specified by multiple occurrences of -diskstring <string>. Beware of shell syntax conflicts with discovery strings. Diskstrings are usually the same syntax the shell uses for expanding path names on command lines so they will most likely need to be enclosed in single quotes. du/mp Diskgroups to dump -dump <diskgroup>: This option specifies the name of a diskgroup to have its metadata dumped. This option may be specified multiple times to dump multiple diskgroups. If the diskgroup name is ALL then all diskgroups encountered will be dumped. The diskgroup name is not case sensitive, but will be converted to uppercase for all reports. If this option is not specified then no map or image files will be created, but -extract and -print may still work. exc/lude Disks to exclude -exclude <string>: Multiple exclude options may be specified. These strings are used for discovery just like the values for diskstring. Only shallow discovery is done on these diskstrings. Any disks found in the exclude discovery will not be accessed. If they are also discovered using the -diskstring strings, then the report will include the information from shallow discovery along with a message indicating the disk was excluded. exte/rnal Assume external redundancy -external: Normally AMDU determines the diskgroup redundancy from the disk headers. However this is not possible with the -baddisks option. It is assumed that the redundancy of the -baddisks diskgroup is normal or high unless this option is given to specify external redundancy. extr/act Files to extract -extract <diskgroup>.<file_number>: This extracts the numbered file from the named diskgroup, case insensitive. This option may be specified multiple times to extract multiple files. The extracted file is placed in the dump directory under the name <diskgroup>_<number>.f where <diskgroup> is the diskgroup name in uppercase, and <number> is the file number. The -output option may be used to write the file to any location. The extracted file will appear to have the same contents it would have if accessed through the database. If some portion of the file is unavailable then that portion of the output file will be filled with 0xBADFDA7A, and a message will appear on stderr. fi/ledump Dump files rather than extract -filedump: This option causes the file objects in the command line to have their blocks dumped to the image files rather than extracted. This can be combined with the -novirtual option to selectively dump only some of the metadata files. It may also be used to dump user files (number >= 256) so that all mirrored copies can be examined. fo/rmer Include dropped disks -former: Normally disks marked as former are not scanned, but this option will scan them and include their contents in the output. This is useful when it is necessary to look at the contents of a disk that was dropped. Note that dropped normal disks will not have any entries in their allocation tables and thus only the physically addressed extents will be dumped. Force dropped disks will not have status former in their disk headers and are not affected by this option. However if DROP DISKGROUP is used, the disks will have the contents as of the time of the drop, and will be in status former. Thus this option is useful for extracting files from a dropped diskgroup. fu/llscan Scan entire disk -fullscan: This option reads every AU on the disk and looks at the contents of the AU rather than limiting the AU's read based on the allocation table. This is useful when the allocation table is corrupt or needs recovery. An AU will be written to the image file if it starts with a block that contains a valid ASM block header. The file and extent information for the map will be extracted from the block header. Physically addressed metadata will be dumped regardless of its contents. This option is incompatible with extracting a file. It is an error to specify -extract with this option. Note that this option is likely to find old garbage metadata in unallocated AU's since there is no means of determining what is allocated. Thus there may be many different copies of the same block, possibly of different versions. h/ex Always print block contents in hex -hex: This prints the block contents in hex without attempting to print them as ASM metadata. This is useful when the block is known to not be ASM metadata. It avoids the ASM block header dump and ensures the block is not accidentally interpreted as ASM metadata. This option requires at least one -print option. noa/cd Do not dump ACD -noacd: This option limits the dumping of the Active Change Directory to just the control blocks that contain the checkpoint. There is 126 MB of ACD per ASM instance (42 MB for external redundancy). It is normally of no interest if there has been a clean shutdown or no updates for a while. This option avoids dumping a lot of unimportant data. The blocks will still be read and checked for corruption. The map file will still contain entries for the ACD extents, but the block counts will be zero. nod/ir Do not create a dump directory -nodir: No dump directory is created, and no files are created in it. The directory name is not written to standard out. The report file is written to standard out before any block printouts from any -print options. This option conflicts with -filedump. It is an error to specify this and extract a file to the dump directory. noe/xtract Do not create extracted file -noextract: This prevents files from being extracted to an output file, but the file will be read and any errors in selecting the correct output will be reported. This is most useful in combination with the -compare option. noh/eart Do not check for heartbeat -noheart: Normally the heartbeat block will be saved at discovery time and checked when the disk is scanned. A sleep is added between discovery and scanning to ensure there is time for the heartbeat to be written. If the heartbeat block changes then it is most likely that the diskgroup containing this disk is mounted by an active ASM instance. An error and warning is generated but operation proceeds normally. This option suppresses this check and avoids the sleep. noi/mage Do not create image files -noimage: No image files will be created n the dump directory. All the reads specified by the read options will still be done. The map files may be used to find blocks on the disks themselves. In the map file, the count of blocks dumped, the image file sequence number, and the byte offset in the image file will all always be zero (C00000 S0000 B0000000000) nom/ap Do not create map or image files -nomap: No map file is created and no image file is created. The only output is the report file. The -noimage option is assumed if this is set since an image file without a map is useless. The options -noscan and -noread also result in no map or image files, but -nomap still reads the metadata to check for I/O errors and corrupt blocks. nop/rint Do no print block contents -noprint: This suppresses the printout of the block contents for blocks printed with the -print option. It is useful for getting just the block reports without a lot of data. This option requires at least one -print option. norea/d Shallow discovery only -noread: This eliminates any reading of any disks at all. Only shallow discovery will be done. The report will end after the discovery section. It is an error to specify this option and specify a file to extract or blocks to print. It is an error to specify this and -fullscan. norep/ort Do not generate a report -noreport: This suppresses the generation of the report file. It is most useful in combination with -nodir and -print to get block printouts without a lot of clutter. It is unnecessary to include this with -directory since no report is generated then anyway. nosc/an Deep discovery only -noscan: This eliminates any reading of any disks after deep discovery. This results in just doing a deep discovery using the disksting parameter. The report will end after the discovery section. It is an error to specify this option and specify a file to extract. It is an error to specify this and -fullscan. nosu/bdir Do not create a dump directory -nosubdir: No dump directory is created, but files are still created. The directory name is not written to standard out. The report file and any other dump or extract files are written to the current directory or to the directory indicated by -parentdir. This means that if multiple AMDU dumps are requested using this option, the report file will always correspond to the last dump requested. nov/irtual Do not dump virtual metadata -novirtual: This option eliminates reading of any virtual metadata. Only the physically addressed metadata will be read. This implicitly eliminates the ACD and extent maps so -noacd and -noxmap will be assumed. nox/map Do not dump extent maps -noxmap: This option eliminates reading of the indirect extents containing the file extent maps. This is the bulk of the metadata in most diskgroups. Even the entries in the map file will be eliminated. o/utput Files to create for extract -output <file_name>: This option specifies a different file for writing an extracted file. The file will be overwritten if it already exists. This option requires that exactly one file is extracted via the -extract option. pa/rent Parent for dump directory -parent <path_name>: By default the dump directory is created in the current directory, but another directory can be specified using this option. The parent directory for the dump directory must already exist. pr/int Block to print -print <block_spec>: This option prints one or more blocks to standard out. This option may be specified multiple times to print multiple <block_spec>s. The printout contains information about how each block was read as well as a formatted printout. Multiple blocks matching the same <block_spec> may be found when scanning the disks. For example there may be multiple disks that have headers for the same diskgroup and disk number. If the block is from a mirrored file then multiple copies should exist on different disks. If multiple copies of the same block have identical contents then only one formatted printout of the contents will be generated, but a header will be printed for each copy. A <block_spec> may include a count of sequential blocks to print. A <block_spec> may specify a block either by disk or file. <block_spec> ::= <single_block> | <single_block>.C<count> <single_block> ::= <report_disk_block> | <group_disk_block> | <extent_file_block> | <virtual_file_block> | <xmap_file_block> <report_disk_block> ::= <group_name>.N<report_number>.A<au_number>.B<block_number> <group_disk_block> ::= <group_name>.D<disk_number>.A<au_number>.B<block_number> <extent_file_block> ::= <group_name>.F<file_number>.X<physical_extent>.B<block_number> <virtual_file_block> ::= <group_name>.F<file_number>.V<virtual_block_number> <xmap_file_block> ::= <group_name>.F<file_number>.M<extent_map_block_number> r/egistry Dump registry files -registry: The ASM registries will be read and dumped to the image file. There will be no block consistency checks since these files do not have ASM cache headers. To dump one specific registry specify -filedump and include the file object for the registry (e.g. DATA.255). s/pfile Extract usable spfile -spfile: This causes extract to render the resulting file in a form that is directly usable by startup. Without this option, AMDU will extract the file as a regular ASM file including all ASM specific headers and such
kfed找出来asm 磁盘组中数据文件别名对应的文件号—amdu恢复
前段时间有多个朋友问我,在amdu中,如果数据文件命名不是omf的方式,该如何找出来数据文件的asm file_number,从而实现通过amdu对不能mount的磁盘组中的数据文件进行恢复,这里通过测试给出来处理方法.根据我们对asm的理解,asm file_number 6为asm file的别名文件记录所在地,我们通过分析kfed这些au中的记录即可获得相关数据文件的别名对应的asm文件号
模拟各种别名
D:\app\product\10.2.0\db_1\bin>sqlplus / as sysdba SQL*Plus: Release 10.2.0.3.0 - Production on 星期三 7月 27 22:48:48 2016 Copyright (c) 1982, 2006, Oracle. All Rights Reserved. 连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production With the Partitioning, OLAP and Data Mining options SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- +DATA/ora10g/datafile/system.256.914797317 +DATA/ora10g/datafile/undotbs1.258.914797317 +DATA/ora10g/datafile/sysaux.257.914797317 +DATA/ora10g/datafile/users.259.914797317 SQL> create tablespace xifenfei 2 datafile '+data/xifenfei01.dbf' size 10M; 表空间已创建。 SQL> alter tablespace xifenfei add 2 datafile '+data/ora10g/datafile/xifenfei02.dbf' size 10m; 表空间已更改。 SQL> alter tablespace xifenfei add 2 datafile '+data/ora10g/xifenfei03.dbf' size 10m; 表空间已更改。 SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- +DATA/ora10g/datafile/system.256.914797317 +DATA/ora10g/datafile/undotbs1.258.914797317 +DATA/ora10g/datafile/sysaux.257.914797317 +DATA/ora10g/datafile/users.259.914797317 +DATA/xifenfei01.dbf +DATA/ora10g/datafile/xifenfei02.dbf +DATA/ora10g/xifenfei03.dbf 已选择7行。
分析磁盘组和别名信息
SQL> select name from v$asm_disk; NAME ------------------------------ DATA_0000 DATA_0001 SQL> select path from v$asm_disk; PATH ----------------------------------------- H:\ASMDISK\ASMDISK1.DD H:\ASMDISK\ASMDISK2.DD SQL> SELECT NAME,FILE_NUMBER FROM V$ASM_ALIAS where file_number<>4294967295; NAME FILE_NUMBER ------------------------------ ----------- SYSTEM.256.914797317 256 SYSAUX.257.914797317 257 UNDOTBS1.258.914797317 258 USERS.259.914797317 259 XIFENFEI.266.918341361 266 XIFENFEI.267.918341389 267 xifenfei02.dbf 267 XIFENFEI.268.918341409 268 Current.260.914797381 260 group_1.261.914797385 261 group_2.262.914797385 262 group_3.263.914797387 263 TEMP.264.914797393 264 spfile.265.914797421 265 spfileora10g.ora 265 xifenfei03.dbf 268 xifenfei01.dbf 266 已选择17行。 SQL> SELECT NAME,FILE_NUMBER FROM V$ASM_ALIAS; NAME FILE_NUMBER ------------------------------ ----------- ORA10G 4294967295 DATAFILE 4294967295 SYSTEM.256.914797317 256 SYSAUX.257.914797317 257 UNDOTBS1.258.914797317 258 USERS.259.914797317 259 XIFENFEI.266.918341361 266 XIFENFEI.267.918341389 267 xifenfei02.dbf 267 XIFENFEI.268.918341409 268 CONTROLFILE 4294967295 Current.260.914797381 260 ONLINELOG 4294967295 group_1.261.914797385 261 group_2.262.914797385 262 group_3.263.914797387 263 TEMPFILE 4294967295 TEMP.264.914797393 264 PARAMETERFILE 4294967295 spfile.265.914797421 265 spfileora10g.ora 265 xifenfei03.dbf 268 xifenfei01.dbf 266 已选择23行。
从sql查询,我们可以确定xifenfei0n.dbf对应的文件号分别为:xifenfei01.dbf==>266,xifenfei02.dbf==>267,xifenfei03.dbf==>268
通过kfed file 6所在位置
www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD |grep f1b1 kfdhdb.f1b1locn: 2 ; 0x0d4: 0x00000002 kfdhdb.f1b1fcn.base: 0 ; 0x100: 0x00000000 kfdhdb.f1b1fcn.wrap: 0 ; 0x104: 0x00000000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=2 blkn=6|grep kfffde|more kfffde[0].xptr.au: 26 ; 0x4a0: 0x0000001a kfffde[0].xptr.disk: 0 ; 0x4a4: 0x0000 kfffde[0].xptr.flags: 0 ; 0x4a6: L=0 E=0 D=0 S=0 kfffde[0].xptr.chk: 48 ; 0x4a7: 0x30 kfffde[1].xptr.au: 4294967295 ; 0x4a8: 0xffffffff kfffde[1].xptr.disk: 65535 ; 0x4ac: 0xffff
从这里我们可以确定别名的au只有一个位于disk 0, au 26(0x1a)的位置
通过kfed分析别名
www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 |more kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 0 ; 0x004: blk=0 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 1563703526 ; 0x00c: 0x5d3438e6 kfbh.fcn.base: 3461 ; 0x010: 0x00000d85 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 kfade[0].entry.incarn: 1 ; 0x024: A=1 NUMM=0x0 kfade[0].entry.hash: 2080305534 ; 0x028: 0x7bfef17e kfade[0].entry.refer.number: 1 ; 0x02c: 0x00000001 kfade[0].entry.refer.incarn: 1 ; 0x030: A=1 NUMM=0x0 kfade[0].name: ORA10G ; 0x034: length=6 kfade[0].fnum: 4294967295 ; 0x064: 0xffffffff kfade[0].finc: 4294967295 ; 0x068: 0xffffffff kfade[0].flags: 4 ; 0x06c: U=0 S=0 S=1 U=0 F=0 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 1 ; 0x070: A=1 NUMM=0x0 kfade[1].entry.hash: 3085841201 ; 0x074: 0xb7ee3331 kfade[1].entry.refer.number: 4294967295 ; 0x078: 0xffffffff kfade[1].entry.refer.incarn: 0 ; 0x07c: A=0 NUMM=0x0 kfade[1].name: xifenfei01.dbf ; 0x080: length=14 kfade[1].fnum: 266 ; 0x0b0: 0x0000010a kfade[1].finc: 918341361 ; 0x0b4: 0x36bcc6f1 kfade[1].flags: 17 ; 0x0b8: U=1 S=0 S=0 U=0 F=1 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 kfade[2].entry.incarn: 0 ; 0x0bc: A=0 NUMM=0x0 kfade[2].entry.hash: 0 ; 0x0c0: 0x00000000 kfade[2].entry.refer.number: 0 ; 0x0c4: 0x00000000 kfade[2].entry.refer.incarn: 0 ; 0x0c8: A=0 NUMM=0x0 kfade[2].name: ; 0x0cc: length=0 kfade[2].fnum: 0 ; 0x0fc: 0x00000000 kfade[2].finc: 0 ; 0x100: 0x00000000 kfade[2].flags: 0 ; 0x104: U=0 S=0 S=0 U=0 F=0 kfade[2].ub1spare: 0 ; 0x105: 0x00 kfade[2].freeblock: 0 ; 0x106: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 |grep name kfade[0].name: ORA10G ; 0x034: length=6 kfade[1].name: xifenfei01.dbf ; 0x080: length=14 kfade[2].name: ; 0x0cc: length=0 kfade[3].name: ; 0x118: length=0 kfade[4].name: ; 0x164: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=1|more kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 1 ; 0x004: blk=1 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 239000469 ; 0x00c: 0x0e3edb95 kfbh.fcn.base: 3536 ; 0x010: 0x00000dd0 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: 1 ; 0x01c: 0x00000001 kffdnd.fstblk.incarn: 1 ; 0x020: A=1 NUMM=0x0 kfade[0].entry.incarn: 1 ; 0x024: A=1 NUMM=0x0 kfade[0].entry.hash: 710518681 ; 0x028: 0x2a59a799 kfade[0].entry.refer.number: 2 ; 0x02c: 0x00000002 kfade[0].entry.refer.incarn: 1 ; 0x030: A=1 NUMM=0x0 kfade[0].name: DATAFILE ; 0x034: length=8 kfade[0].fnum: 4294967295 ; 0x064: 0xffffffff kfade[0].finc: 4294967295 ; 0x068: 0xffffffff kfade[0].flags: 4 ; 0x06c: U=0 S=0 S=1 U=0 F=0 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 3 ; 0x070: A=1 NUMM=0x1 kfade[1].entry.hash: 4053320104 ; 0x074: 0xf198c1a8 kfade[1].entry.refer.number: 3 ; 0x078: 0x00000003 kfade[1].entry.refer.incarn: 3 ; 0x07c: A=1 NUMM=0x1 kfade[1].name: CONTROLFILE ; 0x080: length=11 kfade[1].fnum: 4294967295 ; 0x0b0: 0xffffffff kfade[1].finc: 4294967295 ; 0x0b4: 0xffffffff kfade[1].flags: 4 ; 0x0b8: U=0 S=0 S=1 U=0 F=0 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 kfade[2].entry.incarn: 1 ; 0x0bc: A=1 NUMM=0x0 kfade[2].entry.hash: 2803485489 ; 0x0c0: 0xa719cb31 kfade[2].entry.refer.number: 4 ; 0x0c4: 0x00000004 kfade[2].entry.refer.incarn: 1 ; 0x0c8: A=1 NUMM=0x0 kfade[2].name: ONLINELOG ; 0x0cc: length=9 kfade[2].fnum: 4294967295 ; 0x0fc: 0xffffffff kfade[2].finc: 4294967295 ; 0x100: 0xffffffff kfade[2].flags: 4 ; 0x104: U=0 S=0 S=1 U=0 F=0 kfade[2].ub1spare: 0 ; 0x105: 0x00 kfade[2].freeblock: 0 ; 0x106: 0x0000 kfade[3].entry.incarn: 1 ; 0x108: A=1 NUMM=0x0 kfade[3].entry.hash: 2905271101 ; 0x10c: 0xad2aeb3d kfade[3].entry.refer.number: 5 ; 0x110: 0x00000005 kfade[3].entry.refer.incarn: 1 ; 0x114: A=1 NUMM=0x0 kfade[3].name: TEMPFILE ; 0x118: length=8 kfade[3].fnum: 4294967295 ; 0x148: 0xffffffff kfade[3].finc: 4294967295 ; 0x14c: 0xffffffff kfade[3].flags: 4 ; 0x150: U=0 S=0 S=1 U=0 F=0 kfade[3].ub1spare: 0 ; 0x151: 0x00 kfade[3].freeblock: 0 ; 0x152: 0x0000 kfade[4].entry.incarn: 1 ; 0x154: A=1 NUMM=0x0 kfade[4].entry.hash: 3261836913 ; 0x158: 0xc26bae71 kfade[4].entry.refer.number: 6 ; 0x15c: 0x00000006 kfade[4].entry.refer.incarn: 1 ; 0x160: A=1 NUMM=0x0 kfade[4].name: PARAMETERFILE ; 0x164: length=13 kfade[4].fnum: 4294967295 ; 0x194: 0xffffffff kfade[4].finc: 4294967295 ; 0x198: 0xffffffff kfade[4].flags: 4 ; 0x19c: U=0 S=0 S=1 U=0 F=0 kfade[4].ub1spare: 0 ; 0x19d: 0x00 kfade[4].freeblock: 0 ; 0x19e: 0x0000 kfade[5].entry.incarn: 1 ; 0x1a0: A=1 NUMM=0x0 kfade[5].entry.hash: 3373604202 ; 0x1a4: 0xc9151d6a kfade[5].entry.refer.number: 4294967295 ; 0x1a8: 0xffffffff kfade[5].entry.refer.incarn: 0 ; 0x1ac: A=0 NUMM=0x0 kfade[5].name: spfileora10g.ora ; 0x1b0: length=16 kfade[5].fnum: 265 ; 0x1e0: 0x00000109 kfade[5].finc: 914797421 ; 0x1e4: 0x3686b36d kfade[5].flags: 17 ; 0x1e8: U=1 S=0 S=0 U=0 F=1 kfade[5].ub1spare: 0 ; 0x1e9: 0x00 kfade[5].freeblock: 0 ; 0x1ea: 0x0000 kfade[6].entry.incarn: 1 ; 0x1ec: A=1 NUMM=0x0 kfade[6].entry.hash: 3992241470 ; 0x1f0: 0xedf4c53e kfade[6].entry.refer.number: 4294967295 ; 0x1f4: 0xffffffff kfade[6].entry.refer.incarn: 0 ; 0x1f8: A=0 NUMM=0x0 kfade[6].name: xifenfei03.dbf ; 0x1fc: length=14 kfade[6].fnum: 268 ; 0x22c: 0x0000010c kfade[6].finc: 918341409 ; 0x230: 0x36bcc721 kfade[6].flags: 17 ; 0x234: U=1 S=0 S=0 U=0 F=1 kfade[6].ub1spare: 0 ; 0x235: 0x00 kfade[6].freeblock: 0 ; 0x236: 0x0000 kfade[7].entry.incarn: 0 ; 0x238: A=0 NUMM=0x0 kfade[7].entry.hash: 0 ; 0x23c: 0x00000000 kfade[7].entry.refer.number: 0 ; 0x240: 0x00000000 kfade[7].entry.refer.incarn: 0 ; 0x244: A=0 NUMM=0x0 kfade[7].name: ; 0x248: length=0 kfade[7].fnum: 0 ; 0x278: 0x00000000 kfade[7].finc: 0 ; 0x27c: 0x00000000 kfade[7].flags: 0 ; 0x280: U=0 S=0 S=0 U=0 F=0 kfade[7].ub1spare: 0 ; 0x281: 0x00 kfade[7].freeblock: 0 ; 0x282: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=1|grep name kfade[0].name: DATAFILE ; 0x034: length=8 kfade[1].name: CONTROLFILE ; 0x080: length=11 kfade[2].name: ONLINELOG ; 0x0cc: length=9 kfade[3].name: TEMPFILE ; 0x118: length=8 kfade[4].name: PARAMETERFILE ; 0x164: length=13 kfade[5].name: spfileora10g.ora ; 0x1b0: length=16 kfade[6].name: xifenfei03.dbf ; 0x1fc: length=14 kfade[7].name: ; 0x248: length=0 kfade[8].name: ; 0x294: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=2 kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 2 ; 0x004: blk=2 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 3937052433 ; 0x00c: 0xeaaaa711 kfbh.fcn.base: 3535 ; 0x010: 0x00000dcf 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: 1 ; 0x014: 0x00000001 kffdnd.parent.incarn: 1 ; 0x018: A=1 NUMM=0x0 kffdnd.fstblk.number: 2 ; 0x01c: 0x00000002 kffdnd.fstblk.incarn: 1 ; 0x020: A=1 NUMM=0x0 kfade[0].entry.incarn: 1 ; 0x024: A=1 NUMM=0x0 kfade[0].entry.hash: 1410293950 ; 0x028: 0x540f60be kfade[0].entry.refer.number: 4294967295 ; 0x02c: 0xffffffff kfade[0].entry.refer.incarn: 0 ; 0x030: A=0 NUMM=0x0 kfade[0].name: SYSTEM ; 0x034: length=6 kfade[0].fnum: 256 ; 0x064: 0x00000100 kfade[0].finc: 914797317 ; 0x068: 0x3686b305 kfade[0].flags: 18 ; 0x06c: U=0 S=1 S=0 U=0 F=1 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 1 ; 0x070: A=1 NUMM=0x0 kfade[1].entry.hash: 1052386617 ; 0x074: 0x3eba2539 kfade[1].entry.refer.number: 4294967295 ; 0x078: 0xffffffff kfade[1].entry.refer.incarn: 0 ; 0x07c: A=0 NUMM=0x0 kfade[1].name: SYSAUX ; 0x080: length=6 kfade[1].fnum: 257 ; 0x0b0: 0x00000101 kfade[1].finc: 914797317 ; 0x0b4: 0x3686b305 kfade[1].flags: 18 ; 0x0b8: U=0 S=1 S=0 U=0 F=1 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 kfade[2].entry.incarn: 1 ; 0x0bc: A=1 NUMM=0x0 kfade[2].entry.hash: 2341166852 ; 0x0c0: 0x8b8b5f04 kfade[2].entry.refer.number: 4294967295 ; 0x0c4: 0xffffffff kfade[2].entry.refer.incarn: 0 ; 0x0c8: A=0 NUMM=0x0 kfade[2].name: UNDOTBS1 ; 0x0cc: length=8 kfade[2].fnum: 258 ; 0x0fc: 0x00000102 kfade[2].finc: 914797317 ; 0x100: 0x3686b305 kfade[2].flags: 18 ; 0x104: U=0 S=1 S=0 U=0 F=1 kfade[2].ub1spare: 0 ; 0x105: 0x00 kfade[2].freeblock: 0 ; 0x106: 0x0000 kfade[3].entry.incarn: 1 ; 0x108: A=1 NUMM=0x0 kfade[3].entry.hash: 18985629 ; 0x10c: 0x0121b29d kfade[3].entry.refer.number: 4294967295 ; 0x110: 0xffffffff kfade[3].entry.refer.incarn: 0 ; 0x114: A=0 NUMM=0x0 kfade[3].name: USERS ; 0x118: length=5 kfade[3].fnum: 259 ; 0x148: 0x00000103 kfade[3].finc: 914797317 ; 0x14c: 0x3686b305 kfade[3].flags: 18 ; 0x150: U=0 S=1 S=0 U=0 F=1 kfade[3].ub1spare: 0 ; 0x151: 0x00 kfade[3].freeblock: 0 ; 0x152: 0x0000 kfade[4].entry.incarn: 1 ; 0x154: A=1 NUMM=0x0 kfade[4].entry.hash: 379856949 ; 0x158: 0x16a42835 kfade[4].entry.refer.number: 4294967295 ; 0x15c: 0xffffffff kfade[4].entry.refer.incarn: 0 ; 0x160: A=0 NUMM=0x0 kfade[4].name: XIFENFEI ; 0x164: length=8 kfade[4].fnum: 266 ; 0x194: 0x0000010a kfade[4].finc: 918341361 ; 0x198: 0x36bcc6f1 kfade[4].flags: 18 ; 0x19c: U=0 S=1 S=0 U=0 F=1 kfade[4].ub1spare: 0 ; 0x19d: 0x00 kfade[4].freeblock: 0 ; 0x19e: 0x0000 kfade[5].entry.incarn: 1 ; 0x1a0: A=1 NUMM=0x0 kfade[5].entry.hash: 889929475 ; 0x1a4: 0x350b3f03 kfade[5].entry.refer.number: 4294967295 ; 0x1a8: 0xffffffff kfade[5].entry.refer.incarn: 0 ; 0x1ac: A=0 NUMM=0x0 kfade[5].name: XIFENFEI ; 0x1b0: length=8 kfade[5].fnum: 267 ; 0x1e0: 0x0000010b kfade[5].finc: 918341389 ; 0x1e4: 0x36bcc70d kfade[5].flags: 18 ; 0x1e8: U=0 S=1 S=0 U=0 F=1 kfade[5].ub1spare: 0 ; 0x1e9: 0x00 kfade[5].freeblock: 0 ; 0x1ea: 0x0000 kfade[6].entry.incarn: 1 ; 0x1ec: A=1 NUMM=0x0 kfade[6].entry.hash: 3416790953 ; 0x1f0: 0xcba817a9 kfade[6].entry.refer.number: 4294967295 ; 0x1f4: 0xffffffff kfade[6].entry.refer.incarn: 0 ; 0x1f8: A=0 NUMM=0x0 kfade[6].name: xifenfei02.dbf ; 0x1fc: length=14 kfade[6].fnum: 267 ; 0x22c: 0x0000010b kfade[6].finc: 918341389 ; 0x230: 0x36bcc70d kfade[6].flags: 17 ; 0x234: U=1 S=0 S=0 U=0 F=1 kfade[6].ub1spare: 0 ; 0x235: 0x00 kfade[6].freeblock: 0 ; 0x236: 0x0000 kfade[7].entry.incarn: 1 ; 0x238: A=1 NUMM=0x0 kfade[7].entry.hash: 3200622536 ; 0x23c: 0xbec59fc8 kfade[7].entry.refer.number: 4294967295 ; 0x240: 0xffffffff kfade[7].entry.refer.incarn: 0 ; 0x244: A=0 NUMM=0x0 kfade[7].name: XIFENFEI ; 0x248: length=8 kfade[7].fnum: 268 ; 0x278: 0x0000010c kfade[7].finc: 918341409 ; 0x27c: 0x36bcc721 kfade[7].flags: 18 ; 0x280: U=0 S=1 S=0 U=0 F=1 kfade[7].ub1spare: 0 ; 0x281: 0x00 kfade[7].freeblock: 0 ; 0x282: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=2|grep name kfade[0].name: SYSTEM ; 0x034: length=6 kfade[1].name: SYSAUX ; 0x080: length=6 kfade[2].name: UNDOTBS1 ; 0x0cc: length=8 kfade[3].name: USERS ; 0x118: length=5 kfade[4].name: XIFENFEI ; 0x164: length=8 kfade[5].name: XIFENFEI ; 0x1b0: length=8 kfade[6].name: xifenfei02.dbf ; 0x1fc: length=14 kfade[7].name: XIFENFEI ; 0x248: length=8 kfade[8].name: ; 0x294: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=3 kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 3 ; 0x004: blk=3 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 362685464 ; 0x00c: 0x159e2418 kfbh.fcn.base: 1938 ; 0x010: 0x00000792 kfbh.fcn.wrap: 0 ; 0x014: 0x00000000 kfbh.spare1: 0 ; 0x018: 0x00000000 kfbh.spare2: 0 ; 0x01c: 0x00000000 kffdnd.bnode.incarn: 3 ; 0x000: A=1 NUMM=0x1 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: 1 ; 0x014: 0x00000001 kffdnd.parent.incarn: 1 ; 0x018: A=1 NUMM=0x0 kffdnd.fstblk.number: 3 ; 0x01c: 0x00000003 kffdnd.fstblk.incarn: 3 ; 0x020: A=1 NUMM=0x1 kfade[0].entry.incarn: 3 ; 0x024: A=1 NUMM=0x1 kfade[0].entry.hash: 2951411460 ; 0x028: 0xafeaf704 kfade[0].entry.refer.number: 4294967295 ; 0x02c: 0xffffffff kfade[0].entry.refer.incarn: 0 ; 0x030: A=0 NUMM=0x0 kfade[0].name: Current ; 0x034: length=7 kfade[0].fnum: 260 ; 0x064: 0x00000104 kfade[0].finc: 914797381 ; 0x068: 0x3686b345 kfade[0].flags: 18 ; 0x06c: U=0 S=1 S=0 U=0 F=1 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 0 ; 0x070: A=0 NUMM=0x0 kfade[1].entry.hash: 0 ; 0x074: 0x00000000 kfade[1].entry.refer.number: 0 ; 0x078: 0x00000000 kfade[1].entry.refer.incarn: 0 ; 0x07c: A=0 NUMM=0x0 kfade[1].name: ; 0x080: length=0 kfade[1].fnum: 0 ; 0x0b0: 0x00000000 kfade[1].finc: 0 ; 0x0b4: 0x00000000 kfade[1].flags: 0 ; 0x0b8: U=0 S=0 S=0 U=0 F=0 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=3|grep name kfade[0].name: Current ; 0x034: length=7 kfade[1].name: ; 0x080: length=0 kfade[2].name: ; 0x0cc: length=0 kfade[3].name: ; 0x118: length=0 kfade[4].name: ; 0x164: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=4|more kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 4 ; 0x004: blk=4 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 3581479529 ; 0x00c: 0xd5790a69 kfbh.fcn.base: 2167 ; 0x010: 0x00000877 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: 1 ; 0x014: 0x00000001 kffdnd.parent.incarn: 1 ; 0x018: A=1 NUMM=0x0 kffdnd.fstblk.number: 4 ; 0x01c: 0x00000004 kffdnd.fstblk.incarn: 1 ; 0x020: A=1 NUMM=0x0 kfade[0].entry.incarn: 1 ; 0x024: A=1 NUMM=0x0 kfade[0].entry.hash: 1017821950 ; 0x028: 0x3caabafe kfade[0].entry.refer.number: 4294967295 ; 0x02c: 0xffffffff kfade[0].entry.refer.incarn: 0 ; 0x030: A=0 NUMM=0x0 kfade[0].name: group_1 ; 0x034: length=7 kfade[0].fnum: 261 ; 0x064: 0x00000105 kfade[0].finc: 914797385 ; 0x068: 0x3686b349 kfade[0].flags: 18 ; 0x06c: U=0 S=1 S=0 U=0 F=1 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 1 ; 0x070: A=1 NUMM=0x0 kfade[1].entry.hash: 1570256801 ; 0x074: 0x5d9837a1 kfade[1].entry.refer.number: 4294967295 ; 0x078: 0xffffffff kfade[1].entry.refer.incarn: 0 ; 0x07c: A=0 NUMM=0x0 kfade[1].name: group_2 ; 0x080: length=7 kfade[1].fnum: 262 ; 0x0b0: 0x00000106 kfade[1].finc: 914797385 ; 0x0b4: 0x3686b349 kfade[1].flags: 18 ; 0x0b8: U=0 S=1 S=0 U=0 F=1 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 kfade[2].entry.incarn: 1 ; 0x0bc: A=1 NUMM=0x0 kfade[2].entry.hash: 157707762 ; 0x0c0: 0x09666df2 kfade[2].entry.refer.number: 4294967295 ; 0x0c4: 0xffffffff kfade[2].entry.refer.incarn: 0 ; 0x0c8: A=0 NUMM=0x0 kfade[2].name: group_3 ; 0x0cc: length=7 kfade[2].fnum: 263 ; 0x0fc: 0x00000107 kfade[2].finc: 914797387 ; 0x100: 0x3686b34b kfade[2].flags: 18 ; 0x104: U=0 S=1 S=0 U=0 F=1 kfade[2].ub1spare: 0 ; 0x105: 0x00 kfade[2].freeblock: 0 ; 0x106: 0x0000 kfade[3].entry.incarn: 0 ; 0x108: A=0 NUMM=0x0 kfade[3].entry.hash: 0 ; 0x10c: 0x00000000 kfade[3].entry.refer.number: 0 ; 0x110: 0x00000000 kfade[3].entry.refer.incarn: 0 ; 0x114: A=0 NUMM=0x0 kfade[3].name: ; 0x118: length=0 kfade[3].fnum: 0 ; 0x148: 0x00000000 kfade[3].finc: 0 ; 0x14c: 0x00000000 kfade[3].flags: 0 ; 0x150: U=0 S=0 S=0 U=0 F=0 kfade[3].ub1spare: 0 ; 0x151: 0x00 kfade[3].freeblock: 0 ; 0x152: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=4|grep name kfade[0].name: group_1 ; 0x034: length=7 kfade[1].name: group_2 ; 0x080: length=7 kfade[2].name: group_3 ; 0x0cc: length=7 kfade[3].name: ; 0x118: length=0 kfade[4].name: ; 0x164: length=0 kfade[5].name: ; 0x1b0: length=0 kfade[6].name: ; 0x1fc: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=5|more kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 5 ; 0x004: blk=5 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 1153372471 ; 0x00c: 0x44bf1137 kfbh.fcn.base: 2212 ; 0x010: 0x000008a4 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: 1 ; 0x014: 0x00000001 kffdnd.parent.incarn: 1 ; 0x018: A=1 NUMM=0x0 kffdnd.fstblk.number: 5 ; 0x01c: 0x00000005 kffdnd.fstblk.incarn: 1 ; 0x020: A=1 NUMM=0x0 kfade[0].entry.incarn: 1 ; 0x024: A=1 NUMM=0x0 kfade[0].entry.hash: 3699413877 ; 0x028: 0xdc809375 kfade[0].entry.refer.number: 4294967295 ; 0x02c: 0xffffffff kfade[0].entry.refer.incarn: 0 ; 0x030: A=0 NUMM=0x0 kfade[0].name: TEMP ; 0x034: length=4 kfade[0].fnum: 264 ; 0x064: 0x00000108 kfade[0].finc: 914797393 ; 0x068: 0x3686b351 kfade[0].flags: 18 ; 0x06c: U=0 S=1 S=0 U=0 F=1 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 0 ; 0x070: A=0 NUMM=0x0 kfade[1].entry.hash: 0 ; 0x074: 0x00000000 kfade[1].entry.refer.number: 0 ; 0x078: 0x00000000 kfade[1].entry.refer.incarn: 0 ; 0x07c: A=0 NUMM=0x0 kfade[1].name: ; 0x080: length=0 kfade[1].fnum: 0 ; 0x0b0: 0x00000000 kfade[1].finc: 0 ; 0x0b4: 0x00000000 kfade[1].flags: 0 ; 0x0b8: U=0 S=0 S=0 U=0 F=0 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=5|grep name kfade[0].name: TEMP ; 0x034: length=4 kfade[1].name: ; 0x080: length=0 kfade[2].name: ; 0x0cc: length=0 kfade[3].name: ; 0x118: length=0 kfade[4].name: ; 0x164: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=6|more kfbh.endian: 1 ; 0x000: 0x01 kfbh.hard: 130 ; 0x001: 0x82 kfbh.type: 11 ; 0x002: KFBTYP_ALIASDIR kfbh.datfmt: 1 ; 0x003: 0x01 kfbh.block.blk: 6 ; 0x004: blk=6 kfbh.block.obj: 6 ; 0x008: file=6 kfbh.check: 1230193442 ; 0x00c: 0x49534322 kfbh.fcn.base: 2267 ; 0x010: 0x000008db 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: 1 ; 0x014: 0x00000001 kffdnd.parent.incarn: 1 ; 0x018: A=1 NUMM=0x0 kffdnd.fstblk.number: 6 ; 0x01c: 0x00000006 kffdnd.fstblk.incarn: 1 ; 0x020: A=1 NUMM=0x0 kfade[0].entry.incarn: 1 ; 0x024: A=1 NUMM=0x0 kfade[0].entry.hash: 3897004393 ; 0x028: 0xe8479169 kfade[0].entry.refer.number: 4294967295 ; 0x02c: 0xffffffff kfade[0].entry.refer.incarn: 0 ; 0x030: A=0 NUMM=0x0 kfade[0].name: spfile ; 0x034: length=6 kfade[0].fnum: 265 ; 0x064: 0x00000109 kfade[0].finc: 914797421 ; 0x068: 0x3686b36d kfade[0].flags: 18 ; 0x06c: U=0 S=1 S=0 U=0 F=1 kfade[0].ub1spare: 0 ; 0x06d: 0x00 kfade[0].freeblock: 0 ; 0x06e: 0x0000 kfade[1].entry.incarn: 0 ; 0x070: A=0 NUMM=0x0 kfade[1].entry.hash: 0 ; 0x074: 0x00000000 kfade[1].entry.refer.number: 0 ; 0x078: 0x00000000 kfade[1].entry.refer.incarn: 0 ; 0x07c: A=0 NUMM=0x0 kfade[1].name: ; 0x080: length=0 kfade[1].fnum: 0 ; 0x0b0: 0x00000000 kfade[1].finc: 0 ; 0x0b4: 0x00000000 kfade[1].flags: 0 ; 0x0b8: U=0 S=0 S=0 U=0 F=0 kfade[1].ub1spare: 0 ; 0x0b9: 0x00 kfade[1].freeblock: 0 ; 0x0ba: 0x0000 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=6|grep name kfade[0].name: spfile ; 0x034: length=6 kfade[1].name: ; 0x080: length=0 kfade[2].name: ; 0x0cc: length=0 kfade[3].name: ; 0x118: length=0 kfade[4].name: ; 0x164: length=0 www.xifenfei.com>kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blkn=7|grep name kfade[0].name: ; 0x034: length=0 kfade[1].name: ; 0x080: length=0 kfade[2].name: ; 0x0cc: length=0 kfade[3].name: ; 0x118: length=0 kfade[4].name: ; 0x164: length=0 kfade[5].name: ; 0x1b0: length=0 kfade[6].name: ; 0x1fc: length=0
通过上述分析我们发现目前数据主要分布在au=26,block in(0-6)的几个block中,通过kfed已经找出来了所有的asm中文件的file_number
非win平台脚本实现
for (( i=0; i<255; i++ )) do kfed read H:\ASMDISK\ASMDISK1.DD aun=26 blknum=$i \|egrep 'name|fnum'|grep -v length=0 |grep -v 0x00000000 >>asm_file.out done
注意需要按照file 6的au依次处理,否则会不全,更加简单的方法,直接通过dul扫描磁盘获取相关file number