Linux备份策略研究

2008-04-09 04:09:35来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  每个人都告诉你备份是如何的重要,但是目前却缺乏如何进行备份的详细的教程来讨论需要备份哪些文件,备份间隔应该是多少?这篇文章将为你回答这些问题,通过该文章你可以定义适合自己的备份策略。

  总的来说,可以将备份分为两类:系统备份,其实现对操作系统和应用程序的备份(只要系统管理员的才能进行这项工作);用户备份,其实现对用户文件的备份(我不知道是否别人也使用这些术语,但是本文中都这样使用)。我们会看到,系统备份和用户备份应该区别对待。

  系统备份

  进行系统备份的原因是尽量在系统崩溃以后能快速简单完全地恢复系统的运行。然而当然你不会希望花费几个月来备份你的系统。进行有效备份的最有效的方法是仅仅备份那些对于系统崩溃恢复所必需的数据。

  想想下面这种情况,你的系统大部分都非常稳定-/usr/bin的内容并不是那么经常变动,为了使事情简化,你也许已经有了系统的粗糙拷贝。大多数人都是使用某种发布安装Linux系统,然后对系统进行自己的定制。原始的发布就是我们进行系统恢复的出发点。

  Linux区别于其他大多数操作系统的一个方面是操作系统和大多数应用程序一次被安装,而Windows或者其他Unix系统则是应用程序与操作系统是分开来安装的,首先是安装操作系统,然后才逐渐安装各个应用程序,对于这些系统,备份整个系统才是必要的,这些操作系统在初次安装时需要花费大量的时间和精力。而对于Linux来说,初次或再次安装一个基本系统(包括绝大多数应用程序)是非常简单和快速的。

  上面说到系统的大部分都非常稳定,下面我们来考虑哪部分比较容易变动。定制自己的系统的一个方面是安装新的应用程序(没有随发布安装的应用程序)。当安装新的软件时,你应该严格要求自己,将新安装的软件和初始安装的内容分隔开来,最恰当的目录位置是/usr/local之下。/usr/local目录的目的就是包含那些相对系统来说"本地化"的内容。这样做的一个优点就是你可以容易的察看哪些程序可以从发布光盘中恢复,哪些程序需要从备份中恢复。

  另外一个你会需要修改的地方是标准程序使用的配置文件。大多数Linux应用程序的的配置文件都是纯文本格式,你可以根据需要编辑配置文件来定制软件的运行。有时候发布将自动基于你回答的问题答案来编辑某些配置文件,但是大多数情况下你需要自己编辑它们。

  很多重要的文件位于/etc目录之下,如:

  /etc/printcap---配置如何与打印机通信
  /etc/fstab---配置系统有哪些文件系统
  /etc/passwd---包含所有的用户信息,如密码,登录shell等
  /etc/inittab---配置init在不同运行级别下分别如何启动系统
  /etc/XF86Config---包含XFree86的初始配置

  不同的系统可能有很多其他的的重要配置文件,可以看到/etc目录非常重要,包含在该目录下的文件可能是数小时的工作成果。我就曾经花费了好长时间才正确的配置了XF86Config文件。想到如果重新再做一遍,我就害怕。当然,某些程序使用了其他目录下的一些文件,但是Linux的基本配置文件绝大多数都位于/etc目录下。

  当你修改了某个程序所使用的配置文件,你不能将其搬移到其他地方,因为程序通常在固定的地方寻找配置文件。因此记录对系统所做的修改就非常重要,无论所做的修改如何的微小,这样当系统崩溃时才能轻松的恢复系统。

  记录对系统的修改的最好的工具是一杆笔和一张纸。记录下对系统进行了哪些修改的详细描述及为什么要进行修改是非常必要的。不要自以为是的认为经过六个月你仍然能记得你如何编译安装了某个应用,或你为什么你要修改某个配置,而实际情况是你往往会忘记。即使你在一个单独的目录下安装了一个新的软件(比较容易查找修改),也应详细的记录如何安装的程序,什么时候安装的及是否有任何事情还不是非常清楚。

  现在我们已经讨论了哪些系统文件需要进行备份,下面我们考虑多长时间应该备份一次。每次你对系统进行了修改可能是进行备份的时刻,但是不要忘记在修改系统以前对要修改的部分备份,以防止在出现问题时可以恢复。关键点是系统只有在你修改了它以后才会变动,而修改往往不是经常的事情,因此对系统的备份应该对应于这个情况。


  用户备份

  用户备份不同于系统备份,因为用户的数据变动更加频繁一些,因此几乎不可能建立某个用户的精确到每分钟的备份。当备份用户数据,你只是为用户提供一个虚拟的安全网络-合理的最近它数据文件的备份,当出现任何问题如误删除某些文件或者硬盘发生故障时,使用户可以恢复自己的数据。

  用户备份应该比系统备份更加频繁,也许是每天都进行备份(cron程序提供了自动定期运行某个程序的方法)。而几乎所有的备份程序(包括tar)都提供了一个有用的特性:仅仅备份特定时间(如上次备份)以后被修改的文件。这可以显著的减少进行用户备份所需要花费的时间,因为一个用户在特定时间段内一般仅仅是修改了很少量的文件。你可以对用户数据进行完全备份和增量备份的手段结合起来使用。

  虽然可以是用软盘作为备份的存储介质,但是每张软盘只能存储少量的数据。很多备份程序允许一个备份跨越若干个磁盘,但是这也意味着在进行备份时必须自行更换软盘。若你仅仅是管理具有若干个用户的小型系统,这也许非常简单,但是情况往往不是这样。数字或磁记录带也许是一个更好的选择,因为它们具有更大的存储容量。Linux支持很多不同类型的磁带设备,或者通过ftape模块或者通过对SCSI的支持(数字记录带往往是SCSI设备)。而且从性价比来说磁带设备的成本现在非常低廉,因此它非常实用。可选的,你的Linux可能和其他带有磁带机的计算机在同一个局域网之中,Linux可以访问其他远程机器的磁带设备。

  无论选择什么介质进行备份,都需要管理这些介质设备。你的备份是在发生了问题时才会被使用的,这时你会依赖于备份,因此你必须经常验证你的备份。一个没有验证的备份甚至比没有备份更糟。

  你同样应该保持多个备份集合,一个流行的策略是基于"祖父-父亲-儿子"思想。这里你拥有三套备份,最新的一份(儿子),中间的一份(父亲),最老的一份(祖父)。当你进行下一次备份,你应该覆盖掉最老的那一份,使其变为最新的一份。这种策略的优点是即使其中的一份失效,你仍然可以根据其他的备份进行恢复,但是你不必每次进行两次备份。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:看磁带备份技术发展趋势

下一篇:Win2000注册表的备份与恢复