在Linux系统中,使用systemctl命令可以方便地进行系统服务的配置和管理。本文将介绍如何使用systemctl命令来重载配置、启动、停止、查看状态和重启服务,以及如何设置服务的自启和禁用。服务的配置文件通常位于/usr/lib/systemd/system目录下。以下是一个示例的服务配置文件:
[Unit]
Description=Redis
After=network.target
[Service]
ExecStart=/usr/local/bin/redis-server /usr/local/redis/redis.conf --daemonize no
ExecStop=/usr/local/bin/redis-cli -h 127.0.0.1 -p 6379 shutdown
StandardOutput=file:/var/1.log
StandardError=file:/var/2.log
Restart=always
[Install]
WantedBy=multi-user.target
在配置文件中,各个部分的含义如下:
[Unit]
:
表示这是基础信息,Description 是描述,After 是在那个服务后面启动,一般是网络服务启动后启动[Service]
:
服务信息部分,包括启动命令(ExecStart)、停止命令(ExecStop)、标准输出和错误输出的日志文件路径(StandardOutput、StandardError,其中file
重启后重置日志,append
保留所有日志)以及是否在意外中止时自动重启(Restart)。[Install]
:
表示这是是安装相关信息。WantedBy 是以哪种方式启动:multi-user.target表明当系统以多用户方式(默认的运行级别)启动时,这个服务需要被自动运行。
常用的systemctl命令
以下是一些常用的systemctl命令及其用途:
- 启动服务:
systemctl start servicename
- 停止服务:
systemctl stop servicename
- 查看服务状态:
systemctl status servicename
- 重启服务:
systemctl restart servicename
- 重载配置:
systemctl daemon-reload
设置服务的自启和禁用
使用以下命令可以设置服务的自启和禁用:
- 设置服务自启:
systemctl enable servicename
- 禁用服务自启:
systemctl disable servicename
请注意,每次更改为配置文件,需要重载配置systemctl daemon-reload
以生效。
Comments NOTHING