linux的服务管理

systemd

systemd 是一个系统和服务管理器,用于Linux操作系统中,旨在替代传统的Unix系统V初始化系统(SysV init)。

不一定所有使用 yum 安装的软件都可以通过 systemctl start 来管理。能否通过 systemctl start 管理取决于软件包是否提供了相应的 systemd 单元文件。

如果软件没有提供 systemd 单元文件

如果软件包没有提供 systemd 单元文件,但你希望通过 systemctl 来管理它,可以手动创建一个 systemd 单元文件。以下是创建自定义服务单元文件的步骤:

csharp 复制代码
创建服务单元文件:
在 /etc/systemd/system/ 目录中创建一个新的服务单元文件。
例如,为了管理一个名为 myapp 的软件,可以创建 /etc/systemd/system/myapp.service 文件。
sudo nano /etc/systemd/system/myapp.service
编辑服务单元文件:
在文件中添加以下内容,根据具体的软件路径和启动命令进行修改。


[Unit]
Description=My Application Service
After=network.target

[Service]
ExecStart=/usr/bin/myapp
Restart=on-failure
User=myuser
Group=mygroup

[Install]
WantedBy=multi-user.target



Description:服务的描述。
After:指定服务的启动顺序。
ExecStart:启动服务的命令。
Restart:指定服务失败时的重启策略。
User 和 Group:运行服务的用户和组(可选)。
WantedBy:指定服务的目标运行级别。
加载新服务单元文件:
sudo systemctl daemon-reload
启动和启用服务:
sudo systemctl start myapp
sudo systemctl enable myapp

systemctl

systemctl 是管理和控制 systemd 的主要命令行工具。它提供了启动、停止、重启服务,查看服务状态,启用和禁用服务开机自启动等功能。

查看服务状态:

systemctl status <service_name>

启动服务:

sudo systemctl start <service_name>

停止服务:

sudo systemctl stop <service_name>

重启服务:

sudo systemctl restart <service_name>

相关推荐
杨云龙UP2 小时前
MySQL 数据库常用备份工具对比:mysqldump、mydumper 与 XtraBackup
linux·运维·服务器·数据库·mysql·dba·备份恢复
PC2005-cloud2 小时前
从零上手 openGauss:Docker 部署 + 全场景连接教程
运维·docker·容器
独隅2 小时前
Cursor+GitOps 自动化运维实战:智能编写 Ansible 与 Terraform
运维·自动化·ansible
happymagic3 小时前
java spring boot做的jar包程序,如何实现自动运行启动
java·运维·服务器·spring boot·jar
星空你好3 小时前
AI辅助运维:开源一个内网日志监控工具
运维
风曦Kisaki3 小时前
Kubernetes(K8s)笔记Day06: 持久化存储(emptyDir,hostPath,NFS),PV 和 PVC,StorageClass存储类
linux·运维·笔记·云原生·容器·kubernetes
Dr.kangder3 小时前
嵌入式处理器仿真技术——Hypervisor 原理与实践
服务器·嵌入式硬件·架构·嵌入式
_艾伦 耶格尔.4 小时前
基础I/O
linux
星蓝_starblue5 小时前
零服务器、零数据库!开源growth-board,利用GitHub自动管理刷题/学习/求职全流程
服务器·数据库·程序人生·系统架构·node.js·github·改行学it
fb_123457 小时前
Linux磁盘分区从入门到实操:MBR_GPT全解析+分区工具实战指南
java·linux·gpt