如何查看Linux下 自动启动的服务(service)

907人浏览   2024-04-27 12:58:43

我们安装、调试Linux服务器最终的目的还是使用Linux服务器提供的各种应用服务。这些应用服务有的是通过运行程序命令启动的,有的是采用Linux服务(service)的方式启动的。从管理和运维的角度看,使用Linux服务(service)的方式启动应用服务无疑更方便、更“高级”一些,我们不仅可以使用相同格式的命令启动、停止、重启各种应用服务,查看应用状态,还可以将业务服务设置为(开机)自启动,或者是设置应用服务在意外“中止”后自动“拉起”。这些特性无疑对提升应用服务的健壮性十分有益。

Linux的命令行界面

以前的Linux服务(service)是通过init进程调用、加载的,这种模式存在诸多弊端,目前已经被systemd管理体系所取代。systemd体系相比init模式,支持服务间的依赖关系,支持按需启动,支持统一的日志管理模式等特性,因而得以取代init并普及使用。

以前使用init进程管理系统服务时,可以通过chkconfig命令方便地设置和查看服务自启的配置,比如执行:chkconfig --list,可以方便的查询现有系统服务和各服务在不同的运行级别(RUNLEVEL)的自启动配置情况。执行:chkconfig --list | grep '服务名',可以查询指定服务名在不同的运行级别(RUNLEVEL)的自启动配置情况。

在systemd体系下并没有这样直观地查看服务启动配置的命令,虽然我们可以执行:systemctl enable '服务名',将指定的服务设置为自启动。也可以执行:systemctl list-units查看操作系统当前已经配置好的所有服务。不过如果想了解哪些服务是自启动的,我们该如何操作?

方法有2种:

1、执行systemctl list-unit-files | grep enable,查看设置为自启动的服务

2、执行ll
/etc/systemd/system/multi-user.target.wants/,查看在multi-user运行级别(RUNLEVEL)下已经设置为自启动的服务

相关推荐