论文部分内容阅读
文件备份恢复技术能够提高数据安全性,所以在现代企业中的应用越来越广泛。当前linux下的备份软件都提供了文件的备份与恢复技术,但是也存在一些问题:首先,不能够实时监控文件系统来判断文件的更新变化,只是通过设定时间段的备份或者通过手动方式备份;其次,未能考虑到企业中的一些特殊需求,对特殊类型的文件备份没有实现,例如将一台主机的数据实时备份到服务器上;最后,无法细粒度的控制网络数据的传输,不能有效的利用带宽快速的完成文件的备份。针对以上情况,本文首先由企业对本系统提出功能需求。在分析企业需求以及现有备份软件的优缺点之后,将需要备份的文件分为两类:一类为变化频率低的文件,称为静态文件;另一类是实时更新变化的文件,文件变化频率高,称为实时文件。对于第一类静态文件,系统采取定时备份设计,采取传统的完全备份的方式进行备份;对于第二类实时文件则利用Linux下的Inotify API实时监控指定文件,一旦发生更新事件,则通过对事件的识别,系统主动完成对文件的处理,并且利用Rsync算法计算出差异数据,通过只传输这些差异数据达到减少网络带宽传输数据大小,减轻带宽压力的目的。在论文末尾对本系统与Linux下使用较多的Rsync备份系统做了对比,结果表明本系统在数据传输以及备份效率方面有很大的优势。论文中对系统的设计和实现采用了分层化设计方法,首先对本系统中用到的Inotify机制,Rsync算法以及多线程、I/O复用等技术做了详细的说明,在具体实现的基础上做出了对本系统的分析与测试,并且总结了研究的成果、系统可扩展性。在论文最后提出了对以后工作的期望。