Redhat Enterprise/CentOS Linux上的update-rc.d like命令

时间:2020-01-09 10:43:28  来源:igfitidea点击:

问题描述:
我无法在Redhat Enterprise Linux(RHEL 5)上找到类似Debian Linux update-rc.d的命令(安装和删除System-V样式的初始化脚本链接)。
您可以为同一任务指定等效命令吗?

答:
update-rc.d更新System V样式的初始化脚本链接/etc/rcrunlevel.d/NNname,其目标是脚本/etc/init.d/name。
这些链接由init更改运行级别时运行;它们通常用于启动和停止系统服务,例如守护程序。
运行级别是init支持的运行级别之一,即0123456789S,而NN是两位数字序列号,用于确定序列init将在何处运行脚本。
请注意,该程序是为在软件包维护程序脚本中使用而设计的,因此,仅具有此类脚本所需的功能非常有限。
不鼓励系统管理员使用update-rc.d来管理运行级别。
他们应该直接编辑链接,或者改用运行级别编辑器,例如sysv-rc-conf和bum。

在RHEL/CentOS下,您使用称为ntsysv或者chkconfig的命令。

Redhat ntsysv工具

ntsysv是用于配置运行级别服务的简单界面,这些服务也可以通过chkconfig进行配置。
默认情况下,它配置当前运行级别。
只需执行ntsysv并选择要运行的服务即可:

# ntsysv

Redhat chkconfig工具

chkconfig提供了一个简单的命令行工具,用于使系统管理员免于直接操纵那些目录中大量符号链接的任务,从而维护/etc/rc[0-6].d目录层次结构。

chkconfig具有五个不同的功能:添加新的管理服务,从管理中删除服务,列出服务的当前启动信息,更改服务的启动信息以及检查特定服务的启动状态。

添加名为foo的服务

此选项为chkconfig添加了新的管理服务:

# chkconfig --add foo

删除名为foo的服务

该服务已从chkconfig管理中删除,并且/etc/rc[0-6].d中与其相关的所有符号链接也已删除:

# chkconfig --del foo

列出foo服务的状态

此选项列出chkconfig知道的所有服务,以及它们在每个运行级别中是停止还是启动。

# chkconfig --list foo

打开或者关闭服务:

# chkconfig foo on

# chkconfig foo off

# chkconfig --level 2 foo on

请注意,级别35指定了运行级别3和5,因此下面将仅打开3和5的httpd服务:

# chkconfig --level 35 httpd on