第10章 系统日志与日志文件.pdf
文本预览下载声明
少是删除策略)是在法律诉讼之前就已经有了。遗憾的是,目前断
[1]
10 章 系统日志与日志文件 定法庭将最终如何回应这些诉讼还为时过早 。在美国,
Sarbanes-Oxley 法案最近规定了保留记录的新要求,参考30.12.8 节。
10.1.2 轮换日志文件
把每周或者每 的日志信息保存在一个单独的文件里,这是一种通
常 (但不是通行)的做法。这些周期性的文件都会保留特定一段时
间,然后被删除。我们专门在一台中央日志主机上划了一个硬盘分
区(/var/log )给日志文件。
在每个轮换周期结束的时候,有一个脚本或者工具程序更改每个文
件的名字,然后把较早的数据向文件链的结尾推。例如,假 某个
日志文件的名字叫做 logfile ,则它的备份文件可能叫做 logfile.1 、
logfile.2,依此类推。如果每周轮换一次,并且保存8 周的数据,那
系统守护进程、内核和各种工具都会产生一些数据,这些数据被记 么就会有一个logfile.8 文件但没有logfile.9 文件。每周随着logfile.7
录下来,最终保存在容量有限的硬盘上。其中大部分数据有用的寿 文件覆盖logfile.8 文件,logfile.8 中 来的数据就没了。
命都是有限的,因此需要对它们进行汇总、压缩、存档并且最终扔
掉。 稍微麻烦一点,压缩一下数据就能延长保存的时间。您可以运行
zgrep ,不必解压压缩文件,就能搜索压缩文件。
下面的脚本就可以实现一个适当的轮换策略:
10.1 日志记录的策略
日志记录的策略随站点不同而不同。常见的方案包括以下几种:
立刻扔掉所有数据;
定期重新设置日志文件; 呃
轮换日志文件,把数据保留一定的时间;
将日志压缩并保存到磁带或其他永久性介质上。 对于某些日志文件来说,权属信息很重要。您可能需要以日志文件
对于您的站点来说,正确的选择取决于磁盘空间有多大,您的安全 属主的身份,而不是以root 的身份从cron 运行自己的轮换脚本,或
意识有多强。即使具有充足的磁盘空间,还是不要让日志文件过快 者要在这些命令中加上chown 命令。
增长。
无论选择何种方案,都必须用cron 自动维护日志文件。有关该守护 大多数 Linux 发行版本(包括我们全部的示例版本)都支持一种叫
进程的详细内容,请参考第8 章。 做logrotate 的很不错的日志轮换工具,我们将从10.3 节开始介绍它。
比起编写您自己的脚本来说,它要容易得多 (也可靠得多),如果您
10.1.1 扔掉日志文件
的发行版本没有包含它,那么还是值得找到并安装它的。
我们并不建议扔掉所有的日志信息。遭受到安全问题的站点常常会
发现,日志
显示全部