ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 确定裸设备的OFFSET

确定裸设备的OFFSET

原创 Linux操作系统 作者:syzxlyx_cu 时间:2009-09-28 11:57:20 0 删除 编辑

确定裸设备的OFFSET
===========================================================
作者: yangtingkun(http://yangtingkun.itpub.net)
发表于: 2006.02.05 19:53
分类: 操作系统
出处: http://yangtingkun.itpub.net/post/468/51671
---------------------------------------------------------------

由于很多系统中,裸设备的开始部分用作系统标识位,因此,裸设备的备份和恢复应该跳过这个系统保留空间。

 

各个UNIX操作系统的保留OFFSET并不相同,因此,在进行裸设备的备份时,首先要清楚当前系统的保留OFFSET。
我对操作系统了解比较浅,对裸设备就更不熟悉了,因此不清楚如何得到当前系统的OFFSET,于是就这个问题特地请教了biti_rainy。Biti告诉我的方法是,通过dd和od或strings配合,观察输出的结果,就可以判断出系统保留的OFFSET的大小,我试着做了一下,发现这个方法并不复杂。
利用od观察dd操作得到的结果,可以发现:
$ dd if=/dev/vx/rdsk/maindbdg/lv_main124 f=./test.dbf bs=1k count=2
2+0 记录进入
2+0 记录调出
$ od -x test.dbf
0000000 0002 0000 0000 2000 0003 ff80 5a5b 5c5d
0000020 0000 0000 d987 0000 0000 0000 0000 0000
0000040 0000 0000 0000 0000 0000 0000 0000 0000
*
0004000
如果熟悉数据文件头的应该清楚,5A5B5C5D,这个是典型的Solaris环境下Oracle920数据文件的数据头部分。
从这一点看,当前系统的裸设备并没有保留OFFSET。
而且,根据最近在metalink上看到,新的系统中基本上都不包括OFFSET了。
当然,如果对于数据文件的格式不熟悉,那么最稳妥的方法是用dd将裸设备的数据文件输出到文件系统后,用dbv对得到的数据文件进行验证。
$ dd if=/dev/vx/rdsk/maindbdg/lv_main124 f=./test.dbf bs=8k count=262017
262017+0 记录进入
262017+0 记录调出
bash-2.03$ dbv file=test.dbf blocksize=8192
DBVERIFY: Release 9.2.0.4.0 - Production on Thu Dec 28 15:38:36 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
DBVERIFY - Verification starting : FILE = test.dbf

DBVERIFY - Verification complete
Total Pages Examined : 262016
Total Pages Processed (Data) : 44480
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 17058
Total Pages Failing (Index): 0
Total Pages Processed (Other): 7906
Total Pages Processed (Seg) : 0
Total Pages Failing (Seg) : 0
Total Pages Empty : 192572
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
如果验证失败,则会报下面的错误:
$ dbv file=test.dbf blocksize=8192
DBVERIFY: Release 9.2.0.4.0 - Production on Thu Dec 28 15:17:55 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

DBV-00102: File I/O error on FILE (test.dbf) during end read operation (-1)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20542911/viewspace-615770/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-09-28

  • 博文量
    125
  • 访问量
    124084