如果你曾经使用过 Linux 一阵子了, 那么你大概会发现到 Linux 会主动的帮我们进行一些工作呢! 比方说自动的进行线上更新 ( on-line update) 、 自动的进行 updatedb ( 第六章谈到的locate 指令) 更新文件名数据库、 自动的作登录文件分析 ( 所以 root 常常会收到标题为logwatch 的信件) 等等。 这是由于系统要正常运行的话, 某些在背景下面的工作必须要定时进行的缘故。 基本上 Linux 系统常见的例行性任务有:

    • 进行登录文件的轮替 ( log rotate):

    Linux 会主动的将系统所发生的各种信息都记录下来, 这就是登录文件 ( 第十八章) 。 由于系统会一直记录登录信息, 所以登录文件将会越来越大! 我们知道大型文件不但占容量还会造成读写性能的困扰, 因此适时的将登录文件数据挪一挪, 让旧的数据与新的数据分别存放, 则比较可以有效的记录登录信息。这就是 log rotate 的任务! 这也是系统必要的例行任务;

    • 登录文件分析 logwatch 的任务:

    如果系统发生了软件问题、 硬件错误、 资安问题等, 绝大部分的错误信息都会被记录到登录文件中, 因此系统管理员的重要任务之一就是分析登录文件。 但你不可能手动通过 vim 等软件去检视登录文件, 因为数据太复杂了! 我们的 CentOS 提供了一只程序“ logwatch ”来主动分析登录信息, 所以你会发现, 你的 root老是会收到标题为 logwatch 的信件, 那是正常的! 你最好也能够看看该信件的内容喔!

    • 创建 locate 的数据库:

    在第六章我们谈到的 locate 指令时, 我们知道该指令是通过已经存在的文件名数据库来进行系统上文件名的查询。 我们的文件名数据库是放置到/var/lib/mlocate/ 中。 问题是, 这个数据库怎么会自动更新啊? 嘿嘿! 这就是系统的例行性工作所产生的效果啦! 系统会主动的进行 updatedb 喔!

    • man page 查询数据库的创建:

    与 locate 数据库类似的, 可提供快速查询的 man pagedb 也是个数据库, 但如果要使用 man page 数据库时, 就得要执行 mandb 才能够创建好啊! 而这个 man page 数据库也是通过系统的例行性工作调度来自动执行的哩!

    • RPM 软件登录文件的创建:

    RPM ( 第二十二章) 是一种软件管理的机制。 由于系统可能会常常变更软件, 包括软件的新安装、 非经常性更新等, 都会造成软件文件名的差异。 为了方便未来追踪, 系统也帮我们将文件名作个排序的记录呢! 有时候系统也会通过调度来帮忙 RPM 数据库的重新创建喔!

    • 移除暂存盘:

    某些软件在运行中会产生一些暂存盘, 但是当这个软件关闭时, 这些暂存盘可能并不会主动的被移除。 有些暂存盘则有时间性, 如果超过一段时间后, 这个暂存盘就没有效用了, 此时移除这些暂存盘就是一件重要的工作! 否则磁盘容量会被耗光。系统通过例行性工作调度执行名为 tmpwatch 的指令来删除这些暂存盘呢!

    • 与网络服务有关的分析行为:

    如果你有安装类似 WWW 服务器软件 ( 一个名为 apache的软件) , 那么你的 Linux 系统通常就会主动的分析该软件的登录文件。 同时某些凭证与认证的网络信息是否过期的问题, 我们的 Linux 系统也会很友好的帮你进行自动检查!
    其实你的系统会进行的例行性工作与你安装的软件多寡有关, 如果你安装过多的软件, 某些服务功能的软件都会附上分析工具, 那么你的系统就会多出一些例行性工作啰! 像鸟哥的主机还多加了很多自己撰写的分析工具, 以及其他第三方协力软件的分析软件, 嘿嘿! 俺的Linux 工作量可是非常大的哩! 因为有这么多的工作需要进行, 所以我们当然得要了解例行性工作的处理方式啰!