Linfo:实时显示你的Linux服务器运行状况
Linfo 是一个自由开源的跨平台的服务器统计 UI 或库,它可以显示大量的系统信息。Linfo 是可扩展的,通过 composer,很容易使用 PHP5 库以程序化方式获取来自 PHP 应用的丰富的系统统计数据。它有 Web UI 及其Ncurses CLI 视图,在 Linux、Windows、BSD、Darwin/Mac OSX、Solaris 和 Minix 系统上均可用。
Linfo 显示的系统信息包括 CPU 类型/速度、服务器的体系结构、挂载点用量、硬盘/光纤/Flash 驱动器、硬件设备、网络设备和统计信息、运行时间/启动日期、主机名、内存使用量(RAM 和 swap)、温度/电压/风扇速度和 RAID 阵列等。
环境要求:
- PHP 5.3
- pcre 扩展
- Linux – /proc 和 /sys 已挂载且可对 PHP 可读,已经在 2.6.x/3.x 内核中测试过
如何在 Linux 中安装 Linfo 服务器统计 UI及库
首先,在 Apache 或 Nginx 的 Web 根目录下创建 Linfo 的目录,然后,使用下面展示的 rsync 命令 克隆仓库文件并将其移动到目录 /var/www/html/linfo 下:
$ sudo mkdir -p /var/www/html/linfo $ git clone git://github.com/jrgp/linfo.git $ sudo rsync -av linfo/ /var/www/html/linfo/
接下来,将 sample.config.inc.php 重命名为 config.inc.php。这是 Linfo 的配置文件,你可以在里面定义你想要的值:
$ sudo mv sample.config.inc.php config.inc.php
现在,在 Web 浏览器中打开链接 http://SERVER_IP/linfo 来查看这个 Web UI,正如下面的截图所展示的。
从截图中可以看到, Linfo 显示了系统内核信息、硬件组成、RAM 统计、网络设备、驱动器以及文件系统挂载点。
Linux 服务器运行信息
你可以将下面一行内容加入配置文件 config.inc.php 中,以便进行故障排查时看到错误信息。
$settings['show_errors'] = true;
以 Ncurses 模式运行 Linfo
Linfo 有一个基于 ncurses 的简单界面,它依赖于 php 的 ncurses 扩展。
# yum install php-pecl-ncurses [在 CentOS/RHEL 上] # dnf install php-pecl-ncurses [在 Fedora 上] $ sudo apt-get install php5-dev libncurses5-dev [在 Debian/Ubuntu 上]
现在,像下面这样编译这个 php 扩展:
$ wget http://pecl.php.net/get/ncurses-1.0.2.tgz $ tar xzvf ncurses-1.0.2.tgz $ cd ncurses-1.0.2 $ phpize # generate configure script $ ./configure $ make $ sudo make install
接下来,如果编译成功并安装好了该 php 扩展,运行下面的命令:
$ sudo echo extension=ncurses.so > /etc/php5/cli/conf.d/ncurses.ini
验证 ncurse:
$ php -m | grep ncurses
现在,运行 Info:
$ cd /var/www/html/linfo/ $ ./linfo-curses
Linux 服务器信息
Info 中尚欠缺下面这些功能:
- 支持更多 Unix 操作系统(比如 Hurd、IRIX、AIX 和 HP UX 等)
- 支持不太出名的操作系统 Haiku/BeOS
- 额外功能/扩展
- 在 ncurses 模式中支持 htop 类 特性