linux中通过systemctl建立服务并实现开机启动

centos7下,systemctl可以理解为systemd的一个工具

建立Unit file配置文件

systemctl是通过Unit管理单元的形式来添加service的,建立Unit file配置文件即可
在/usr/lib/systemd/system 目录下建立xxx.service这种后缀的服务文件

[Unit]
Description=xxx.server
After=network.target

[Service]
ExecStart=/usr/bin/python -u /mnt/e/test.py
#WorkingDirectory=/mnt/e
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root

[Install]
WantedBy=multi-user.target

加载配置

添加完unit file文件后重新加载配置文件,获取更改的配置并重新生成依赖树。

systemctl daemon-reload

启动服务

systemctl start xxx.service

停止服务

systemctl stop xxx.service

设置服务开机启动

systemctl enable xxx.service

关闭服务开机启动

systemctl disable xxx.service

更多命令

systemctl list-units --type=service  #查看当前的服务列表状态
systemctl list-unit-files --type=service  #查看当前可用的服务单元
systemctl list-unit-files --type=service | grep xxx.service  #查看具体的某个服务单元
systemctl start xxx.service #启动一个服务
systemctl stop xxx.service #关闭一个服务
systemctl restart xxx.service #重启一个服务
systemctl status xxx.service  #显示一个服务的状态
systemctl enable xxx.service #在开机时启用一个服务
systemctl disable xxx.service #在开机时禁用一个服务
systemctl is-enabled xxx.service #查看服务是否开机启动
systemctl show xxx.service #查看服务的所有信息
systemctl mask|unmask firewalld: #注销,取消注销服务 服务被注销后该服务就无法通过systemctl进行启停管理

查看服务产生的日志

journalctl -xe -u xxx.service
# 查看日志已占用的空间
journalctl --disk-usage
# –vacuum-size=1G #设置日志最大占用空间
# –vacuum-time=1years #设置日志最大保存时间
posted @ 2024-04-11 17:08  小泥巴2008  阅读(53)  评论(0编辑  收藏  举报