UNIX系统备份关键的信息( 五 )


使用单独的 Perl 脚本来确定可以对备份准备目录中哪些文件进行删除 。稍后将研究这个脚本 。在这个脚本中,您可以指定需要保留最近 5 天的文件,换句话说,该脚本将根据备份文件的文件名中的日期说明,选择那些不是最近 5 天内创建的文件 。
实际的备份过程是一个简单的 tar 命令,同时还使用了 bzip2 对文件进行压缩 。因为生成的文件可能很大,所以您可能需要对这个方法进行改进,以便仅选择那些可能在某个时间段内进行过更改的文件 。通过使用 find 命令选择所需的文件(请参见清单 2),您可以达到这个目的 。
清单 2. 使用 bzip2 对文件进行压缩的 tar 命令
tar cf - `find . -type f -mtime -1` | bzip2 -9 - >$TEMP/$HOST-webconfig.$DATE.tar.bz2
;;您可以在 find 语句中仅指定需要选择的文件,这样可以防止对目录的更改导致将那些没有更改的文件包含到 tar 文件中 。这将包含当前目录中的文件,如清单 3 所示 。
清单 3. 引用当前目录
$ cd /etc$ tar cf etc.tar ./*
;这样做可以避免显式地指定目录,如清单 4 所示 。
清单 4. 避免显式地指定目录
$ tar cf etc.tar /etc
这样可以确保将恢复的文件放到备用的目录,而不是运行中的某个位置 。
这个用于删除旧文件的脚本将使用文件名,提取其中嵌入的日期和时间,并确定该文件是否属于指定的界限,例如,在不在特定的天数之内(请参见清单 5) 。

推荐阅读