加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

unix中利用Find命令备份根文件系统

发布时间:2013-05-23 23:41:35 所属栏目:Unix 来源:站长网
导读:在Unix操作系统中有很多命令可以用来备份文件。但是Unix操作系统中根文件系统是一种比较特殊 的文件。通常情况下对这类文件进行备份的话,必须要卸载其他文件系
在Unix操作系统中有很多命令可以用来备份文件。但是Unix操作系统中根文件系统是一种比较特殊 的文件。通常情况下对这类文件进行备份的话,必须要卸载其他文件系统。因为根文件系统是其他文件 系统的祖宗,如果不卸载的话,会同时备份其他文件系统中的文件。但是如果先卸载其他文件系统再进 行备份的话,那么就会很麻烦。为此在find命令中提供了一个很有用的参数,可以帮助我们实现这个功 能。

一、根文件系统备份的重要性及备份的难点。

当系统发生崩溃时,虽然可以通过重新安装操作系统来恢复。但是这个工作量很大,因为需要重新 安装每个外部设备。在Unix操作系统中,安装并配置每个外部设备的驱动程序是一件很麻烦的事情。如 果系统工程师能够在平时的工作中备份好根文件系统中的文件,那么在遇到系统故障时,即使需要重新 安装操作系统,那么也只需要安装Unix操作系统的最小集合。然后把这些根文件系统中的配置文件恢复 过去,那么就省去了配置外部设备的麻烦。

但是在备份根文件系统的时候,由于其地位的特殊性会遇到不少的麻烦。如无论在什么时候把外部 设备添加到Unix操作系统中,或者无论什么时候将外部设备从系统中卸载掉,根文件系统中的配置文件 都要发生变化。也就是说,根文件系统中的配置文件在不断变化的。为此操作系统要能够鉴别那些变化 了的配置文件,然后有选择的进行复制。否则的话,就会增加备份的工作量。其次由于根文件系统是其 他文件系统的祖宗,为此对根文件系统进行备份的话,系统会同时对其他文件系统中的内容进行备份。 这无疑不是我们所希望达到的目的。

二、可选项mount的作用。

在find命令中有一个-mount可选项。如果采用find / -mount命令的话,操作系统不会在加载点查找 其他文件系统的文件。也就是说,利用这个可选项可以只对根文件系统进行备份,而不需要卸载其他文 件系统,而且也不会访问他们。即使用了这个可选项的find命令,其搜索的路径只在根文件系统下。

为此对根文件系统常用的备份策略是,当系统已经得到完整的、正确的配置之后,系统工程师立刻 使用-mount可选项对 根文件系统进行全面的备份。然后每当根文件系统下的配置文件发生变化后,再 对他们进行增量备份即可。可见通过-mount选项可以解决根文件系统备份过程中遇到的第一个问题。

三、辨别文件是否发生变化。

在根文件备份中要实现增量备份,操作系统就必须首先要判断那些文件在上次备份之后更新了。为 了达到这个目的,Find命令提供了两种处理机制,分别采用-newer参数与-mtime参数。

1、 利用newer可选项来实现。

利用newer可选项来实现这个需求的话,比较麻烦一点,但是相对来说却比较科学一点。要利用这个 可选项来实现这个命令的话,主要分为三个步骤。

第一步:建立一个零字节的对比文件。系统工程师首先要利用VI或者其他工具创建一个零字节的文 件。这个文件到底有什么用途,笔者下面马上会谈到。在使用newer可选项来判断哪些文件在上次备份 后进行了修改,这个零字节的文件在其中起动了关键的作用。其实我们用到的并不是这个文件内容的本 身,而是用到了这个文件中的时间属性。

第二步:利用touch命令来修改时间属性。众所周知,在Unix操作系统中的文件有很多属性,如创建 时间、修改时间等等。在很多脚本程序中,需要用到这些文件属性。而此时我们就需要用到这些文件属 性中的修改时间属性。利用touch命令可以修改文件的事件属性。如我们利用touch 文件名字,可以把 系统的当前时间赋值给文件的修改时间截。

第三步:利用-newer参数进行比较。我们利用newer 参数来寻找上次备份后所改变的文件主要思路 就是备份完成之后,把上面建立的这个零字节文件的修改时间截改为备份完之后的时间。然后在下次备 份的时候,再利用-newer可选项,把查找到的文件的修改时间与这个零字节文件的修改时间(上次备份 后的事件)属性来进行比较。此时find命令只会把那些比这个时间更新的文件查找出来并进行备份。为 此find命令加上touch命令,然后再结合-newer可选项就可以把上次备份后更新了的文件找出来。所以 在书写脚本程序的时候,需要把find命令写在前面。备份完成所需要的文件之后才能够利用touch命令 来修改零字节文件的时间属性。

(编辑:佛山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读