Linux命令之管理系统服务systemctl

Posted 二木成林

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令之管理系统服务systemctl相关的知识,希望对你有一定的参考价值。

概述

systemctl 命令也是用来管理系统服务和控制 systemd 系统的。

注:该命令属于 CentOS 7 及以上版本采用的。

语法

该命令的语法如下:

systemctl start|stop|restart|status 服务名

该命令支持的选项有:

选项说明
-h显示帮助信息
–version显示版本信息
-a显示所有的服务

使用

注:ls /usr/lib/systemd/system 命令可以查看服务。

查看指定服务状态

如果要查看指定服务的状态,命令格式如下:

# 语法
systemctl status 服务名
# 示例,查看防火墙的状态
systemctl status firewalld

关闭指定服务

如果要关闭指定服务,命令格式如下:

# 语法
systemctl stop 服务名
# 示例,关闭防火墙服务
systemctl stop firewalld

启动指定服务

如果要启动指定服务,命令格式如下:

# 语法
systemctl start 服务名
# 示例,启动防火墙服务
systemctl start firewalld

重启指定服务

如果要重启指定服务,命令格式如下:

# 语法
systemctl restart 服务名
# 示例,重启防火墙服务
systemctl restart firewalld

查看服务开机启动状态

如果要查看所有服务的开机启动状态,命令格式如下:

# 语法,查看所有服务的开机启动状态
systemctl list-unit-files
# 语法,查看指定服务的开机启动状态
systemctl list-unit-files | grep 指定服务名

关闭指定服务的自启动

如果想要关闭指定服务的自动启动,命令格式如下:

# 语法
systemctl disable 服务名
# 示例,关闭防火墙服务的自启动
systemctl disable firewalld.service

开启指定服务的自启动

如果要开启指定服务的自启动,命令格式如下:

# 语法
systemctl enable 服务名
# 示例
systemctl enable firewalld.service

查看系统的运行级别

如果要查看系统的运行级别,在 CentOS 6 系统中可以通过 runlevel 命令;在 CentOS 7 系统中可以通过如下命令查看:

# 查看当前系统的运行级别
systemctl get-default
# 修改当前系统的运行级别(其中 TARGET 可以是 multi-user 或 graphical)
systemctl set-default TARGET.target

在 CentOS 6 系统中运行级别分为 7 级(常用的级别是 3 和 5):

  • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
  • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
  • 运行级别2:多用户状态(没有NFS),不支持网络
  • 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
  • 运行级别4:系统未使用,保留
  • 运行级别5:X11控制台,登陆后进入图形GUI模式
  • 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动

在 CentOS 7 中将运行级别简化为:

  • multi-user.target:等价于原运行级别 3(多用户有网,无图形界面)
  • graphical.target:等价于原运行级别 5(多用户有网,有图形界面)

以上是关于Linux命令之管理系统服务systemctl的主要内容,如果未能解决你的问题,请参考以下文章

RHEL7/CentOS7服务控制之systemctl命令

RHEL7/CentOS7服务控制之systemctl命令 򌔛

RHEL7/CentOS7服务控制之systemctl命令 񸪚

RHEL7/CentOS7服务控制之systemctl命令 񬬻

linux之systemctl命令

linux命令之systemctl 详解