Ubuntu 12.04 VPS不能在nsswitch.conf中使用mysql进行引导

1和1 VPS(“dynamic云服务器”)在nsswitch.conf中启用mysql查找后不会再启动 – 任何build议都可以使用。

最小的设置重现问题:

  • 安装Ubuntu 12.04 / LTS最servlets器映像
  • 安装mysql-server,libnss-mysql-bg,nscd
  • configuration/etc/libnss-mysql.cfg和/etc/libnss-mysql-root.cfg
  • 设置适当的数据库表
  • 在nsswitch.conf中通过mysqlconfigurationnss查找

    passwd: compat mysql group: compat mysql shadow: compat mysql 

现在,当我尝试重新启动服务器时,它只是挂起。 没有日志(可能由于/ var尚未安装),我看不到控制台输出(因为这是一个VPS)。 启动到恢复映像并从/etc/nsswitch.conf中删除“mysql”会使系统再次启动,所以这肯定与nsswitch / libnss-mysql-bg有关。

gentoo-users上有一个线程似乎描述了一个类似的问题,不幸的是没有描述真正的解决scheme,线程也比较老(从2006年开始),所以我不确定这是否适用于我。

虽然我不能完全解释为什么,把/usr移到同一个分区就可以解决这个问题。 对我来说,看起来好像在启动过程中,一些守护进程或进程试图查找某个用户或组,并且因为MySQL客户端或/usr下的libs不在(那里)而失败。

从理论上讲,这不应该造成麻烦,因为所有的系统用户/组可以通过/etc/passwd/etc/group来解决,但实际上这些查找似乎破坏了启动过程。