在 Xen VPS 上安装 Kloxo 可能遇到的问题

昨天有位客户在 VPS 上安装 Kloxo 后重启导致错误而不能登录,VPSee 用控制台登录后发现客户的 VPS 启动后就 kernel panic 了,这是由客户安装 Kloxo 后错误设置 selinux 造成的,这个问题好办,关闭 selinux 就可以了。然后紧接着第二个问题来了,系统启动到快结束的时候报错:

init: no more processes left in this runlevel

Google 了一下发现其他人在 VPS 上安装 Kloxo 时也遇到同样的问题,Getting: init: no more processes left in this runlevel after installing Kloxo,但是没人给出解决方案。VPSee 不懂 Kloxo,不知道在安装 Kloxo 时,Kloxo 的安装脚本修改了哪些配置,不过看了错误提示后第一反应就是检查 /etc/inittab 文件,打开 /etc/inittab 后发现缺少一行,Xen domU 的默认控制台设备是 xvc0,如果缺少这一行在服务器终端输入 xm console 输入后就会报以上错误,因为没有指定 xvc0 的话 xm console 将无法 attache 到 domU 的控制台。知道了原因,解决办法就容易了,直接在 /etc/inittab 文件末尾加上下面这行就可以了:

# vi /etc/inittab
...
xvc0:2345:respawn:/sbin/mingetty xvc0

我们不推荐 VPS 用户安装 cPanel/DirectAdmin/ISPConfig/Webmin/Kloxo 这类控制面板,原因是:

  • 玩 VPS 的目的就是能自己控制和管理服务器、自由定制、压榨 VPS 以取得最大性能,如果在自己 VPS 上安装了各种笨重的控制面板,就和 shared hosing(共享主机)没有区别了,那就没有必要花更多的钱购买 VPS 了;
  • 对于 256MB VPS 来说,最小系统启动后就占据了 80MB 左右的内存,通常安装控制面板都会附带安装一堆没用的东西或者自己不需要的东西,比如有的甚至还带上 Clam AntiVirus 杀毒软件,这样安装完控制面板和启动 mysql/apache/php 后又消耗了120 MB 左右的内存,剩下几十 MB 怎么用呢?花钱买了 256MB,到最后自己只用了 40MB,不划算啊;
  • 控制面板的安装脚本通常会修改一些系统配置文件以便达到 “一键安装” 的目的,但是事实上不是那么简单,使用控制面板安装 mysql 安装到哪里了呢?配置文件在哪里呢?更糟糕的是不同的控制面板配置文件也都是不同的。安装控制面板很容易,安装完后想删除就不容易了,因为不知道控制面板在安装过程中到底装了哪些软件、增加和修改了哪些配置;
  • 安装控制面板会引入新的 bug 和安全隐患,控制面板是软件,其开发人员也是普通人,做软件开发就一定会有 bug,所以引入控制面板就实际上给自己的系统引入 bug 和麻烦,这样其实是增加了复杂度,而不是变得容易了;
  • 过度依赖控制面板不利于 Linux 的学习和使用,如果自己维护的 VPS 出现问题不利于排错,因为控制面板装了一堆东西把事情搞复杂了,出错机会也增大了,排错更困难了。