Linux命令之systemctl

Linux systemctl 命令是 systemd 系统和服务管理器的主要命令之一,它可以启动、停止、重启、重新加载和查询系统服务状态等操作。

1.语法

systemctl [OPTIONS...] {COMMAND} ...

-----------------------------------------------------------------------------------------------

OPTIONS: 可选参数,用于指定 systemctl 的行为。
COMMAND: 必需参数,用于执行特定的 systemd 命令,例如启动、停止或重新启动服务。

-----------------------------------------------------------------------------------------------

常用OPTIONS:
-a, --all: 显示所有已加载的单位,而不仅仅是当前活动的单位。
-t, --type: 根据指定的单元类型筛选单元列表。支持的单元类型包括 service、socket、mount 等。

常用COMMAND:
status <service>:显示指定服务的运行状态、日志信息和依赖关系。
is-active <service>:检查指定服务是否处于激活状态(运行中)。
is-enabled <service>:检查指定服务是否已启用(将在系统开机时自动启动)。
is-failed <service>:检查指定服务是否处于失败状态。

start <service>:启动指定服务。
stop <service>:停止指定服务。
restart <service>:重新启动指定服务。
reload <service>:重新加载指定服务的配置文件。
enable <service>:启用指定服务,使其在系统开机时自动启动。
disable <service>:禁用指定服务,使其不会在系统开机时启动。

list-units:列出所有已加载单元并显示其当前状态。
list-unit-files:列出所有可用单元。
show <unit>:显示指定服务单元的详细信息。

命令示例请看这里:https://blog.csdn.net/carefree2005/article/details/125886811

2.Unit文件

Systemd是现代Linux系统中的一个系统和服务管理器,它使用Unit文件来定义和控制系统服务、设备和其他资源。其中Unit文件存放在 /etc/systemd/system/ 中。

Unit的文件示例如下,大家可以自行百度,制作自己想要的系统服务

[Unit]
Description=NTP client/server
Documentation=man:chronyd(8) man:chrony.conf(5)
After=ntpdate.service sntp.service ntpd.service
Conflicts=ntpd.service systemd-timesyncd.service
ConditionCapability=CAP_SYS_TIME

[Service]
Type=forking
PIDFile=/var/run/chronyd.pid
EnvironmentFile=-/etc/sysconfig/chronyd
ExecStart=/usr/sbin/chronyd $OPTIONS
ExecStartPost=/usr/libexec/chrony-helper update-daemon
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=full

[Install]
WantedBy=multi-user.target

你可能感兴趣的:(linux,运维,服务器)