linux备份:Linux下备份恢复技术的应用

  本文讲述Linux环境下如何使用备份脚本和命令以及商业化软件Software来合理高效地保护磁盘数据安全   

  备份和恢复系统承担着事前备份和事后恢复职能在当前高速发展网络环境下任何个网络上信息 系统都不可能保证绝对安全只要有网络存在就会有来自网络形形色色威胁为了抵御网络攻击和入侵虽然我们引入了日趋成熟入侵检测系统、防火墙系统等黑客们入侵手段也日益高明他们总能找到这些系统安全漏洞及不足进行入侵因而网络入侵所引起安全事件呈逐年增加的势   

  在这种情况下我们难以保证网络中关键系统绝对安全因而就需要采用备份及恢复技术备份及恢复技术就是使用存储介质和策略定期将系统业务数据备份下来以保证数据意外丢失时能尽快恢复将用户损失降到最低点它是信息安全学科中种非常重要核心技术   

  Linux下备份技术   

  对于备份和恢复来说Linux提供了诸如tar、cpio、 dump等工具来实现这样用户无需花钱购买便可根据系统实际情况结合使用相应备份恢复工具实现备份和恢复基本功能   

  tar工具介绍   

  tar是个已移植到 Linux 中经典 Unix 命令 tar 是 tape archive(磁带归档)缩写最初设计用于将文件打包到磁带上现在我们大都使用它来实现备份某个分区或者某些重要文件目录我们使用 tar 可以打包整个目录树这使得它特别适合用于备份归档文件可以全部还原或从中展开单独文件和目录备份可以保存到基于文件设备或磁带设备上文件可以在还原时重定向以便将它们重新放到个和最初保存它们目录(或系统)区别目录(或系统)tar是和文件系统无关因而它适用范围很广它可以使用在ext2、ext3、jfs、Reiser和其他文件系统上   

  使用tar非常类似于使用诸如Windows环境下Winzip、WinRAR这样文件实用工具只需将它指向个目(可以是文件或设备)然后指定想要打包文件就可以通过标准压缩类型来动态压缩归档文件或指定个自己选择外部压缩要通过bzip2压缩或解压缩文件可使用tar -z命令

  下面是个简单使用该工具进行数据备份例子:   

  tar czvf - /root/code > /tmp/code_bak.tgz (将/root/code目录下所有文件打包备份到/tmp/code_bak.tgz)   

  tar xzvf /tmp/code_bak.tgz /root/code (将备份目录文件恢复到指定目录)   

  cpio工具介绍   

  cpio命令可以从tar或者cpio档案文件中拷入或者拷出文件cpio命令和tar命令兼容但是这个命令具备些tar命令没有功能如下所示:   

  ● 支持cpio和tar两种档案文件格式;   

  ● 支持许多老式磁带数据格式;   

  ● 能够通过个管道(pipe-line)读取文件文件名   

  目前看来只有很少Linux软件Software包是以cpio格式发行用户如果对cpio命令详细情况感兴趣可以通过“man cpio ”命令阅读它使用手册  

  dump 和 restore介绍   

  dump可以执行类似tar功能然而dump倾向于考虑文件系统而不是个别文件dump检查ext2文件系统上文件并确定哪些文件需要备份这些文件将出于安全保护而被复制到给定磁盘、磁带或其他存储媒体上在大多数媒体上容量是通过直写入直至返回个end-of-media标记来确定   

  配合dump是restore它用于从转储映像还原文件restore命令执行转储逆向功能可以首先还原文件系统完全备份而后续增量备份可以在已还原完全备份的上覆盖可以从完全或部分备份中还原单独文件或者目录树   

  dump和restore都能在网络上运行因此用户可以通过远程设备进行备份或还原dump和restore使用磁带驱动器和提供广泛选项文件设备然而两者都仅限用于ext2和ext3文件系统如果使用是JFS、Reiser或者其他文件系统将需要其他实用工具比如 tar 举个例子:   

  dump 0f /dev/nst0 /(将ext2文件系统备份到第个SCSI设备)   

  restore -xf /dev/nst0 /home/code(将备份SCSI设备中/home/code目录下所有数据还原到磁盘)   

  另外现在市场上还存在着诸如Tivoli Storage Manager的类商业化存储备份工具这些都是可视化工具用户可以方便地通过用户界面来实现备份和恢复值得注意这是款商业软件Software因而并不是免费对于很多用户来说它所提供功能和我们上述Linux自带备份和恢复工具比较相似只是更加人性化和友好使用户从枯燥命令行方式下摆脱出来从而方便用户使用  


 

  Linux中备份策略   

  备份需要花费定量物力和财力如何在备份所取得收益和备份消耗资源上做个权衡是网络安全工作者需要考虑个大问题支出大于产出也就意味着低效甚至失败所以在Linux环境中进行数据备份需要根据实际情况进行区分对待以取得比较好效果特别是需要对些关键目录进行区分从而做到有针对性备份减少不必要浪费   

  般情况下以下所列目录是需要备份它们在系统中具有举足轻重地位:/etc包含所有核心配置文件这其中包括密码文件、网络配置文件、系统名称、防火墙规则、NFS文件系统配置文件以及其他全局系统项;/var包含系统守护进程(服务)所使用信息包括 DNS 配置、DHCP 租期、邮件缓冲文件、HTTP 服务器文件等;/home包含所有用户默认用户主目录这包括他们个人设置、已下载文件和用户存放在系统中重要信息;/root是根(root)用户主目录;/bin是存放许多系统中常用诸如ls、ps等命令重要场所这些命令在磁盘上均有影响极容易遭受黑客破坏   

  相反地在Linux系统中如下目录是不应该备份:/proc永远不需要备份它不是个真实文件系统而是运行内核和环境虚拟化视图它包括诸如 /proc/cpuinfo、/proc/meminfo 这样文件这个文件是整个运行内存虚拟视图旦系统关机或者重新启动该目录下信息便不复存在;/dev包含硬件设备文件表示如果计划还原到个空白系统那就可以备份 /dev如果计划还原到个已安装Linux系统那么备份/dev 是没有必要;另外些软链接(也就是指向另外些磁盘文件文件)是不需要备份这些文件当中存储只是被指向文件地址这些软链接文件用户可以通过使用“ls -l”命令来判定如下所示其中linux-2.4即为个软链接文件它指向是linux-2.4.7-10这个目录   

  lrwxrwxrwx 1 root root 14 6月 19 2004 linux-2.4 -> linux-2.4.7-10   

  链 接   

  备份技术及基本分类   

  般说来建立套完备网络数据备份系统必须具备如下几个必要条件:   

  ● 数据备份容量都是比较大所以针对关键业务系统数据备份需要实现自动化以减少系统管理员工作量 ;   

  ● 以备份服务器形成备份中心对各种平台应用系统及其他信息数据进行集中备份系统管理员可以在任意台工作站上管理、监控、配置备份系统实现分布处理集中管理特点;   

  ● 用户可以比较方便和快捷地恢复损坏整个文件系统和各类数据;  

  ● 备份系统还应考虑网络带宽对备份性能影响备份服务器平台选择及安全性备份系统容量适度冗余备份系统良好扩展性等原因   

  进行备份工作需要确定数据备份策略备份策略指确定需备份内容、备份时间及备份方式用户要根据自己实际情况来制定区别备份策略目前被采用最多备份策略主要有以下 3种:   

  1.完全备份   

  就是每天对系统进行完全备份这种备份策略好处是:当发生数据丢失灾难时就可以恢复丢失数据然而它亦有不足的处首先由于每天都对整个系统进行完全备份造成备份数据大量重复这些重复数据占用了大量空间这对用户来说就意味着增加成本其次由于需要备份数据量较大因此备份所需时间也就较长对于那些业务繁忙、备份时间有限用户和单位来说选择这种备份策略是不明智并且由于备份时间间隔太小而造成完全备份数目过多造成硬件资源大量浪费也是很不必要  

  2.增量备份   

  就是每天只对当天新或被修改过数据进行备份这种备份策略优点是节省了存储介质空间缩短了备份时间但它缺点在于当灾难发生时数据恢复比较麻烦另外这种备份可靠性也很差备份间隔中数据是无法恢复这就需要用户在指定备份间隔时做适当权衡才能取得比较好效果   

  3.差分备份   

  管理员先在最初(例如星期天)进行次系统完全备份然后在接下来几天里管理员再将当天所有和星期天区别数据(新或修改过)备份到磁介质上差分备份策略在避免了以上两种策略缺陷同时又具有了它们所有优点首先它无需每天都对系统做完全备份因此备份所需时间短并节省了空间;其次灾难恢复也很方便

Tags:  linux恢复删除文件 linuxrm恢复 linux系统备份 linux备份

延伸阅读

最新评论

发表评论