`
ijavagos
  • 浏览: 1190740 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Linux下 数据文件 效验问题

 
阅读更多

Linux 下,不同服务器之前的数据copy是很常见的操作。 常见的copy命令有scp cp 但是对于一些重要的文件,如数据库的备份文件,在copy之后,我们还需要对copy之后的文件进行一下效验, 以免在copy过程中的丢失。 造成无法恢复数据。

常见的效验有如下2种方式:

1. 比较文件大小

ll或者ls 命令分别查看一下copy之前和copy之后的文件大小。

[root@singledb backup]# ll

total 639820

-rw-r----- 1 oracle oinstall 18150400 Dec 7 19:50 arch_0hluu1q6_1_1_20101207

-rw-r----- 1 oracle oinstall 9810432 Dec 7 19:50 arch_0iluu1q7_1_1_20101207

-rw-r----- 1 oracle oinstall 32256 Dec 7 19:50 arch_0jluu1qu_1_1_20101207

-rw-r----- 1 oracle oinstall 15335424 Dec 7 19:50 ctl_file_0kluu1sf_1_1_20101207

-rw-r----- 1 oracle oinstall 371933184 Dec 7 19:54 orcl_0eluu1aa_1_1_20101207

-rw-r----- 1 oracle oinstall 223895552 Dec 7 19:56 orcl_0fluu1ac_1_1_20101207

-rw-r----- 1 oracle oinstall 15335424 Dec 7 19:56 orcl_0gluu1ks_1_1_20101207

[root@singledb backup]# ls -lrt

total 639820

-rw-r----- 1 oracle oinstall 18150400 Dec 7 19:50 arch_0hluu1q6_1_1_20101207

-rw-r----- 1 oracle oinstall 32256 Dec 7 19:50 arch_0jluu1qu_1_1_20101207

-rw-r----- 1 oracle oinstall 9810432 Dec 7 19:50 arch_0iluu1q7_1_1_20101207

-rw-r----- 1 oracle oinstall 15335424 Dec 7 19:50 ctl_file_0kluu1sf_1_1_20101207

-rw-r----- 1 oracle oinstall 371933184 Dec 7 19:54 orcl_0eluu1aa_1_1_20101207

-rw-r----- 1 oracle oinstall 223895552 Dec 7 19:56 orcl_0fluu1ac_1_1_20101207

-rw-r----- 1 oracle oinstall 15335424 Dec 7 19:56 orcl_0gluu1ks_1_1_20101207

2. 使用md5sum命令

2.1 MD5 效验介绍

  MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2MD3MD4发展而来。

  Message-Digest泛指字节串(Message)Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。这种变换只与字节的值有关,与字符集或编码方式无关。

  MD5将任意长度的“字节串”变换成一个128bit的大整数,并且它是一个不可逆的字节串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字节串有无穷多个,这有点象不存在反函数的数学函数。

   MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被“篡改”。举个例子,你将一段话写在一个叫 readme.txt文件中,并对这个readme.txt产生一个MD5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算MD5时就会发现。如果再有一个第三方的认证机构,用MD5还可以防止文件作者的“抵赖”,这就是所谓的数字签名应用。

  MD5还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5值(或类似的其它算法)的方式保存的, 用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,而系统并不“知道”用户的密码是什么。

  一些黑客破获这种密码的方法是一种被称为“跑字典”的方法。有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用MD5程序计算出这些字典项的MD5值,然后再用目标的MD5值在这个字典中检索。

  即使假设密码的最大长度为8,同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是P(62,1)+P (62,2).+P(62,8),那也已经是一个很天文的数字了,存储这个字典就需要TB级的磁盘组,而且这种方法还有一个前提,就是能获得目标账户的密码MD5值的情况下才可以。

  

2.2 一个简单的演示:

[root@singledb backup]# which md5sum

/usr/bin/md5sum

创建一个文件

[root@singledb backup]# touch tianlesoftware.dba

查看MD5

[root@singledb backup]# md5sum tianlesoftware.dba

d41d8cd98f00b204e9800998ecf8427e tianlesoftware.dba

MD5值保存到某个文件

[root@singledb backup]# md5sum tianlesoftware.dba > tianlesoftware.md5

修改tianlesoftware.dba 文件

[root@singledb backup]# cat tianlesoftware.dba

I AM DBA!

查看修改之后的MD5

[root@singledb backup]# md5sum tianlesoftware.dba

f040ad46d094e8295533585474d33b50 tianlesoftware.dba

他们的值不一样了,从这个值,可以判断文件有没有变化。

关于MD5SUM命令的更多用法,参考帮助:

[root@singledb backup]# man md5sum

MD5SUM(1) User Commands MD5SUM(1)

NAME

md5sum - compute and check MD5 message digest

SYNOPSIS

md5sum [OPTION] [FILE]...

DESCRIPTION

Print or check MD5 (128-bit) checksums. With no FILE, or when FILE is -, read

standard input.

-b, --binary

read in binary mode

-c, --check

read MD5 sums from the FILEs and check them

-t, --text

read in text mode (default)

The following two options are useful only when verifying checksums:

--status

don’t output anything, status code shows success

-w, --warn

warn about improperly formatted checksum lines

--help display this help and exit

--version

output version information and exit

The sums are computed as described in RFC 1321. When checking, the input should be

a former output of this program. The default mode is to print a line with check-

sum, a character indicating type (‘*’ for binary, ‘ ’ for text), and name for each

FILE.

AUTHOR

Written by Ulrich Drepper, Scott Miller, and David Madore.

REPORTING BUGS

Report bugs to <bug-coreutils@gnu.org>.

COPYRIGHT

Copyright © 2006 Free Software Foundation, Inc.

This is free software. You may redistribute copies of it under the terms of the

GNU General Public License <http://www.gnu.org/licenses/gpl.html>. There is NO

WARRANTY, to the extent permitted by law.

SEE ALSO

The full documentation for md5sum is maintained as a Texinfo manual. If the info

and md5sum programs are properly installed at your site, the command

info md5sum

should give you access to the complete manual.

md5sum 5.97 July 2009 MD5SUM(1)

[root@singledb backup]#

------------------------------------------------------------------------------

Blog http://blog.csdn.net/tianlesoftware

网上资源: http://tianlesoftware.download.csdn.net

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx

DBA1 群:62697716(); DBA2 群:62697977()

DBA3 群:62697850 DBA 超级群:63306533;

聊天 群:40132017

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

分享到:
评论

相关推荐

    linux c语言标准crc32算法与文件crc32校验

    crc32标准算法: 宽度:32 多项式:04C11DB7 初始值:0xFFFFFFFF 异或值:0xFFFFFFFF 输入输出数据反转; 与在线工具算出的crc32值一样,包含文件校验。

    LINUX串口文件传输

    串口文件传输,数据帧格式:0xAA+0xAA+序号+数据长度+50字节数据+校验和。支持错误重传。如编译出的可执行文件为test,其用法如下: 发: ./test /devttyUSB0 0 a.txt 收: ./test /devttyUSB1 1 b.txt (注:先执行...

    linux传输文件命令 rz 和 sz详解

     rz,sz是Linux/Unix同Windows进行ZModem文件传输的命令行工具。  优点就是不用再开一个sftp工具登录上去上传下载文件。  Zmodem协议是针对modem的一种错误校验协议。利用Zmodem协议,可以在modem上发送512字节的...

    linux操作系统培训资料.pptx

    linux内核在进行必要的初始化设置工作和挂载根文件系统之后,会启动文件系统中的一个程序作为系统中的第一个进程,这个进程就是大名鼎鼎的init进程,init进程会,然后运行etc目录下的对应的shell脚本文件。 linux...

    linux图形化串口调试工具 XGCom

    一个Linux下的图形化的串口调试工具.帮助开发者调试串口程序.1.串口基本收发 2.串口配置(串口,速率,数据位,停止位,奇偶校验,数据控制) 3.串口配置的保存和载入(串口,速率,数据位,停止位,奇偶校验,数据控制) 4....

    CheckIt:Checkit是Linux和Unix系统的文件完整性工具。-开源

    它允许您检测任何数据完整性问题或对任何文件的文件更改。 通过将校验和存储为扩展属性,checkit提供了一种有效的方法来检测静默数据损坏,位腐烂或其他修改错误。 它受到BTRFS和ZFS等文件系统执行校验和的启发。 ...

    kali linux安装教程步骤描述与说明.docx

    解决方法是重新下载官方发布的ISO镜像,并通过MD5或SHA256校验工具验证文件完整性。 启动介质问题: 制作启动U盘时操作不当,导致启动盘不可用。需要正确使用如Rufus、Balena Etcher等工具制作启动盘,并确保BIOS...

    Linux指令一周通 (技术图书大系).azw3

    1.12 cksum指令:文件的CRC校验 1.13 cmp指令:比较文件差异 1.14 cp指令:复制 1.15 cpio指令:备份文件 1.16 csplit指令:分割文件 1.17 cut指令:剪切文件 1.18 diff指令:生成差异信息 1.19 diffstat指令:diff...

    ext4.0学习总结及使用说明

    ext4.0大大扩充了ext3.0的功能,Ext4是一种针对ext3系统的扩展日志式文件系统,是专门为 Linux 开发的原始的扩展文件系统(ext 或 extfs)的第四版。 Linux kernel 自 2.6.28 开始正式支持新的文件系统 Ext4。 Ext4 ...

    Linux操作系统基础教程

    第三讲 Linux下的网络服务,配置问题和常用工具.................................................................24 一.Linux下的网络服务.....................................................................

    Linux命令笔记

    4:more 分页显示文件内容(只能往下翻页,不能往上反) 语法:more[文件名] 5:less 分页显示文件内容(上下翻页) 语法:less[文件名] 6:head 显示文件前面几行 语法:head[文件名] 7:tail 显示文件后面几行 语法:tail...

    基于Linux容器的交互式数据动态迁移方法研究

    针对传统的数据迁移方法中存在的耗时长问题,提出基于Linux容器的交互式数据动态迁移方法。首先搭建规则数据库作为数据动态迁移的应用准则,在源主机上准备需要进行迁移的数据,并利用Linux容器在服务器中生成镜像...

    PowerISO6.5破解版(映像文件制作工具).rar

    用于创建光盘映像文件,从映像文件中提取文件,添加文件/文件夹到映像文件,复制CD/DVD/BD光盘,记录指定文件到光盘,可设置刻录参数,如刻录速度及校验刻录数据。同时它还是一款虚拟光驱,最多可以创建23个虚拟光驱...

    Esext3,用于减少文件系统中包含错误的影响

    在这项研究中,我们将重点放在校验和不匹配上,因为它不仅发生在用户数据中,而且还发生在文件系统中。 我们提出的解决方案能够检查Linux文件系统中的此错误。 在我们提出的解决方案中,不需要调用或撤消检查器实用...

    windows与linux 路径正则写法

    您可能感兴趣的文章:Mysql5.7在windows7下my.ini文件加载路径及数据位置修改方法c语言获取当前工作路径的实现代码(windows/linux)Windows server 2008 iis7/iis7.5启用父路径的方法VBS 脚本不能运行 提示Windo

    qt-linux串口调试工具

    串口调试工具是一款基于qt开发的linux串口调试工具,友好的用户交互界面,它能用来修改串口波特率、校验位、数据位和串口停止位,还能设置接受区和发送区,接收发送字符及文件。用于调试硬件串口工作是否正常的一款...

    Linux可视化界面串口调试工具

    自己开发的一款Linux系统下面的串口调试工具,RS232/422/485模式都可用,可设置波特率、数据位、校验位、停止位、流控等,并可自动收发数据,可以设置发送周期,16进制发送等。目前已Ubuntu16.04 32/64bit系统下面...

    LoveString.zip(附加dll文件+保证能运行)

    64位系统下 字符串转16进制,转unicode,utf8等,实用。 工具可用于ACSII码转换,应用于单片机开发,或者linux开发数据转换校验有很大帮助。 数据恢复分析也常用。

    详解Linux文件系统:ext4及更高版本

    大多数现代Linux发行版默认为ext 4文件系统,就像以前的Linux发行版默认为ext3、ext2,以及-如果追溯到足够远的话-ext。 如果您是Linux新手或者是文件系统新手,您可能会想知道ext 4给表带来了什么,而ext3却没有。...

Global site tag (gtag.js) - Google Analytics