AIX和Solaris上查看文件MD5


  數據庫遷移需要在數據傳輸時做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。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM