chkconfig可以管理系统服务的runlevel信息,十分方便,那么对于一个自己添加的脚本,如何用chkconfig管理起来呢?
将脚本注册为系统服务很简单,只要符合script
star|stop就可以,当然也可以添加status之类的,这样我们就可以把脚本放在/etc/rc.d/init.d/目录,使用service进
行start|stop等,但是这个时候还不能使用chkconfig,会提示service XXX does not support
chkconfig,那么chkconfig是如何识别系统服务的呢,原来很简单:
Each service which should be manageable by
chkconfig needs two or more commented lines added to its init.d
script. The
first line tells chkconfig what runlevels the
service should be started in by default, as well as the start and stop
prior-
ity levels. If the service should not, by default,
be started in any runlevels, a - should be used in place of the run-
levels list. The second line contains a
description for the service, and may be extended across multiple lines
with back-
slash continuation.
For example, random.init has these three lines:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.
This says that the random script should be started
in levels 2, 3, 4, and 5, that its start priority should be 20, and that
its stop priority should be 80. You should be
able to figure out what the description says; the \ causes the line to
be
continued. The extra space in front of the line is ignored. |
也就是说,只要在脚本里面添加两个注释就可以了,十分简单,大家不妨尝试一下
Linux 的服务都是以脚本的方式运行的,这些服务的脚本都放在 /etc/rc.d/init.d
目录下。我们可以通过修改此处的各项服务脚本控制其运行细节。
使用chkconfig 工具,可以更加简单地控制服务的运行。
用法:
chkconfig --list [name]
chkconfig --add
chkconfig --del
chkconfig --override
chkconfig [--level ]
例如,要查看所有服务的列表:
# chkconfig --list
只查看一个服务(smb)的运行级别:
# chkconfig --list smb
smb 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
上面的这条可以清晰的显示出在所有运行级别中,smb服务器是关闭的。我们可以用 下面的命令来打开。比如:让smb在
3(字符)和5(图形)模式下都开机自动运行:
# chkconfig --level 35 smb on
# chkconfig --list smb
smb 0:关闭 1:关闭 2:关闭 3:启用 4:关闭 5:启用 6:关闭
在配置服务访问控制之前,需要先对 Linux 的运行级别 (runlevels)
有所了解。在不同的运行级别下,系统所启用的服务也不相同,每个运行级别对应的 /etc/rc.d/rc[x].d
目录下包含了此运行级别下的服务。
运行级别
runlevel 0:关机,不要设置为默认运行级
runlevel 1:单用户模式
runlevel 2:多用户模式,不带NFS
runlevel 3:完全的多用户模式,如果没有网络连接的话与2相同
runlevel 4: 未用
runlevel 5:图形用户模式(runlevel 3 + X 窗口系统“图形用户界面”)。
runlevel 6: 重启,不要设成默认运行级
如果使用命令行界面的登录框,说明系统的运行级别为 3,如果使用图形界面的登录窗口,则说明系统的运行级别为 5。
通过编辑 /etc/inittab 文档,可以更改系统的默认运行级别 ,只需要将指定的运行级别替换下面这一 行中的数字 5
(运行级别 5) 即可:
id:5:initdefault:
通过编辑 /etc/inittab 完成对默认运行级别的更改之后,新配置会在重新启动系统 时后生效。
查看当前运行级别
/sbin/runlevel
通过下面的命令来切换运行级别 (用数字如 3,5 等来替换 RUNLEVEL):
# /sbin/init RUNLEVEL
分享到:
相关推荐
在使用chkconfig时,需要注意的是,不同的Linux发行版可能有不同的服务管理系统。比如,Red Hat系的系统(如CentOS)广泛使用chkconfig,而Ubuntu等基于Debian的系统则倾向于使用systemd。因此,对于使用systemd的...
可以通过`chkconfig --level [runlevel] [service_name] on/off`来设置特定运行级别(如3)的服务启动状态。例如,仅在运行级别3启动nfs服务: ``` [root@db ~]# chkconfig --level 3 nfs on ``` `ntsysv`是Red...
1. System V init:传统的服务管理系统,通过运行级别(runlevel)来启动、停止或重启服务。服务脚本通常位于`/etc/init.d/`目录下,可以通过`/etc/rc.d/rcN.d/`中的链接控制(N代表运行级别)。 2. Upstart:基于...
例如,使用`chkconfig --list`列出所有服务,`chkconfig service_name on/off`来开启或关闭服务在特定运行级别的启动。`chkconfig`也可以帮助在系统启动时优化服务,确保只有必要的服务启动,提高系统性能。 `...
System V init是最传统的服务管理系统,通过运行级别(Runlevel)来控制服务的启动、停止。每个运行级别对应一组默认启动的服务。例如,运行级别3为多用户模式,不带图形界面;运行级别5为多用户模式,带图形界面。 ...
对于较新的Linux发行版,如Ubuntu、CentOS 7及以上版本,服务管理通常使用systemd。查看服务状态使用`systemctl status service_name`,启动服务用`systemctl start service_name`,停止服务用`systemctl stop ...
在命令行界面中,我们可以使用`chkconfig --list`命令来列举出所有可用的服务及其在各个运行级别(runlevel)下的启动状态。这个命令会显示服务名称、服务是否在启动时自动启动以及在哪些运行级别启动。运行级别通常...
`chkconfig` 是 Linux 系统中用于管理和服务配置的关键工具,主要用于设置系统服务在不同的运行级别(runlevel)中的启动和关闭状态。它的工作原理是通过修改 `/etc/rc[0-6].d` 目录下的服务脚本链接,这些链接决定...
使用`chkconfig --list`命令可以列出系统中存在的所有服务及其运行级别(runlevel)的状态。运行级别通常包括0(关机)、1(单用户模式)、2(多用户,无网络)、3(多用户,有网络)、4(未定义)、5(图形界面)...
要查看哪些服务会在特定级别启动,我们可以使用`chkconfig --list`命令。此命令将列出所有服务及其在各个启动级别上的状态。例如,输入`chkconfig --list sshd`会显示sshd服务在各个级别的开关状态。 如果需要修改...
**Linux服务管理** 在Linux操作系统中,服务管理是系统管理员的核心任务之一,它涉及对系统启动、运行过程中所需的各种后台进程和服务的控制。本讲座主要关注Linux服务管理和运行级别,这是理解系统如何运行和响应...
- **chkconfig方式**:chkconfig命令提供了更为灵活的服务管理功能,它可以显示系统服务列表,并指出服务在不同运行级别下的启动状态。使用`chkconfig --list`查看服务状态,而`chkconfig --level <runlevel> ...
然后,使用 `chkconfig --add` 命令将这些脚本添加到系统服务列表中,这样它们就能在指定的运行级别(runlevel)下自动启动,如 `2345`。 总结一下,Linux下开机启动DB2、WAS和TDS服务的关键步骤是: 1. 创建启动...
同时,Red Hat提供了图形界面`redhat-config-services`,而SUSE使用YaST2进行服务管理。 2. 关闭GUI:在服务器环境中,通常不需要启动图形用户界面(GUI),因为所有管理任务都可以通过命令行或远程管理工具完成。...
- 使用`chkconfig`或`systemctl`命令可以管理这些设置。 10. **启动完成与用户登录** - 当所有必要的服务启动并运行后,系统会显示登录界面,等待用户输入凭证进行交互。 总结起来,“Linux启动流程3-3”主要...
7. 系统启动和管理:理解系统启动过程中的管理知识,如更改默认的runlevel、系统服务管理(服务禁用、登录标题更改),以及添加系统消息。 8. 系统修复和排故:了解如何在系统出现问题时进行修复,包括在rescue模式...
2. Linux 服务管理: 服务可以通过`chkconfig`命令查看和设置在各个运行级别的启动状态。例如,`chkconfig --list`显示所有服务的状态,`chkconfig --level <level> <service> on|off`用于设置服务在特定级别启动或...
关闭不必要的服务:识别并禁用那些在日常使用中并不需要的服务,比如通过`chkconfig --list`查看服务状态,然后使用`chkconfig --level <runlevel> <service> off`关闭服务。\n2. 调整服务启动顺序:根据服务的依赖...
- **网络服务**:`network` 服务管理网络连接。 ```bash service network status ``` - **网络管理工具**:`NetworkManager` 服务用于管理网络设备。 ```bash chkconfig --list NetworkManager ``` - **...
查看系统启动的服务,可以使用chkconfig或ntsysv命令管理服务的启动配置。 7. RunLevel管理: - CentOS系统中的RunLevel决定了系统启动时的运行模式。通常,CentOS运行在RunLevel 3(文本模式)或RunLevel 5(图形...