需要澄清 chkconfig 命令

需要澄清 chkconfig 命令

我安装了一个名为 nss-pam-ldapd.x86_64 的程序,它安装了一个名为 nslcd 的服务。重启后“nslcd”将无法启动。

当我执行 chkconfig --list nslcd 时,我得到:

nslcd           0:off   1:off   2:on    3:off   4:off   5:off   6:off

如你所见,它被设置为从运行级别 2 启动。我转到

/etc/rc.d/rc2.d

我看到了一个脚本:

S12nslcd -> ../init.d/nslcd

从文档中,我知道 S 文件用于启动,而 k 文件用于终止。

我对这个文件做了如下处理:

!/bin/sh
#
# chkconfig: - 12 88 
# description: Provides naming services using a directory server.
# processname: /usr/sbin/nslcd
# config: /etc/nslcd.conf
# pidfile: /var/run/nslcd/nslcd.pid


### BEGIN INIT INFO
# Provides: nslcd
# Required-Start: $network
# Required-Stop:
# Default-Start:
# Default-Stop:
# Short-Description: naming services LDAP client daemon
# Description: Provides naming services using a directory server.
### END INIT INFO

在 rc3.d 目录中我看到:

K88nslcd -> ../init.d/nslcd

好的,就像我说的,“k”文件是为了终止程序。

我打开了文件:

#!/bin/sh
#
# chkconfig: - 12 88 
# description: Provides naming services using a directory server.
# processname: /usr/sbin/nslcd
# config: /etc/nslcd.conf
# pidfile: /var/run/nslcd/nslcd.pid
#

### BEGIN INIT INFO
# Provides: nslcd
# Required-Start: $network
# Required-Stop:
# Default-Start:
# Default-Stop:
# Short-Description: naming services LDAP client daemon
# Description: Provides naming services using a directory server.
### END INIT INFO

为什么我的 nslcd 服务无法启动?

答案1

因为您正在启动到运行级别 3,而不是运行级别 2。

如果您想在启动时启动该服务,请启用它:

chkconfig nslcd on

相关内容