Opal

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  数据库迁移需要在数据传输时做MD5验证,下面记录了提前进行测试的过程。

  一、首先查看AIX的版本,为5.3:

# oslevel
5.3.0.0

  该台AIX为已不再使用的机器,没找到合适的测试文件,需要dd命令生成一个test.dmp文件用来测试:

# df -m
Filesystem    MB blocks      Free %Used    Iused %Iused Mounted on
/dev/hd4       10240.00   3942.29   62%     8927     1% /
/dev/hd2        2304.00    562.10   76%    36037    22% /usr
/dev/hd9var       64.00     52.94   18%      392     3% /var
/dev/hd3         512.00    510.85    1%      116     1% /tmp
/dev/hd1          64.00     24.67   62%       25     1% /home
/proc                 -         -    -         -     -  /proc
/dev/hd10opt   12800.00   5188.66   60%    38948     4% /opt
/dev/ftp_lv     3200.00    590.58   82%     4662     4% /ftproot
# pwd
/
# dd if=/dev/hd2 of=/test.dmp ibs=1M count=3000
2304+0 records in.
4718592+0 records out.
# ls -l |grep test
-rw-r--r--   1 root     system   2415919104 Apr 15 21:18 test.dmp
# 

  生成的文件大小为2415919104/1024/1024 = 2300MB。AIX自带的命令csum可以计算MD5,但是无法处理大于2GB的文件,处理大文件时可以手动编辑一个perl脚本md5sum.pl。

 1 #!/usr/bin/perl
 2 
 3 use Digest::MD5;
 4 use IO::File;
 5 
 6 my $chk = Digest::MD5->new();
 7 foreach my $file (@ARGV)
 8 {
 9     $chk->addfile(IO::File->new($file));
10     print "$file->",$chk->hexdigest,"\n";
11 }
12 ~

  下面测试此命令对于一个普通小文件的MD5计算,可以看到两者结果时一样的:

# csum -h MD5 smit.log
6177d1a15805d2ac45723ad7a490c898  smit.log
# ./md5sum.pl smit.log   
smit.log->6177d1a15805d2ac45723ad7a490c898
# 

  再测试两者对于刚生成的文件的MD5的计算:

# csum -h MD5 test.dmp
csum: 1493-010 Unable to open test.dmp.
csum: 1493-001 Unable to access one or more specified files.
# ./md5sum.pl test.dmp
test.dmp->e40fc9e573519f685f5939d297f5afdf
# 

  经过自己计时,共花费了48s,平均速度为48MB/s。

  二、查看Solaris版本,为Solaris 10:

$ uname -a
SunOS t-ora 5.10 Generic_111111-11 sun4v sparc sun4v ---处理过了:)

  经过查询资料,在10中md5sum已经在光盘中了,但是本机没有安装,需要使用digest 命令,该机上有合适的文件用于测试就不需要进行创建了:

$ md5sum
md5sum: not found
$ ls -l |grep eis
-rw-r--r--   1 root     root     6946582528 Dec 28 10:05 eis-dvd3.4.4-1.iso
$ digest -a md5 -v eis-dvd3.4.4-1.iso
md5 (eis-dvd3.4.4-1.iso) = 8ca90a7d389b69a41148fc2dcf5ec5b9

  经过自己计时,共花费了138s,文件大小为 6946582528/1024/1024 =6624MB 平均速度为48MB/s。

 

posted on 2013-04-15 21:36  北极之北  阅读(5308)  评论(1编辑  收藏  举报