这些包提供了一些基本的工具来启动无线网络并运行 Linux。从现在开始,要使这些工具一直顺利运行可能是一件头疼的事情;也可能非常简单,但需要使用一些工具来帮您实现以下功能:
● 管理服务器 ● 管理客户机 ● 管理带宽
为了满足这些需求,我编写了很多脚本;所有这些脚本都可以从一个命令行中直接使用。Linux 具有一个很好的安全 shell(SSH)服务器的实现,因此我可以从任何具有 Internet 连接的地方来对服务器进行管理。
管理服务器
Linux 发行版本通常包括一些简单的管理工具,不过这些工具的功能却很强大。没有以下这些工具,我几乎无法生活:
● df 给出关于每个文件系统的空间利用率的信息。当您的文件系统中只有有限的空闲空间时,该信息尤其有用。 ● top 给出服务器某个瞬间的快照,其中包含了有关启动时间、CPU 使用情况、内存使用情况和进程的信息。 ● pstree 提供了服务器进程的快照。这些信息很容易理解,因为进程都是以分层形式显示的。
我的 WAP 在内存中有一个只读的文件系统,用于为文件和日志提供服务。这样就可以将一个Compact Flash Card 的文件系统一直作为只读模式使用。我编写了一些脚本来管理这些有限的空间。
bigfiles:bigfiles 脚本会判断应该删除哪些文件来防止出现空间用尽的情况。它对三种级别的空间利用情况进行了总结:
1、文件系统: 文件系统一共有多大?还有多少剩余空间? 2、目录: 文件系统中每个目录使用了多少的空间? 3、文件: 文件系统中哪些文件的大小超过了 90 KB?
输出结果如下:
Filesystem Size Used Avail Use% Mounted on tmpfs 10M 952k 9.0M 10% /rw Finding big files in /rw filesystem... 916k ./var 4.0k ./usr 0 ./tmp 8.0k ./root 24k ./etc 0 ./dev 952k . 952k total ./var/log/router ./var/log/messages
清单 1. bigfiles 脚本的输出结果
checkspace
checkspace 脚本每小时运行一次,负责在这个读写的文件系统上维护最少的可用空间。如果文件系统的利用率达到 80%,那么 checkspace 就会运行 logrotate,后者会根据需要压缩和删除日志文件。
aptgetupgrade:aptgetupgrade 脚本检查包的新版本,并进行必要的更新。这个脚本对 Debian apt-get 命令进行了简单的封装,可以通过 /etc/cron.daily 运行该命令,从而帮助您更新各种补丁。
管理客户机
无线客户机可能会出现一些问题,这一节中讨论的基于 Linux 的管理工具可以帮助您解决这些问题。下面是几个如何解决典型的用户问题的例子:
● 问题: "Internet 今天是否出过问题?为什么我的浏览器无法找到 www.flakyhost.com 呢?" ● 解决方案: 首先,使用 scanap 脚本检查无线网络的客户机;这可以告诉您有关所有已连接客户机的无线信号的质量,包括出问题的那些客户机。然后使用 pingall 脚本检查这个 IP 是否有问题;这将告诉您有关到达 ISP 网关、DNS 和所有客户机的延时时间,其中包括那些有问题的客户机。如果这两个脚本都说您的网络没问题,那么不妨试一下 www.flakyhost.com 是否有问题。 ● 问题: "昨天我从 www.flakyhost.com 下载东西时的速度是 X。为什么现在我的速度只有 Y 呢?" ● 解决方案:要判断您的网络是否被其他人利用了,请运行 countlog 脚本。该脚本可以按照客户机和时间列出今天的传输历史记录。
|